IBM Support

PM28159: DFHDS0002 SEVERE ERROR CODE X'0075' OCCURRED IN MODULE DFHDSSR PIDS/5655M1500 LVLS/650 MS/DFHDS0002 RIDS/DFHDSSR PRCS/00000075

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • DFHDS0002 is issued if a pipeline transaction is cancelled.
    .
    DFHPI0997 CPIH CICS pipeline manager has encountered an error:
            target program unavailable.
    DFHDS0002 Severe error code X'0075' occurred in module DFHDSSR
            PIDS/5655M1500 LVLS/650 MS/DFHDS0002
            RIDS/DFHDSSR PRCS/00000075
    _________________
    The Kernel Stack shows
    Ke_NUM @STACK   LEN  TYPE  ...  NAME
    0071   0FE72C80 0670 Dom   ...  DFHRMUO
    0071   0FE732F0 06F0 Dom   ...  DFHRZRM
                         Int   ...  RZRM_RMRO_FUNCTIONS
                         Int   ...  RZRM_PERFORM_COMMIT
    0071   0FE739E0 02D0 Dom   ...  DFHDSSR
                         Int   ...  SEND_MSG
    ...
    _________________
    The trace shows
    - the task issues a Receive Reply:
    763 L8002 RZ 0110 RZSO  ENTRY RECEIVE_REPLY 0FE7754C
    .
    - another task purges it while it is waiting on the receive
    037 QR XM 1001 XMIQ ENTRY PURGE_TRANSACTION NORMAL,0000763C
    .
    - during purge processing, the task needs to synch point
    763 QR  RM FA11 RMUO  ENTRY COMMIT_UOW            NO
    .
    - during RM work in synch point processing, it does:
    763 QR RM F20B RMUO  EVENT About_to_call RZ,C6EC041AFD275346
    763 QR RZ 0160 RZRM  ENTRY PERFORM_COMMIT NO,FORWARD,0EF83E40
    763 QR    DS 0075 DSSR  *EXC*
            DEL_SUSP_SUSP_TOK_IN_USE
          - FUNCTION(DELETE_SUSPEND)
            SUSPEND_TOKEN(0065000F)
    .
    - The DSSR call is made from DFHRZRM +1BC6
    - Data Field 3 in the trace entry is the SUSPEND_RESUME_AREA:
            3-0000  FFFFFFFF 0065000F D9E9D9E2 E3D9C1D5
                    40404040 40404040 40404040 40404040
                    *........RZRSTRAN                *
              0020  0EEE9200 00020000 FB000000
    - Offset +x'28' = x'FB' = RESUMED
    _________________
      DFHDSSR rejects any request that isn't RESET at that offset.
    .
    WHEN(SUSPEND_RESUME_AREA.STATE ᆰ= RESET)
     DO;
       DSSR_RESPONSE = DSSR_INVALID;
       DSSR_REASON = DSSR_SUSPEND_TOKEN_IN_USE;
       ?FUBAR TRACE_POINT(DEL_SUSP_SUSP_TOK_IN_USE)
            MSGNO(SEVERE) TERMINATE_CICS(NO) FORCE_DUMP(YES)
    _________________
      There is an exposure in the use of the RZRSTRAN suspend token
    which is used when one side of a requeststream
    is delivering a data response to the requeststream partner.
        TASK 763 is the requeststream source task
    and TASK 764 is the requeststream target task.
      TASK 763 suspends on RZRSTRAN
    waiting for TASK-00764 to deliver a buffer of data.
      Both tasks are executing on their own L8 TCB.
      Before TASK 764 can trigger,
    TASK 763 is purged by an automated operator task
    When this happens, code in DFHRZSO - rzrs_multi_suspend
    detects the purge
    and issues a self-RESUME against the RZRSTRAN suspend token
    to take it out of its SUSPEND state.
      The problem is that at about the same time,
    TASK-000764 which is executing DFHRZTA rzrs_multi_resume
    issues its own resume of the RZRSTRAN suspend token.
      So we have 2 RESUMES which cause the suspend token
    to end up in a RESUMED state
    (rather than the default state of RESET).
      When the token is deleted later on by TASK-000763
    this abnormal state of RESUMED is detected by the dispatcher
    and this produces the DFHDS0002 severe error code 0075.
    .
    Additional Symptoms and Keywords : KIXREVJXD
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All                                          *
    ****************************************************************
    * PROBLEM DESCRIPTION: MSGDFHDS0002 when a PIPELINE task is    *
    *                      PURGED.                                 *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    CICS is acting as a Web Service provider. A new request arrives
    and a pipeline task is started to process it. A handler program
    called by the pipeline changes the TRANID to be used when
    running the target application. This causes a context switch to
    occur and a new task to be started. This target task runs in the
    same CICS region as the source task.
    The source task suspends waiting to be triggered by the partner.
    The target task triggers the source task and then waits for the
    source task to signal it is ready to receive the response.
    The target task calls requeststreams module DFHRZSO for function
    RECEIVE_REPLY. This resumes the target task. The source task
    now suspends on suspend token RZRSTRAN waiting for the target
    to deliver the buffer containing the response.
    At this point a PURGE is issued against the source task. The
    source task issues a RESUME against its RZRSTRAN suspend token
    to move it from SUSPENDED state to RESET.
    In parallel, the target task also issues a RESUME of the
    source task's RZRSTRAN suspend token.
    This causes the RZRSTRAN suspend token to be marked as RESUMED.
    Later on the source task returns the RZRSTRAN suspend token to
    the CICS dispatcher by calling DFHDSSR DELETE_SUSPEND.
    DFHDSSR detects the invalid state of the token and issues
    message DFHDS0002 error code 0075.
    The webservice source and target tasks should synchronize with
    one another to ensure that only one RESUME of the RZRSTRAN token
    occurs.
    

Problem conclusion

  • Requeststreams routine RZRS_MULTI_SUSPEND has been changed to
    signal to its partner that it is no longer suspended following a
    PURGE. A synchronized increment of requestream field r_suscnt
    is performed.
    If the count has already been incremented by the partner,
    RZRS_MULTI_SUSPEND will bypass the RESUME of the RZRSTRAN
    suspend token as the partner will have issued a RESUME.
    

Temporary fix

  • FIX AVAILABLE BY PTF ONLY
    

Comments

APAR Information

  • APAR number

    PM28159

  • Reported component name

    CICSTS V3 Z/OS

  • Reported component ID

    5655M1500

  • Reported release

    500

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-12-03

  • Closed date

    2011-01-20

  • Last modified date

    2013-01-07

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

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

    PM30229 UK64110 PM80047

Modules/Macros

  •    DESRZIS  DESRZRS  DESRZST  DESRZTR  DESRZXM
    DFHRZISC DFHRZIX  DFHRZRMC DFHRZRMD DFHRZRSC DFHRZRSD DFHRZRS1
    DFHRZSO  DFHRZSOA DFHRZSOJ DFHRZSOM DFHRZSOT DFHRZSOV DFHRZSO1
    DFHRZTA  DFHRZTAA DFHRZTAM DFHRZTAT DFHRZTRC DFHRZTRD DFHRZTR1
    DFHRZXM
    

Fix information

  • Fixed component name

    CICSTS V3 Z/OS

  • Fixed component ID

    5655M1500

Applicable component levels

  • R500 PSY UK64110

       UP11/01/27 P F101

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:
07 January 2013