IBM Support

PM78756: OTMA MAXTP ENHANCEMENT

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as new function.

Error description

  • Enhance the OTMA MAXTP support.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: IMS V13 customers using OTMA MAXTP function  *
    ****************************************************************
    * PROBLEM DESCRIPTION: OTMA MAXTP enhancements for specifying  *
    *                      global tpipe limits and for shared      *
    *                      queues.                                 *
    ****************************************************************
    * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF      *
    ****************************************************************
    The /DISPLAY OTMA and /DISPLAY TMEMBER commands need to
    display the number of TPIPEs used and the MAXTP limit, if
    any.
    Customers using OTMA MAXTP function in shared queues
    environment experienced U0367 abends at the backend IMS, and
    the transaction at the backend is stopped.
    Also, the global tpipe warning threshold can be specified
    by customers.
    

Problem conclusion

Temporary fix

Comments

  • IMS OTMA was enhanced to provide the MAXTP enhancements.
    See the DOC HOLD CARD for the complete info.
    
    The IMS module/macro changes are:
    
    DFSAOSD  -
    defines field for OTMA BE id for DFS3323I message and
    a flag when BE MAXTP is reached
    
    DFSYPRE  - add a flag to indicate that FE has the MAXTP
               enhancement applied.
    DFSTSCD  -
    defines flag for MAXTPBE=NO and MAXTP for DFSOTMA and
    a field to contain the relief level of global MAXTP
    DFSYL40  - defines Chk33_Tscd_Gflood as FIXED(31)
    DFSYAWE  - defines a field to store FE IMS ID info for DFSYFD00
    DFSYDES  - defines flags to save MAXTPRL and MAXTPBE=NO info
               for regular member block processing
    DFSYDSTC - defines a field to save FE ID for DFSYFD00
    DFSYDST  - adds a new FEID parameter to the call
    DFSYMSG  - adds two warning flags for tpipe flood conditions
               one is global tpipe warning with force, the other
               one is 80% of global tpipe flood condition
    DFSYMTE  - extends the macro by 8 bytes, defines new field to
               save the 80% and relief level limit, adds flag to
               track MAXTPBE=NO setting.
    DFSYOTMA - adds a new parameter FEID for caller, DFSYFD00.
    DFSYTIB  - adds a flag to track CM1 DFS3323 message
    DISPLAY  - adds new fields to display MAXTP for OTMA in
               T38 DSECT and T96 DSECT
    DFSAOSW0 - builds the DFS3323 message for SQ CM1 for fE IMS
    
    DFSYFD00 -
    re-code the Check_tpipe_count routine for better performance,
    add new global MAXTP function to the routine, call
    DFSYOTMA with the frontend ID info to create a tpipe,
    and increment/decrement tpipe count without MAXTP specified.
    
    DFSYIDC0 - recognizes the DFSOTMA, MAXTPBE, and MAXTPRL.
               set descriptor block and DFSTSCD when needed.
    DFSYLUS0 -
    For the non-fastpath transaction, detect the MAXTP condition
    at the SQ backend IMS and issue DFS3323 message if MAXTP
    limit is reached at the backend IMS. Turn on flag so that
    the transaction will not be stopped. Internally we created
    a pseudo abend 243 without symptom dump and DFS554/DFS555
    message.
    
    DFSYMEM0 -
    reject input transaction with sense reason code when
    either member MAXTP or DFSOTMA MAXTP condition is reached.
    
    DFSYMOM0 -
    issue monitor message with "force" flag set when the
    DFSOTMA MAXTP condition is reached, and prepare MTE
    with MAXTPBE and MAXTPRL info.
    
    DFSYQAB0 -
    enhance Get_Storage subroutine to obtain the requested
    size of storage instead of TSCD_BUF_MAX_SIZE for every
    output message.
    
    DFSYSCP0 - set extended reason code for MAXTP condition
    DFSYSLM0 - build DFS3323E message to be sent to OTMA client
    DFSYTIB0 - when IMS is short of message space, do not send out
               DFS1289I message. The module set YTIB_DFS3323 when a
               DFS3323E is received from the backend IMS.
    DFSYDPD0 - display MAXTP and TPCNT correctly for tpipe.
    DFSYINI0 - store client MTE length into server MTE
    DFSAOAM1, DFSAOAM2, DFSAOA00, DFSYCKP0, DFSYRST0,and DFSYCLH0
    are recompiled to pick up the control blocks changes.
    +++++++++++++++++++++++++++++++++++++++
    DOC changes in RELEASE PLANNING GUIDE, IMS SYSTEM DEFINITION,
    IMS COMMANDS, IMS COMMUNICATIONS AND CONNECTIONS, and
    IMS MESSAGES are as follows:
    
    For the complete doc changes, including new and changed
    messages, see the doc hold card.
    
    +++++++++++++++++++++++++++++++++++++++
    
    UPDATES TO IMS RELEASE PLANNING GUIDE ARE:
    
    IMS OTMA TPIPE flood monitoring function has been enhanced
    to avoid
    getting the ABENDU0367 at the shared queues back-end IMS
    when the maximum TPIPE limit, specified
    via MAXTP parameter in the OTMA client descriptor,
    is reached for a front-end initiated OTMA
    transaction. Also, a new system client name, DFSOTMA,
    was introduced for OTMA client
    descriptor in order to specify a global TPIPE limit for all
    of the OTMA clients (MEMBERS) so that new
    TPIPE will not be created once this global limit is reached.
    
    UPDATES TO IMS SYSTEM DEFINITION ARE:
    
    OTMA client descriptor syntax and parameter:
    
    Use OTMA client descriptors to specify the use of
    a DRU exit, message flood protection, and CM1/CM0 ACK
    timeout value for individual OTMA member or client.
    It can also be used to set the global TPIPE limit for
    all of the OTMA members or clients.
    OTMA client descriptors are optional.
    
    For column 3-18, add the following:
    
    Cannot begin with "DFS" or "DBCDM" with the exception
    of the system client name DFSOTMA
    
    However, DFSOTMA can be specified to
    set the global parameter(s) for all the OTMA clients
    or members in the IMS. Currently only MAXTP= can
    be specified for DFSOTMA. The other parameters,
    such as DRU=, T/O=, and INPT=, if used for DFSOTMA
    member, will be ignored. If DFSOTMA is used, IMS
    will build a descriptor block to store the global
    information specified. It will be considered one entry
    toward the 255 max member entries. This means
    the total entries allowed for the OTMA clients or members
    become 254.
    
    Rewrite the MAXTP= definition with the following:
    
    MAXTP=
    
    A one- to five-digit decimal integer between 0 and 99999.
    It indicates the maximum number of TPIPEs for an OTMA
    member or for DFSOTMA in an IMS system. If a value of 0
    is specified, which is the default, OTMA stops the
    monitoring of the creation of the TPIPE. If the value
    is between 1 and 0200, it is treated as 0200.
    Any number over 99999 will be rejected.
    
    When this parameter is defined for an OTMA
    member, the request for the TPIPE creation for
    the OTMA member is monitored. IMS messages
    DFS4382W, DFS4383E, and DFS4384I are issued
    when particular percentages of the value for MAXTP
    are reached. Any input transactions requesting a
    new TPIPE are rejected with NACK code '29'X when
    the maximum TPIPE limit for the member is reached.
    The OTMA resource monitor function is also activated
    to send out the protocol message with command '3C'x
    to the OTMA members for the various TPIPE warning
    and relief status messages, so that the client applications
    can reroute the subsequent transactions to
    a different IMS, if needed.
    
    If there are one or more OTMA clients defining
    their maximum number of TPIPEs and there is no
    MAXTP defined for DFSOTMA, the highest number
    defined among the members is treated as the default
    global TPIPE warning threshold for the members.
    When this global TPIPE warning threshold is reached,
    an IMS warning message DFS4385W will be issued
    to the MTO and system console along with the protocol
    message reflecting a warning status to all the members.
    However, any subsequent input transaction requesting
    new TPIPE can still be accepted by the IMS system
    as long as the member TPIPE limit is not reached.
    Once the global TPIPE count is decreased down
    to 80% or below of the global TPIPE warning threshold,
    a relief message, DFS4386I, will be issued to the MTO
    and system console along with a protocol message
    to all the members.
    
    Once MAXTP is specified for DFSOTMA, IMS
    will use this value, instead of using any values defined
    among the members, to monitor the growth of
    the TPIPEs in the IMS system. The MAXTP value
    of DFSOTMA, which we also call the global TPIPE
    warning threshold, activates different action of
    monitoring the TPIPEs for all the members. When 80%
    of this global TPIPE warning threshold is reached,
    a DFS4515W message will be sent to the system
    console and MTO along with the OTMA protocol
    message reflecting a warning status to all the OTMA
    members. Once this global TPIPE warning threshold
    is reached, OTMA will reject all the new TPIPE creation
    requests for all the OTMA members in the IMS. For an
    OTMA input transaction requesting a new TPIPE,
    it will be rejected with a NAK with OTMA sense
    code X'29'. And a DFS4516E error message will be sent
    to the system console and MTO along with the OTMA
    protocol message reflecting a warning status
    to all the OTMA members. The /DISPLAY OTMA
    command of this degraded system will also
    show "MAX TPIPE" in the user status of the OTMA
    server member. When the number of TPIPEs for
    all the members has reduced to 50% or a user-specified
    level of the global TPIPE warning threshold, a relief
    message DFS4517I will be sent to IMS system
    console and MTO along with the OTMA protocol
    message reflecting a good status to all the OTMA members.
    
    The /DISPLAY OTMA and /DISPLAY TMEMBER
    commands result in displays of the current numbers
    of TPIPEs and MAXTP value for members
    and OTMA server using the function.
    
    ADD TWO NEW PARAMETERS AS FOLLOWS:
    
    MAXTPBE=
    Specifies whether (YES) or not (NO) the MAXTP
    needs to be monitored when this IMS is a shared
    queues back-end system processing a front-end
    initiated OTMA input transaction at the application
    GU time. This is designed for member when MAXTP is specified.
    It will be ignored if the member does not have MAXTP specified.
    When this parameter is specified for the DFSOTMA,
    it is used ONLY to set default for member without MAXTPBE.
    This is an optional parameter and defaults to YES.
    MAXTPRL=
    Specifies the relief level for the MAXTP threshold.
    The value can be between 50 and 70. For value specified
    below 50, it will be set to 50. For value over 70, it will be
    set to 70. The default relief level is 50, which mean 50%
    of the TPIPE MAXTP threshold. When this is specified for
    DFSOTMA, it sets the relief level for the global MAXTP and
    sets the default for member without MAXTPRL.
    
    ADD CHANGES TO IMS COMMANDS
    /DISPLAY OTMA AND /DISPLAY TMEMBER
    ADD THE FOLLOWING TO THE USER_STATUS
    
    When "MAX TPIPE" is displayed for the OTMA server,
    it means MAXTP limit for DFSOTMA has been specified
    in the OTMA client descriptor and the limit has been reached.
    All of the new TPIPE creation requests for all the OTMA
    members will be rejected until the TPIPE count in the
    system is dropped down to 50% or an user-specified
    level. However, the OTMA messages using the existing
    TPIPE will continue to work. IMS automatically attempts
    to remove TPIPE after they have been idle for 3 consecutive
    system checkpoints. Customers can issue /CHE commands
    3 times to force the TPIPE cleanup.
    
    REWRITE THE EXPLANATION OF TPCNT AS FOLLOWS:
    
    The current TPIPE count for each OTMA client
    and IMS server, even without the MAXTP
    specified in the OTMA client descriptor.
    
    ADD MAXTP AS FOLLOWS:
    
    MAXTP
    The max TPIPE limit specified in the OTMA client descriptor.
    If the MAXTP parameter is specified in the DFSOTMA
    of the client descriptor, it will be displayed for
    the OTMA server.
    If there are one or more OTMA clients with the MAXTP
    limit defined and MAXTP is not specified for DFSOTMA,
    the highest limit defined among the member(s) will be
    displayed for the OTMA server.
    
    ADD CHANGES TO IMS COMMUNICATIONS AND CONNECTIONS
    
    In the section of "Managing system resources and OTMA"
    In the sub-section of "TPIPE resource impact"
    The following paragraph needs to be updated is as follows:
    
    If one or more OTMA clients have a maximum allowable
    number of tpipes defined in their OTMA client descriptors
    and the MAXTP is not specified in the DFSOTMA descriptor
    entry, the highest number defined in the client descriptors
    serves as a global TPIPE warning threshold for all of the
    OTMA clients. When the total number of tpipes in use by
    all OTMA clients that are subject to tpipe monitoring
    reaches the global TPIPE warning threshold, IMS issues
    warning message DFS4385W to the system console and
    the MTO. After a global warning is issued and the total
    number of monitored tpipes drops down to 80% of the
    global TPIPE warning threshold, IMS issues message
    DFS4386I to indicate that the number of tpipes
    returned to normal.
    
    If MAXTP parameter is specified in the DFSOTMA
    descriptor entry, it sets the global TPIPE warning
    threshold specifically for all of the OTMA clients.
    When 80% of this threshold is reached, a DFS4515W
    message will be sent to the system console and MTO.
    Once this global TPIPE warning threshold is reached,
    OTMA will reject all the new TPIPE creation requests
    for all the OTMA members. For an input transaction
    that requires a new tpipe in the original IMS or the
    front-end IMS in the shared queues environment,
    it will be rejected with a NAK with OTMA sense code X'29'.
    A DFS4516E error message will be sent to the system
    console and MTO. After a DFS4515W or DFS4516E
    is issued and the total number of monitored tpipes
    in the system drops down to 50% or an user-specified
    level of the global tpipe warning threshold, IMS issues
    message DFS4517I to indicate that the number of
    tpipes returned to normal.
    
    OTMA Message Prefix
    State Data Section
    Server state protocol command
    Table 1 server state protocol command format
    
    Add the following two flags under TMAMRSIM_WRNFLG1
    
    Value: X20'
    TMAMRSIM_W1MTPF
    Description:
    
    The MAXTP limit defined by DFSOTMA descriptor entry
    has been reached. All of the subsequent requests for
    new tpipe from all sources will be rejected. There is one
    exception when MAXTPBE=NO is defined for shared
    queues backend IMS for application GU processing.
    
    X'10'
    TMAMRSIM_W1MTP80
    Description:
    Eighty percent of the global MAXTP limit defined by
    DFSOTMA descriptor entry has been reached.
    ×**** PE13/09/24 PTF IN ERROR. SEE APAR PM97670  FOR DESCRIPTION
    

