IBM Support

Resolving FCPSSUSP waits in CICS by finding tasks that own private VSAM strings

Question & Answer


Question

The Task Summary (TK=1 or DS=1) in your CICS Transaction Server for z/OS (CICS) dump shows tasks waiting on resource FCPSSUSP. This means tasks are waiting for private VSAM strings to become available. How can you tell which tasks in your CICS region currently own the private strings?

Answer

Follow these steps to determine which tasks currently own the private strings in your CICS region:

  1. Format the Task Summary with IPCS command VERBX DFHPDxxx 'TK=1' or the Dispatcher domain task summary with VERBX DFHPDxxx 'DS=1' (where xxx is your release level of CICS like 740 for CICS TS 6.1).
     
  2. Note the Resource Name (RESOURCE_NAME), which tells you the associated file name. For instance, you might see 'FCPSSUSP BIGG' in which case the name of the file is BIGG.
     
  3. Format the File Control summaries and control blocks with VERBX DFHPDxxx 'FCP'
     
  4. Page forward until you see the "Current File Activity report" (CICS TS releases 3.2 and higher). It should look something like the following report:
     
    Key for Current File Activity :                                                                                                 
        RPL     : RPL address    
        Task    : Owning task number      
        Type    : Type of command = BROWSE,DELETE,READ,WRITE,READ_U(Read for Update)   
        RPLOPT  : RPL option codes (first 3 bytes)      
        VSWARESP: RPL feedback word                                                                                                   
        Hold    : Holding position - YES or NO                                                                                        
        I/F     : VSAM request is currently active - YES or NO                                                                        
        X/C     : Request failed with exclusive control conflict - YES or NO                                                          
        Wait    : Tasks are in exclusive control conflict waiting on this RPL - YES or blank                                          
        XCRPL   : RPL this activity is waiting on in exclusive control conflict                                                       
        XCTSK   : Task number this activity is waiting on in exclusive control conflict                                               
        Request : Vsam Request Byte = GET,PUT,CHECK,POINT,END,ERASE,WRTBUF(Write Buffer)                                              
        RIDFLD  : Key, RBA or RRN 
    
    Filename RPL      Task  Tran Type   RPLOPT VSWARESP Hold I/F X/C Wait XCRPL    XCTSK Request RIDFLD  
    _____________________________________________________________________________________________________
    BIGG     152C6288 00094 RECV READ_U 408600 00000000 NO   NO  NO  NO   -        -     GET     E5E5E5E5
    BIGG     152C6008 00093 RECS READ_U 408600 00000000 NO   NO  NO  NO   -        -     GET     E2E2E2E2
    BIGG     14F0FCE8 00092 RECP READ_U 408600 00000000 NO   NO  NO  NO   -        -     GET     D7D7D7D7
    BIGG     14F0FA68 00090 RECJ READ_U 408600 00000000 YES  NO  NO  NO   -        -     GET     D1D1D1D1
    BIGG     14F0F7E8 00089 RECG READ_U 408600 00000000 YES  NO  NO  NO   -        -     GET     C7C7C7C7
    BIGG     14F0F568 00088 RECD READ_U 408600 00000000 YES  NO  NO  NO   -        -     GET     C4C4C4C4
    BIGG     14F0F2E8 00087 RECA READ_U 408600 00000000 YES  NO  NO  NO   -        -     GET     C1C1C1C1
    
  5. Note the tasks in this report, which contain a "YES" in the Hold column. These tasks are the tasks that are holding a VSAM string.  In this example, 4 tasks are holding strings for file BIGG. The task #'s are 00090, 00089, 00088, and 00087.
     
  6. You can then search on the task number in the Task Summary or the Dispatcher domain task summary to find out what the tasks holding the strings are waiting for. TK was created to pull together information from various CICS domains, includes the local time, and formats tasks in attach order. So, you might find it easier to use. The following is an example of output from TK=1:
    ------------------------------------------------------------------------------------------------------------------------------------
    Tran  Tran Term SC Primary  W  Start Time    Time entered       Elapsed       Total CPU  Current S Resource Resource         F Abend
    num   id   ID      Client       (LOCAL)      Current state       Time           Time      TCB      Type     Name               Code
    ------------------------------------------------------------------------------------------------------------------------------------
    00087 CSMI N/A  T  MRO sess N  11:07:09.898  11:07:09.957  000:00:00:12.013  00:00.001978 QR     S FCIOWAIT BIGG             N 
    00088 CSMI N/A  T  MRO sess N  11:07:16.056  11:07:16.082  000:00:00:05.855  00:00.001301 QR     S FCIOWAIT BIGG             N    
    00089 CSMI N/A  T  MRO sess N  11:07:16.074  11:07:16.106  000:00:00:05.837  00:00.001456 QR     S FCIOWAIT BIGG             N  
    00090 CSMI N/A  T  MRO sess N  11:07:16.083  11:07:16.107  000:00:00:05.768  00:00.001248 QR     S FCIOWAIT BIGG             N  
    00092 CSMI N/A  T  MRO sess N  11:07:16.093  11:07:16.099  000:00:00:05.818  00:00.000804 QR     S FCPSSUSP BIGG             N    
    00093 CSMI N/A  T  MRO sess N  11:07:16.111  11:07:16.111  000:00:00:05.800  00:00.000050 QR     S FCPSSUSP BIGG             N    
    00094 CSMI N/A  T  MRO sess N  11:07:16.133  11:07:16.133  000:00:00:05.778  00:00.000053 QR     S FCPSSUSP BIGG             N    
    
  7. In this case, all the tasks that own strings are waiting on I/O to complete (FCIOWAIT).
     

A task will hold a VSAM string until the file control operation has completed. For instance, a READ UPDATE command will hold a string until a REWRITE has completed. And a STARTBR command will hold a string until the ENDBR is issued.

[{"Type":"MASTER","Line of Business":{"code":"LOB35","label":"Mainframe SW"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"ARM Category":[{"code":"a8m0z000000cwgsAAA","label":"Data services and Data tables-\u003EVSAM files"}],"ARM Case Number":"","Platform":[{"code":"PF035","label":"z\/OS"}],"Version":"5.2.0;5.3.0;5.4.0;5.5.0;5.6.0;6.1.0"}]

Product Synonym

CICS/TS CICSTS CICS TS CICS Transaction Server

Document Information

Modified date:
06 July 2023

UID

dwa1167412