IBM Support

SI80087 - Enhance the lstobj cleanup with *SDD mode cold start

PTF Cover Letter


PTF ( Program Temporary Fixes ) Cover letter


Order this fix

Abstract

Enhance the lstobj cleanup with *SDD mode cold start


Pre/Co-Requisite PTF / Fix List

REQ  LICENSED           PTF/FIX  LEVEL

TYPE PROGRAM  RELEASE   NUMBER   MIN/MAX  OPTION
---- -------- --------- -------  -------  ------
PRE  5770SS1  V7R4M0    SI74290   00/00    0000



NOTICE:
-------
Application of this PTF may disable or render ineffective programs that
use system memory addresses not generated by the IBM translator,
including programs that circumvent control technology designed to limit
interactive capacity to purchased levels.  This PTF may be a prerequisite
for future PTFs.  By applying this PTF you authorize and agree to the
foregoing.

This PTF is subject to the terms of the license agreement which
accompanied, or was contained in, the Program for which you are obtaining
the PTF.  You are not authorized to install or use the PTF except as part
of a Program for which you have a valid Proof of Entitlement.

SUBJECT TO ANY WARRANTIES WHICH CAN NOT BE EXCLUDED OR EXCEPT AS EXPLICITLY
AGREED TO IN THE APPLICABLE LICENSE AGREEMENT OR AN APPLICABLE SUPPORT
AGREEMENT, IBM MAKES NO WARRANTIES OR CONDITIONS EITHER EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OR CONDITIONS OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON INFRINGEMENT,
REGARDING THE PTF.

The applicable license agreement may have been provided to you in printed
form and/or may be viewed using the Work with Software Agreements (WRKSFWAGR)
CL command.


APAR Error Description / Circumvention

-------------------------------------------------
Now SMTP supports two modes to clean legacy MCB during cold
start in *SDD mode. One is quick clean which is restricted by
16M and is the default behavior, the other is full clean which
is not restricted by 16M but need to be triggered by both
COLDSTART(*YES) and QIBM_SMTP_COLLECT_MCB_LSTOBJ environment
variable. The reason to introduce full clean is because SDD has
a bug before V7R1 that SDD mode never deletes MCB space after
mail has been delivered(the bug was fixed by other APAR).
Therefore, as time is going, the legacy MCB will be left on
system and grows constantly. So the legacy MCB may has already
exceeded 16M. In this case, the full clean is required though it
takes a longer time to complete depending on how many legacy MCB
are on the system as well as how the system performance is.
However, present full clean takes unnecessary longer time. So
this PTF is to do optimization on the full clean mode.

CORRECTION FOR APAR 'SE77994' :
-------------------------------
The PTF enhanced following items on full clean during cold
start:
1. Quick clean is the default behavior
2. Full clean mode works only with cold start and together with
QIBM_SMTP_COLLECT_MCB_LSTOBJ.
3. Remove any unnecessary MCB processing during full clean cold
start to save cleaning time.
4. Delete MCB directly from the LSTOBJ return instead of the old
manner that pushed MCB into a dequeue at first, did unnecessary
processing (Old manner doesn't separate cold start and warm
start on some processing) and finally deleted MCB. (Particularly
as dequeue operation will take a lot of memory and may make
system become slow if there are hundreds of millions of legacy
MCB on the system.)
5. Post cleaning progress messages to job log so that users can
know how much legacy MCB are left to clean.
6. Provide an additional program that can do more operations on
MCB objects.  CALL QTCP/QTMSWRKMCB '[CLEAN|LIST]' can help
clean, list current legacy MCB on system.

