IBM Support

PK64403: MSG EYUXZ0910I WHEN CPSM RECOVERY DETECTS LOGIC ERROR IN EYU0XDNR AFTER SECOND API DISCONNECT.

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Your CPSM API program incorrectly issues a second DISCONNECT
    for the same API thread. This second call for DISCONNECT fails
    because the thread token is no longer valid.
    
    You receive the following messages in your CMAS:
    
    @EYUXZ0910I EYU0XZSD Dump,applid ,applid,sysid,CMAS,XDNR,#####,
                TRAC,EYU0XDNR,mm/dd/yyyy,hh:mm:ss
    +EYUXL0900I Starting Environment Recovery
    +EYUXL0905E AEXY IN XSWX, OFFSET ???????? PSW=00000000 00000000
    +EYUXL0905E INTC=0000 ILC=0 TXCP=00000000 SCODE=S???? TRAN=xxxx
                TASK=#####
    +EYUXL0905E Methods=XSWX,XDE2,XDE0,XDER,XLAP
    +EYUXL0906I Registers at ABEND
    +EYUXL0907I GPR0-GPR3  000000CB  273FD66C  A6B26522  26B27522
    +EYUXL0907I GPR4-GPR7  273FD020  00000008  00000000  00000000
    +EYUXL0907I GPR8-GPRB  26B28522  26B29522  26B2A522  263B8494
    +EYUXL0907I GPRC-GPRF  263B8080  800513B0  A6B2A6EC  A5F00400
    +EYUXL0999I XLRV Exiting Successfully
    
    IEA794I SVC DUMP HAS CAPTURED:  378
    DUMPID=012 REQUESTED BY JOB (cicsjob )
    DUMP TITLE=EYU0XZSD Dump,applid , sysid ,CMAS,XDNR,#####,
               TRAC,EYU0XDNR,mm/dd/yyyy,hh:mm:ss
    
    Additional Keywords and Symptoms:
    
    KIXREVJXD
    
    CPSM trace follows:
    
    Task:#####     GMT:hh:mm:ss.ttttt  Date: mm/dd/yy
     Local-TOD:hh:mm:ss.ttttt   UOW:(EUI)
     Method:XDNR   Prior:XLOP Debug:UNPKTOKN Point-Id:10
     Major-Obj:DAT Envrn:CMAS Type:EXCEPTION Tran_Id:XDNR
     User:        TSO-Id:myusrid Self-Pt:00000000 CMAS-TCB:C1D7C9E4
     MethName Len:0009 Alet:00000000 Addr:2943E404
    .
    Task:#####     GMT:hh:mm:ss.ttttt  Date: mm/dd/yy
     Local-TOD:hh:mm:ss.ttttt   UOW:(EUI)
     Method:XDNR   Prior:XLOP   Debug:ESSSPOST Point-Id:12
     Major-Obj:DAT Envrn:CMAS   Type:EXCEPTION Tran_Id:XDNR
     User:        TSO-Id:myusrid Self-Pt:00000000 CMAS-TCB:C1D7C9E4
    .
    Task:#####     GMT:hh:mm:ss.ttttt  Date: mm/dd/yy
     Local-TOD:hh:mm:ss.ttttt   UOW:(EUI)
     Method:XDNR     Prior:XLOP  Debug:Cmd_Pool  Point-Id:26
     Major-Obj:DAT   Envrn:CMAS  Type:EXCEPTION  Tran_Id:XDNR
     User:        TSO-Id:myusrid Self-Pt:00000000  CMAS-TCB:C1D7C9E4
    .
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICSPlex SM V3R2M0 Users                 *
    ****************************************************************
    * PROBLEM DESCRIPTION:    You purge one or more tasks run-     *
    *                      ning CPSM API programs in a MAS.        *
    *                      Message EYUXZ0910I, containing the      *
    *                      title of a system dump, beginning:      *
    *                                                            . *
    *                         EYU0XZSD Dump ...                    *
    *                                                            . *
    *                      appears in the CMAS log, at the same    *
    *                      time that AEXY abends are logged in     *
    *                      the MAS joblog.  A system dump of the   *
    *                      CMAS, the ESSS address space, and the   *
    *                      MAS in which the API programs ran is    *
    *                      created.                                *
    ****************************************************************
    * RECOMMENDATION: After applying the PTF that resolves this    *
    *                 APAR, all CMASes and MASes must be recycled  *
    *                 to pick up the new code.  Note that the      *
    *                 restarts do not need to be done at the same  *
    *                 time.  However the fix will not be effective *
    *                 until each CMAS and all the MASes (including *
    *                 Web User Interface Servers) have restarted   *
    *                 with libraries that contain this fix.        *
    ****************************************************************
       When a task running a CPSM API program is purged, the command
    descriptor acquired for the current command is returned to the
    free pool and may be acquired for another API command.  If the
    purged API command is active in the CMAS (for example, waiting
    for data to be returned from remote MASes) when it resumes exe-
    cution, the serialization timestamp in the command descriptor
    will no longer match the timestamp copied into the router task's
    stack frame, and the router task will return without processing
    the command descriptor, which is now owned by another command.
    However, if the API task has not yet been dispatched in the CMAS
    when the client task is purged, when it starts it will not be
    able to detect the fact that the passed command descriptor was
    acquired for another command.
       If two disconnect commands are processed for the same thread
    token, the second command will fail because the thread is no
    longer active.  However the task in the CMAS will continue to
    process the exception.  Additional exceptions will occur as the
    CMAS task attempts to POST the waiting client task, and return
    the processed command descriptor to the free pool.
    

