A fix is available
APAR status
Closed as new function.
Error description
Provide function to allow DB2 JCC connection re-use for better performance in an IMS Persistent JVM MPP environment.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All IMS V12 users of Persistent JVM in * * MPP/BMP/IFP where the IMS MPP/BMP/IFP * * application invokes a Java application which * * makes DB2 calls through DB2 JCC * **************************************************************** * PROBLEM DESCRIPTION: Performance issue due to the DB2 JCC * * connection not being re-used if the * * security environment has not been * * changed (ie. transaction origin userid * * has not changed) * **************************************************************** * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF * **************************************************************** For an IMS MPP/BMP/IFP application executing in a Persistent JVM environment and calling a Java application which makes DB2 calls through DB2 JCC, there exists a potential negative performance impact due to the DB2 JCC connection not being re-used if it can be re-used. Basically, the DB2 JCC connection can be re-used if the transaction origin userid has not changed between transaction boundaries. IMS controls the DB2 JCC connection during IMS syncpoint processing by invoking the DB2 JCC method ExternalOps.reset() to tell DB2 JCC to reset the connection in preparation for the next transaction. To resolve this issue, IMS will leverage a DB2 JCC function which allows the DB2 JCC connection to be re-used if the transaction userid has not been changed between transactions. This service has the following software dependency: - If you specify DB2JCC_CONN_REUSE=Y (defined below), DB2 APAR PM77184 (JCC3.64) or DB2 APAR PM77185 (JCC4.14) is required.
Problem conclusion
Temporary fix
Comments
With this maintenance, IMS introduces user option DB2JCC_CONN_REUSE=Y|N which is specified in the ENVIRON= member of the dependent region (eg. member DFSJVMEV) PARMBLK: Added new field PCDB2JCR to contain DB2JCC_CONN_REUSE= value. DFSPCC20: Added logic to pass address of field PCDB2JCR to DFSJVM00 during JVM creation so DFSJVM00 can properly set field PCDB2JCR with the DB2JCC_CONN_REUSE= value. DFSJVM00: Added logic to recognize the new DB2JCC_CONN_REUSE option and set new field PCDB2JCR accordingly. DBFFPPR0: DFSTMPR0: Added supporting code for new DB2JCC_CONN_REUSE function which examines new field PCDB2JCR to determine whether or not to invoke DB2 JCC in a way that the DB2 JCC connection can be re-used for the subsequent transaction. DBFHGU10: DFSCPY00: Added supporting code for new DB2JCC_CONN_REUSE function. DFSPCJB0: DFSPCJM0: Recompiled due to JVMFSPLL length change and some field offset changes to JVMFSPL DSECT. ***************** PUBS CHANGES ******************************* Book: GC19302101 - System Definition In section "Parameter descriptions for IMS procedures", under the ENVIRON= parameter description, add the following description for the new DB2JCC_CONN_REUSE parameter that can be specified in the ENVIRON= member: DB2JCC_CONN_REUSE= Y | N Specifies whether (Y) or not (N) you want IMS to communicate to DB2 JCC that the DB2 JCC connection should be re-used if possible for the next transaction. The default is N. This option is recognized only for MPP, BMP, and IFP regions. Note: If DB2JCC_CONN_REUSE=Y is specified, the DB2 JCC connection will only be re-used if the transaction userid for the next transaction is the same as the userid for the previous transaction. Book: GC18971408 - Messages and Codes, Volume 3: IMS Abend Codes Under the U0101 description, under section "For DFSPCC20:", add the following for V12 and above only: "Reg7 and Reg8 together contain the value of field RCPGM (program name) at time of abend." Under the U0101 description, under section "For DFSPCC20:", add the following to the description of reason code 5 only (Reg15=X'5') and for V12 and above only: "If Reg3=X'0C', message DFS650E precedes this abend." Book: GC18971208 - Messages and Codes, Volume 1: DFS Messages DFS650E NON-LE COMPLIANT PROGRAM IN PERSISTENT JVM ENVIRONMENT, NAME=program name Explanation The user attempted to load and execute a non-Language Environment (LE) compliant/conforming program in a persistent JVM dependent region environment. Any program that executes in a persistent JVM dependent region environment must be LE compliant/conforming. System action ABENDU0101-05 (reason code 5) is issued to terminate the application. Programmer response Correct the program to make it LE compliant/conforming. The program did not contain a valid LE entry prolog. Make sure that the program was compiled with a current LE enabled compiler. See z/OS Language Environment Programming Guide (SA22-7561) for a description of LE compliant/conforming programs. Module DFSPCC20 Book: GC19301902 - Release Planning Guide In a mixed Java/COBOL environment, APAR PM80880 provides the ability to re-use DB2 JCC connections for MPP, BMP, and IFP region programs that invoke a Java application which accesses DB2 through DB2 JCC. The DB2JCC_CONN_REUSE=Y|N parameter is now supported in the PROCLIB member that is specified on the ENVIRON= parameter. The default is N. If DB2JCC_CONN_REUSE=Y is specified, the DB2 JCC connection will only be re-used if the transaction userid for the next transaction is the same as the userid for the previous transaction.
APAR Information
APAR number
PM80880
Reported component name
IMS V12
Reported component ID
5635A0300
Reported release
200
Status
CLOSED UR1
PE
NoPE
HIPER
NoHIPER
Special Attention
YesSpecatt / New Function / Xsystem
Submitted date
2013-01-17
Closed date
2013-02-21
Last modified date
2013-03-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PM81408 UK91884
Modules/Macros
DBFFPPR0 DBFHGU10 DFSCPY00 DFSJVM00 DFSPCC20 DFSPCJB0 DFSPCJM0 DFSTMPR0 PARMBLK
GC19302101 | GC18971408 | GC19301902 | GC18971208 |
Fix information
Fixed component name
IMS V12
Fixed component ID
5635A0300
Applicable component levels
R200 PSY UK91884
UP13/02/22 P F302
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Platform":[{"code":"PF054","label":"z Systems"}],"Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
14 December 2020