Load Library is empty but showing full



Ask about System customization & performance, Workload management, I/O device configuration etc.

Load Library is empty but showing full

Postby deucalion0 » Thu Jul 31, 2014 3:54 pm

Hello, I am having issues with a Load Library which I need to copy in new load modules.

I deleted the Load modules inside the library but it is still showing me it is full, 91% full, but when I try and browse it, I am told it is empty. I cannot compress the library as it is in use. Is there any way that I can extend the size of this library, or empty the dataset for real? I am not sure how it can be empty and full at the same time.

Any assistance is appreciated!

Thank you!
deucalion0
 
Posts: 58
Joined: Thu Jul 31, 2014 3:47 pm
Has thanked: 32 times
Been thanked: 0 time

Re: Load Library is empty but showing full

Postby BillyBoyo » Thu Jul 31, 2014 4:04 pm

If it is a PDS, you need to compress it. If it is a PDSE (or something proprietary) you need to talk to your technical people.
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 265 times

Re: Load Library is empty but showing full

Postby deucalion0 » Thu Jul 31, 2014 4:12 pm

Hi there,

It is a PDS and I cannot compress it because the PDS is in use. Is there anything I can do to get around this?

Thank you!
deucalion0
 
Posts: 58
Joined: Thu Jul 31, 2014 3:47 pm
Has thanked: 32 times
Been thanked: 0 time

Re: Load Library is empty but showing full

Postby steve-myers » Thu Jul 31, 2014 4:24 pm

We have been through this many, many times. Deleting a member from a PDS does not make the space occupied by the member immediately available for reuse. You have three major options at this point.
  • Determine what other jobs or TSO users are using the data set and get them to go away.
  • Prepare and run a job like this.
    //xxx      JOB  ...
    //COMPRESS EXEC PGM=IEBCOPY
    //SYSPRINT DD  SYSOUT=*
    //SYSUT1   DD  DISP=SHR,DSN=your-dataset
    //SYSIN    DD  *
     COPY INDD=SYSUT1,OUTDD=SYSUT1
    /*
  • Prepare a CLIST something like this and run it.
    PROC 1 NAME DISP(SHR)
    LISTDSI &NAME
    SET RC = &LASTCC
    IF &RC NE 0 THEN +
     WRITE I CAN'T FIND &NAME!
    ELSE +
     IF &SYSDSORG NE &STR(PO) THEN +
      WRITE &NAME IS NOT PARTITIONED!
     ELSE +
      DO
       CONTROL NOMSG
       FREE FILE(SYSIN SYSPRINT AFILE)
       CONTROL MSG
       LISTDSI COMPRESS.SYSPRINT
       SET RC = &LASTCC
       IF &RC = 0 THEN +
        DO
         CONTROL NOMSG
         DEL COMPRESS.SYSPRINT
         CONTROL MSG
        END
       ALLOCATE FILE(SYSPRINT) DATASET(COMPRESS.SYSPRINT) SPACE(1 1) CYL +
         RECFM(F B A) LRECL(121) DSORG(PS)
       ALLOCATE FILE(SYSIN) SPACE(1 1) TRACK RECFM(F B) LRECL(80) +
         BLKSIZE(800 )
       OPENFILE SYSIN OUTPUT
       SET SYSIN = &STR( COPY INDD=AFILE,OUTDD=AFILE)
       PUTFILE SYSIN
       CLOSFILE SYSIN
       ALLOCATE FILE(AFILE) &DISP DATASET(&NAME)
       SET RC = &LASTCC
       IF &RC = 0 THEN +
        DO
         CALL *(IEBCOPY)
         SET RC = &LASTCC
         WRITE COMPRESS COMPLETE, IEBCOPY RC = &RC
        END
       FREE FILE(SYSIN SYSPRINT AFILE)
       ALLOCATE FILE(SYSPRINT) DATASET(*)
       ALLOCATE FILE(SYSIN)    DATASET(*)
      END
    Many of the regular contributors to this forum prefer Rexx rather than CLIST. I have used this CLIST for many years; it's not worth rewriting it in Rexx. A Rexx EXEC will be similar.
steve-myers
Global moderator
 
Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Re: Load Library is empty but showing full

Postby deucalion0 » Thu Jul 31, 2014 5:39 pm

Thank you for your response Steve-myers!

I have ran the IEBCOPY job and that did empty the PDS, so that worked thank you! I will save this job for the future!

I now have issues with insufficient space when copying new Load modules into the PDS, I believe it is to do with Directory Blocks, I am not sure.

Thank you again for your help!
deucalion0
 
Posts: 58
Joined: Thu Jul 31, 2014 3:47 pm
Has thanked: 32 times
Been thanked: 0 time

Re: Load Library is empty but showing full

Postby Robert Sample » Fri Aug 01, 2014 7:38 am

deucalion0: be aware that compressing a data set with DISP=SHR in the JCL may cause unexpected consequences, depending upon what else has the data set allocated. The ONLY safe way to compress a PDS is to allocate it DISP=OLD in your JCL (and that isn't 100% safe if someone cancels the job while the compress is underway).
Robert Sample
Global moderator
 
Posts: 3719
Joined: Sat Dec 19, 2009 8:32 pm
Location: Dubuque, Iowa, USA
Has thanked: 1 time
Been thanked: 279 times

Re: Load Library is empty but showing full

Postby enrico-sorichetti » Fri Aug 01, 2014 12:43 pm

be aware that compressing a data set with DISP=SHR in the JCL may cause unexpected consequences,


well... the TS started walking on water when all the members were deleted in a PDS used somewhere else
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
enrico-sorichetti
Global moderator
 
Posts: 2994
Joined: Fri Apr 18, 2008 11:25 pm
Has thanked: 0 time
Been thanked: 164 times

Re: Load Library is empty but showing full

Postby nevilh » Fri Aug 01, 2014 9:16 pm

Just because a dataset is in use, it doesn't mean that the dataset is being used. Allocation is "stupid" it will do the ENQ on majorname.dsname so if you have 2 datasets with the same name on different disks if one is allocated the other is "locked" . This is one of the reasons IBM allows the renaming of datasets that are in use (if the user is authorized).
nevilh
 
Posts: 39
Joined: Wed Jun 01, 2011 8:28 pm
Has thanked: 0 time
Been thanked: 3 times

Re: Load Library is empty but showing full

Postby steve-myers » Fri Aug 01, 2014 9:48 pm

nevilh wrote:.. Allocation is "stupid" it will do the ENQ on majorname.dsname so if you have 2 datasets with the same name on different disks if one is allocated the other is "locked" .

Most users seldom, if ever, encounter this problem since all data sets used by most users are cataloged. System programmers building new SYSRES volumes get hit with this all too often.
steve-myers
Global moderator
 
Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Re: Load Library is empty but showing full

Postby steve-myers » Wed Aug 06, 2014 9:53 am

deucalion0 wrote:... I now have issues with insufficient space when copying new Load modules into the PDS, I believe it is to do with Directory Blocks, I am not sure. ...
If there is an issue with directory blocks, and you're using IEBCOPY to perform the copy, IEBCOPY will tell you very directly there are not enough directory blocks. You will get message

IEB148I NO SPACE IN OUTPUT DIRECTORY FOR DIRECTORY ENTRIES FROM INPUT DATA SET xxxx

It's not a very good message, plus IEBCOPY aborted the copy, but what you see is what you get.
steve-myers
Global moderator
 
Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Next

Return to System programming

 


  • Related topics
    Replies
    Views
    Last post