Problem conclusion

  •    The Method Argument Lists (MALs) for EYU0XDNA (XDNA - CMAS
    API Initiator) and EYU0XDNR (XDNR - CMAS API Router) were upda-
    ted to include an eight byte timestamp.
       Client API Router modules EYU0ABI0 (ABI0 - Batch API Router)
    and EYU0XDE1 - EYU0XDE5 (XDE1, XDE2, XDE3, XDE4, XDE5 - MAS API
    Routers) were modified to place the command descriptor serial-
    ization timestamp in the XDNA MAL.  XDNA was modified to place
    the passed timestamp in the XDNR MAL.  When the XDNR task is
    dispatched, the timestamp in the MAL will be compared to the
    serialization timestamp in the command descriptor.  If they dif-
    fer, the command descriptor was freed and reused by another API
    command.  XDNR will trace the exception and exit without proces-
    sing the command descriptor.
       Additional checks were added to XDNR to avoid attempting to
    POST a client task or return the command descriptor to the free
    pool, if an earlier exception suggests that the passed command
    descriptor may no longer be valid.
    

Temporary fix

  •             *********
                * HIPER *
                *********
    FIX AVAILABLE BY PTF ONLY
    

Comments

  •    You purge one or more tasks run-
    ning CPSM API programs in a MAS.
    Message EYUXZ0910I, containing the
    title of a system dump, beginning:
                                          .
       EYU0XZSD Dump ...
                                          .
    appears in the CMAS log, at the same
    time that AEXY abends are logged in
    the MAS joblog.  A system dump of the
    CMAS, the ESSS address space, and the
    MAS in which the API programs ran is
    created.
    
    
       When a task running a CPSM API program is purged, the command
    descriptor acquired for the current command is returned to the
    free pool and may be acquired for another API command.  If the
    purged API command is active in the CMAS (for example, waiting
    for data to be returned from remote MASes) when it resumes exe-
    cution, the serialization timestamp in the command descriptor
    will no longer match the timestamp copied into the router task's
    stack frame, and the router task will return without processing
    the command descriptor, which is now owned by another command.
    However, if the API task has not yet been dispatched in the CMAS
    when the client task is purged, when it starts it will not be
    able to detect the fact that the command descriptor passed at
    startup was acquired for another command.
       If two disconnect commands are processed for the same thread
    token, the second command will fail because the thread is no
    longer active.  However the task in the CMAS will continue to
    process the exception.  Additional exceptions will occur as the
    CMAS task attempts to POST the waiting client task, and return
    the processed command descriptor to the free pool.
    
    
       The Method Argument Lists (MALs) for EYU0XDNA (XDNA - CMAS
    API Initiator) and EYU0XDNR (XDNR - CMAS API Router) were upda-
    ted to include an eight byte timestamp.
       Client API Router modules EYU0ABI0 (ABI0 - Batch API Router)
    and EYU0XDE1 - EYU0XDE5 (XDE1, XDE2, XDE3, XDE4, XDE5 - MAS API
    Routers) were modified to place the command descriptor serial-
    ization timestamp in the XDNA MAL.  XDNA was modified to place
    the passed timestamp in the XDNR MAL.  When the XDNR task is
    dispatched, the timestamp in the MAL will be compared to the
    serialization timestamp in the command descriptor.  If they dif-
    fer, the command descriptor was freed and reused by another API
    command.  XDNR will trace the exception and exit without proces-
    sing the command descriptor.
       Additional checks were added to XDNR to avoid attempting to
    POST a client task or return the command descriptor to the free
    pool, if an earlier exception suggests that the passed command
    descriptor may no longer be valid.
    

APAR Information

  • APAR number

    PK64403

  • Reported component name

    CICSTS V3 Z/OS

  • Reported component ID

    5655M1500

  • Reported release

    50M

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2008-04-14

  • Closed date

    2008-05-12

  • Last modified date

    2008-06-02

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

    PK64412

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

    UK36336

Modules/Macros

  •    EYU#XDNA EYU#XDNR EYUBXDAT EYUBXDNB EYUNXDNA
    EYUNXDNR EYUQXDNA EYUQXDNR EYURXDNA EYURXDNR EYUTRDAT EYUYXDNA
    EYUYXDNR EYUZXDNA EYUZXDNR EYU0ABI0 EYU0DVDF EYU0XDE1 EYU0XDE2
    EYU0XDE3 EYU0XDE4 EYU0XDE5 EYU0XDNA EYU0XDNE EYU0XDNR EYU9XDRU
    EYU9XDR3 EYU9XDR4 EYU9XDR5
    

Fix information

  • Fixed component name

    CICSTS V3 Z/OS

  • Fixed component ID

    5655M1500

Applicable component levels

  • R50M PSY UK36336

       UP08/05/13 P F805

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":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.2","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.2","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 June 2008