Page 1 of 2

BIG Contention

PostPosted: Mon Apr 07, 2014 5:55 pm
by samb01
Hello,

thuis week-end we had serious contention withe tha job :

MXXXXXX2

in this step :

//S10      EXEC PGM=IEHPROGM 
//SYSPRINT DD SYSOUT=*       
//SYSIN    DD *
  UNCATLG DSNAME=X.CGRA.MNRA



Here is the contention :

S=SYSTEM  SYSIGGV2 CATALOG.ICF1.ZSYS001                             
SYSNAME        JOBNAME         ASID     TCBADDR   EXC/SHR   STATUS   
CGBQ      CATALOG /MXXXXXX2  0044/0085  00A96148 EXCLUSIVE   OWN     
CGBQ      CATALOG /OXXXXXXT  0044/00C4  00A95968 SHARED      WAIT   
CGBQ      CATALOG /UXXXXXXF  0044/0090  00A956C0 SHARED      WAIT   
CGBQ      CATALOG /UXXXXXM   0044/0094  00A95170 SHARED      WAIT   
CGBQ      CATALOG /EXXXXXX0  0044/0142  00A82BE0 SHARED      WAIT   
CGBQ      CATALOG /MXXXXXX3  0044/0073  00A95C68 SHARED      WAIT   
CGBQ      CATALOG /EXXXXXX1  0044/0141  00A95418 SHARED      WAIT   
S=SYSTEM  SYSIGGV2 X.CGRA.MNRA                                CATAL T
SYSNAME        JOBNAME         ASID     TCBADDR   EXC/SHR   STATUS   
CGBQ      CATALOG /MXXXXXX2  0044/0085  00A96148 EXCLUSIVE   OWN     
 ISG343I 22.40.19 GRS STATUS 910 602                                 
 DEVICE:B21F VOLUME:SYS001 RESERVED BY SYSTEM CGBQ                   
 S=SYSTEM  SYSIGGV2 CATALOG.ICF1.ZSYS001                             
 SYSNAME        JOBNAME         ASID     TCBADDR   EXC/SHR   STATUS 
 CGBQ      CATALOG /MXXXXXX2  0044/0085  00A96148 EXCLUSIVE   OWN   
 CGBQ      CATALOG /OXXXXXXT  0044/00C4  00A95968 SHARED      WAIT   
  CGBQ      CATALOG /XXXXXXXF  0044/0090  00A956C0 SHARED      WAIT   
  CGBQ      CATALOG /UXXXXXXF  0044/0090  00A956C0 SHARED      WAIT   
  CGBQ      CATALOG /UXXXXXM   0044/0094  00A95170 SHARED      WAIT   
  CGBQ      CATALOG /EXXXXXX0  0044/0142  00A82BE0 SHARED      WAIT   
  CGBQ      CATALOG /MXXXXXX3  0044/0073  00A95C68 SHARED      WAIT   
  CGBQ      CATALOG /EXXXXXX1  0044/0141  00A95418 SHARED      WAIT   
  S=SYSTEM  SYSIGGV2 X.CGRA.MNRA                           CATAL       
  SYSNAME        JOBNAME         ASID     TCBADDR   EXC/SHR   STATUS   
  CGBQ      CATALOG /MXXXXXX2  0044/0085  00A96148 EXCLUSIVE   OWN     
 IEA631I  OPERATOR SYSIOSRS NOW INACTIVE, SYSTEM=C011    , LU=IOSAS   
 IEFTMS98 CA 1 HAS DETECTED A *USER* ABEND FFB, ALL CA 1 OUTSTANDING   
 ENQUEUES HAVE BEEN RELEASED                                           
 CCSR010E TMSESTAE U4091 AT 0165E9E6 LMOD N/A CSECT N/A +N/A TSM N/A   
 TSM                                                                   



To solve the problem, we canceleld the job : MXXXXXX2


But we can't anderstand why we had this contention...

Re: BIG Contention

PostPosted: Mon Apr 07, 2014 7:44 pm
by dick scherrer
Hello,

Possibly because you were trying to uncatalog a dataset that was in use . . . .

Re: BIG Contention

PostPosted: Mon Apr 07, 2014 7:50 pm
by samb01
It seems to be a catalog problem, istn't it ?

S=SYSTEM  SYSIGGV2 CATALOG.ICF1.ZSYS001


Re: BIG Contention

PostPosted: Mon Apr 07, 2014 8:54 pm
by Robert Sample
You had contention because the system had no idea what your job step was going to do. If you had specified
//S10      EXEC PGM=IEHPROGM 
//SYSPRINT DD SYSOUT=*       
//DUMMYDD  DD DISP=OLD,DSN=X.CGRA.MNRA
//SYSIN    DD *
  UNCATLG DSNAME=X.CGRA.MNRA
no contention would have occurred as the system would have known that you needed exclusive access to the data set.

Re: BIG Contention