APAR Information

  • APAR number

    PM78756

  • Reported component name

    IMS V13

  • Reported component ID

    5635A0400

  • Reported release

    300

  • Status

    CLOSED UR1

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    YesSpecatt / New Function / Xsystem

  • Submitted date

    2012-12-07

  • Closed date

    2013-08-06

  • Last modified date

    2013-10-04

  • APAR is sysrouted FROM one or more of the following:

    PM71035

  • APAR is sysrouted TO one or more of the following:

    UK96465 UK96466

Modules/Macros

  • DFSAOAM1 DFSAOAM2 DFSAOA00 DFSAOSD  DFSAOSW0 DFSTSCD  DFSYAWE
    DFSYCKP0 DFSYCLH0 DFSYDPD0 DFSYDST  DFSYDSTC DFSYFD00 DFSYIDC0
    DFSYINI0 DFSYLUS0 DFSYMEM0 DFSYMOM0 DFSYMSG  DFSYMTE  DFSYOTMA
    DFSYPRE  DFSYRST0 DFSYSCP0 DFSYSLM0 DFSYTIB  DFSYTIB0 DISPLAY
    

Fix information

  • Fixed component name

    IMS V13

  • Fixed component ID

    5635A0400

Applicable component levels

  • R300 PSY UK96465

       UP13/08/15 P F308  

  • R302 PSY UK96466

       UP13/08/15 P F308  

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"}],"Version":"300","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
14 December 2020