To summarize:
1. When QIBM_SMTP_COLLECT_MCB_LSTOBJ is not set, then both warm
start and cold start collect legacy MCB with MI API which was
restricted by 16M limitations. This is the default behavior
because a healthy system can hardly have 16M legacy MCB (should
be close to zero), unless the system is unhealthy and need to do
cold start to clean legacy MCBs to recover, in which case,
QIBM_SMTP_COLLECT_MCB_LSTOBJ is required.
2. When QIBM_SMTP_COLLECT_MCB_LSTOBJ is set with command
"QSYS/ADDENVVAR ENVVAR(QIBM_SMTP_COLLECT_MCB_LSTOBJ)
LEVEL(*SYS)", then:
. Warm start is not affected, it still collects legacy MCB
with MI API which was restricted by 16M limitations.
. Cold start adopts LSTOBJ macro to collect legacy MCBs. It's
not restricted by 16M limitation. The full clean will take a
longer time to complete depending on how many legacy MCB are on
the system as well as how the system performance is. This will
suspend SMTP job. SMTP service won't be available before
cleaning is done. However, the cleaning progress can be tracked
from QTSMTPSRVD job log by DSPJOBLOG JOB(######/QTCP/QTSMTPSRVD)
OUTPUT(*PRINT). Lab test data shows that deleting 17000000 MCB
needs around 19 hours to finish though the actual speed depends
on the real system performance.  So customer need to schedule a
specific time window to do the full clean.
3. However, if a job was submitted to CALL QTCP/QTMSWRKMCB
'CLEAN', SMTP service wont' be suspended in this case, however,
there's a risk that mails being sent or received may be
accidently retrieved by LSTOBJ and deleted by this submitted
job, causing unknown problem. This is the least-advised though
it provides an option for some customer who may want to switch
to *SMTP mode at first while doing full clean for *SDD.
4. It's noted that once you've done the full clean up at least
one time, in future the difference between fast clean and quick
clean won't matter, as there'll be no orphaned MCB left on
system any more.  Both modes clean equally fast.

CIRCUMVENTION FOR APAR 'SE77994' :
----------------------------------
None.


Activation Instructions

None.




Special Instructions


Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
ENDMSF
After applying/removing this PTF, please
sign off current session and log again
STRTCPSVR *SMTP
STRTCPSVR *POP
STRMSF

********************************************************************
THE FOLLOWING ARE SUPERSEDED SPECIAL INSTRUCTIONS. IF THE SUPERSEDED
PTF HAS ALREADY BEEN APPLIED AND ITS SPECIAL INSTRUCTION FOLLOWED,
IT IS NOT NECESSARY TO FOLLOW THAT SPECIAL INSTRUCTION AGAIN.
********************************************************************

Before applying/removing this PTF
Please stop all program that's calling SNDSMTPEMM CL command or
wait
until SNDSMTPEMM CL command has been run completed

After applying/removing this PTF
Please sign off current session and sign on again to make the PTF
effective.

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
After applying/removing this PTF, please
sign off current session and then sign on again
STRTCPSVR *SMTP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP

After applying/removing this PTF, please
sign off current session and log again
STRTCPSVR *SMTP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
ENDMSF
After applying/removing this PTF, please
sign off current session and sign on again
STRTCPSVR *SMTP
STRTCPSVR *POP
STRMSF

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
After applying/removing this PTF, please
sign off current session and sign on again
STRTCPSVR *SMTP
STRTCPSVR *POP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
After applying/removing this PTF, please
sign off current session and sign on again
STRTCPSVR *SMTP
STRTCPSVR *POP
to make the PTF to take effective.

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
After applying/removing this PTF, please
sign off current session and sign on again to make the PTF
effective
STRTCPSVR *SMTP
STRTCPSVR *POP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
ENDMSF
After applying/removing this PTF, please
sign off current session and sign on again
STRTCPSVR *SMTP
ENDTCPSVR *POP
STRMSF

Before applying/removing this PTF, please do follows:
1. ENDTCPSVR *SMTP
2. ENDTCPSVR *POP
3. Sign off current session
After applying/removing this PTF, please do follows:
1. Sign on a session
2. STRTCPSVR *SMTP
3. STRTCPSVR *POP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
ENDMSF
After applying/removing this PTF, please
sign off current session and sign on again to make the PTF take
effective
STRTCPSVR *SMTP
STRTCPSVR *POP
STRMSF

Before applying/removing the PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
After applying/removing the PTF, please
sign off current session and sign on again
STRTCPSVR *SMTP
STRTCPSVR *POP

Before apply/remove the PTF, please:
ENDMSF
ENDTCPSVR *SMTP
After apply/remove the PTF, please:
STRMSF
STRTCPSVR *SMTP
sign off current session and sign on again

Before applying/removing this PTF please:
ENDTCPSVR *SMTP
ENDTCPSVR *POP
ENDMSF
After applying/removing this PTF please:
sign off current session and sign on again
STRTCPSVR *SMTP
STRTCPSVR *POP
STRMSF

Before applying/removing this PTF, please:
ENDTCPSVR *SMTP
ENDTCPSVR *POP
After applying/removing this PTF, please:
STRCPSVR *SMTP
STRTCPSVR *POP

Before applying this PTF, please:
ENDTCPSVR *SMTP
After applying this PTF, please:
Assign appropriate value to QIBM_SMTP_RLY_TLS_FIRST environment
variable
STRTCPSVR *SMTP

Before applying/removing this PTF, please do as follows:
ENDMSF
ENDTCPSVR *SMTP
ENDTCPSVR *POP
After applying/Removing this PTF, please do as follows:
Sign off current session and sign on again
STRMSF
STRTCPSVR *SMTP
STRTCPSVR *POP

Before applying/removing this PTF, please exit WRKSMTPEMM CL command

Before applying/removing this PTF:
please sign off all the sessions that are using WRKSMTPEMM CL
commands;

After applying/removing this PTF:
please sign on a new session to make the PTF to take effect.

Before applying/removing this PTF, please
ENDMSF
After applying/removing this PTF, please
STRMSF
to make the PTF to take effective

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDMSF
ENDTCPSVR *POP
After applying/removing this PTF, please
STRTCPSVR *SMTP
STRMSF
STRTCPSVR *POP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP

After applying/removing this PTF, please
STRTCPSVR *SMTP

Before applying/removing this PTF, please
ENDTCPSVR *SMTP
ENDTCPSVR *POP
ENDMSF
After applying/removing this PTF, please
sign off current session and log again
CHGSMTPA COLDSTART(*YES)
STRTCPSVR *SMTP
STRTCPSVR *POP
STRMSF MSGOPT(*CLEAR)
It may take longer to start SMTP service if the legacy MCB to be
cleaned up is too many.


Default Instructions

THIS PTF CAN BE APPLIED IMMEDIATE OR DELAYED.



Supersedes

PTF/FIX NO(S).  APAR TITLE LINE
--------------  ------------------------------------------------------------
   SI79349      TCPIP-SMTP-INCORROUT EMAILS ADDRESSES ARE GETTING CORRUPTED
   SI78913      TCPIP-SMTP *SMTP WITH IMPLICIT SSL IS FAILING TO AUTHENTICAT
   SI78630      TCPIP-SMTP-INCORROUT NATIVE SMTP CLIENT USING *SMTP EMAIL DI
   SI78325      TCPIP-SMTP-INCORROUT *MCB OBJECT GROWTH OCCURS RELATED TO EM
   SI78433      TCPIP ADDUSRSMTP RESULTS WITH TCP96E0
   SI78374      TCPIP SMTP LOOPING CONDITION
   SI76106      OSP-MSGSCANVULNERABILITY*ANY *SDD MODE CODE TO AVOID *ANY EN
   SI72646      OSP-MSG*SDDHELPREMOVEOSTYPE OS TYPE NEEDS TO BE REMOVED FROM
   SI77926      TCPIP SMTP AUTHENTICATION WITH SPECIAL CHARACTERS
   SI77918      TCPIP-SMTP-MSGTCP5316 SNDSMTPEMM WITH S/MIME *SIGN PARM. REC
   SI77917      TCPIP-SMTP-RC7-MSGCPF0C1F SNDSMTPEMM COMMAND WITH OPTION S/M
   SI77562      TCPIP-POP-UNPRED UPDDTA QATOCSTART IS NOT WORKING FOR POP SE
   SI71734      TCPIP-SMTP-F/QTMSCHSMTP-T/QUIMNDRV-MSGTCP261D CHGSMTPA SBSD(
   SI77317      TCPIP-SMTP-INCORROUT SMTP JOBS NOT SHOWN IN NAVIGATOR FOR I
   SI76141      OSP-MSGMEMORYALLOCATION ALLOCATED MEMORY
   SI76009      TCPIP-SMTP-F/QTMSSTRC-T/QTMSSTRC-RCH_ERRNO6-MSGTCP206D INTER
   SI75054      TCPIP-SMTP-MSGMCH6902 5770 SP/QTMSAPIUTL MSGTCP530A IS RECEI
   SI74754      TCPIP SMTP SERVER RESPONDS WITH 501 SYNTAX ERROR. INVALID CH
   SI74726      TCPIP-SMTP-F/QTMSUTL72-T/QTMSUTL72-MSGMCH3601 MCH3601 F/QTMS
   SI74645      TCPIP-SMTP-F/QC2ALLOC-T/QTMSSMTPD-RCX'10000000'-MSGC2M1212 Q
   SI74328      TCPIP-SMTP-F
   SI73370      qtms_listSDDUser capture sysgrp error in STRIMPSMTP
   SI73266      TCPIP-SMTP-MSGMCH3601 STRIMPSMTP FAILS WITH MCH3601 UNMONITO
   SI71804      TCPIP-SMTP-INCORROUT MAIL HEADER FROM DELIVERED MAIL SHOWS V
   SI71566      TCPIP-SMTP-UNPRED 5770 SP/QTMSUTL72 MSGC3C5C5F0F1F9 ON PROGR
   SI70572      TCPIP-SMTP-UNPRED SNDSMTPEMM NOT WORKING WHEN DIFFERENT FILE
   SI70421      SMTP ALWRLY(*LIST) has a wrong calculation over the subnet m
   SI71395      TCPIP GEN_ENCODE_CRAM_MD5_BASE64 RETURN -1
   SI69943      TCPIP-SMTP-INCORROUT FWDHUBSVR SMTP ATTRIBUTE VALUE IS NOT R
   SI70319      TCPIP-OTHER-INCORROUT TRCTCPAPP *SMTP SPOOLFILE OMITS SINGLE
   SI73885      F/WRKSMTPEMM-FLDS/ADDRESS WRKSMTPEMM LISTBY *RCP FAILS WHEN
   SI70591      OSP-OTHER-F
   SI70552      TCPIP-SMTP SNDDST - ATTACHMENT NAME NOT SHOWING ACCENTED CHA
   SI74858      TCPIP-SMTP-INCORROUT 5770 F/QTMSCLCD MSGMCH3402
   SI74452      TCPIP 5770 F/QTMSBRSR MSGMCH3402
   SI73026      TCPIP CORRECT QIBM_SMTP_RLY_TLS_FIRST ENVIRONMENT VARIABLE
   SI72360      TCPIP SMTP CLIENT ATTEMPTING STARTTLS WHEN IT SHOULDN'T
   SI71274      TCPIP-SMTP *SDD DIRECTORY TYPE STARTTLS
   SI79978      TCPIP-SMTP
   SI79537      TCPIP-SMTP-INCORROUT 5770 F/QTMSSRCD MSGMCH3601 - SMTP NOT A
   SI79241      OSP-MSGLISTMAILCONTROLBLOCKS LISTMAILCONTROLBLOCKS SO SMTP C
   SI77056      TCPIP-SMTP-F/#SV14CKP-T/QZDGFSRD-MSGMCH3402 MCH3402 F/#SV14C

Summary Information

System..............................  i
Models..............................  
Release.............................  V7R4M0
Licensed Program....................  5770TC1
APAR Fixed..........................  View details for APAR SE77994
Superseded by:......................  View fix details for PTF SI80755
Recompile...........................  N
Library.............................  QTCP
MRI Feature ........................  NONE
Cum Level...........................  NONE


IBM i Support

IBM disclaims all warranties, whether express or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. By furnishing this document, IBM grants no licenses to any related patents or copyrights. Copyright © 1996,1997,1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 IBM Corporation. Any trademarks and product or brand names referenced in this document are the property of their respective owners. Consult the Terms of use link for trademark information.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"7.4.0","Product":{"code":"SWG60","label":"IBM i"},"Component":"5770TC1","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]

Document Information

Modified date:
17 August 2022