PostPosted: Mon Apr 07, 2014 9:02 pm
by NicC
And why not
//UNCAT EXEC PGM=IEFBR14
//THIS   DD DSN=ABC.DEF.GHIK,DISP=(OLD,UNCATLG)

And why uncatalog without deleting?

Re: BIG Contention

PostPosted: Tue Apr 08, 2014 6:31 am
by steve-myers
NicC wrote:And why not
//UNCAT EXEC PGM=IEFBR14
//THIS   DD DSN=ABC.DEF.GHIK,DISP=(OLD,UNCATLG)

And why uncatalog without deleting?
The topic starter's JCL is roughly equivalent to
//S10     EXEC PGM=IDCAMS
//SYSPRINT DD  SYSOUT=*
//SYSIN    DD  *
 DELETE X.CGRA.MNRA NOSCRATCH
Most experts prefer JCL like my sample in preference to using the essentially obsolete IEHPROGM.
And why uncatalog without deleting?
There may be many reasons.
  • The volume where the data set is cataloged no longer exists.
  • The physical data set no longer exists on the volume where it is cataloged.
  • The data set is cataloged on a tape volume that has expired and has been reused.
  • The data set is cataloged on a tape volume that is controlled by catalog retention, and the volume can be scratched.
Aside from the detail that NicC's JCL specifies a different data set than in the initial post, there is another problem with the JCL: it will fail if some of the issues raised in my list exist.

Mr. Sample's idea of specifying the data set in JCL is valid, but this is safer.
//DUMYDD   DD  DISP=OLD,DSN=X.CGRA.MNRA,VOL=REF=SYS1.SVCLIB
The volume reference essentially specifies the IPL volume, which must be online.

Re: BIG Contention

PostPosted: Tue Apr 08, 2014 5:04 pm
by samb01
Hello,

this reason is right :

The data set is cataloged on a tape volume that is controlled by catalog retention, and the volume can be scratched.


We need to uncatalg the dataset but not to delete it (as a dump).

So if i anderstand, this sample is better :

//S10     EXEC PGM=IDCAMS
//SYSPRINT DD  SYSOUT=*
//SYSIN    DD  *
 DELETE X.CGRA.MNRA NOSCRATCH



Sometimes, we have dataset which are in more than 250 tapes, so i wonder if this method take more times...

Re: BIG Contention

PostPosted: Tue Apr 08, 2014 5:33 pm
by steve-myers
samb01 wrote:Hello,

this reason is right :

The data set is cataloged on a tape volume that is controlled by catalog retention, and the volume can be scratched.


We need to uncatalg the dataset but not to delete it (as a dump).

So if i anderstand, this sample is better :

//S10     EXEC PGM=IDCAMS
//SYSPRINT DD  SYSOUT=*
//SYSIN    DD  *
 DELETE X.CGRA.MNRA NOSCRATCH



Sometimes, we have dataset which are in more than 250 tapes, so i wonder if this method take more times...
I see two issues:
  • If the data set is on tape, I do not understand the data set ENQ issue in the initial post. You do not want to free a tape if it is being actively used!
  • You almost certainly want to add the DUMMYDD statement that has been proposed elsewhere.
Sometimes, we have dataset which are in more than 250 tapes, so i wonder if this method take more times...
Do you mean the data set is a multiple volume data set that extends over 250 volumes? Is this even possible??

DELETE xxx NOSCRATCH should be very quick since all it does is update the catalog. I don't know about the IBM tape management system, but I'm pretty sure the CA1 tape management system does all this processing to "scratch" no longer required tapes in a batch job run later.

Re: BIG Contention

PostPosted: Tue Apr 08, 2014 6:40 pm
by samb01
A multi-volume with 247 volume :

yes it's possible :

 --------------------------  MULTIPLE VOLUME LISTING  ------ Row 1 to 13 of 247
 COMMAND ===>                                                  SCROLL ===> PAGE
                                                                               
        I  = Inquiry         U  = Update                        DATE: 08/04/201
                                                                      14.098   
     DATA SET NAME ===> X.XAVED                                               
                                                                               
     VOLUME  VOLUME                                                           
 CMD  SEQ    SERIAL  VAULT   SLOT     TYPE                                     
                                                                               
      0001   384057          0000000  SL                                       
      0002   390670          0000000  SL                                       
      0003   402510          0000000  SL                                       
      0004   914292          0000000  SL                                       
      0005   926396          0000000  SL                                       
      0006   416605          0000000  SL                                       
      0007   429857          0000000  SL                                       
      0008   442831          0000000  SL                                       
      0009   455732          0000000  SL                                       
      0010   454879          0000000  SL                                       
      0011   900703          0000000  SL                                       
      0012   923084          0000000  SL                                       
      0013   929312          0000000  SL                                       


Re: BIG Contention

PostPosted: Tue Apr 08, 2014 6:59 pm
by NicC
That only shows 13 volumes - you need to show the 'back end' of the list.