I would issue the PDS FIXPDS subcommand to change the DCB attributes,
followed by a VERIFY subcommand.  Assuming the LRECL is 80 based on the
block lengths from your previous VERIFY.

  pds 'name.of.dsname'
  fixpds recfm(fb) lrecl(80) blksize(27920)
  verify :
  end

Regards,
John K


                                                                                
                                       
  From:       esmie moo <[email protected]>                                    
                                       
                                                                                
                                       
  To:         [email protected]                                              
                                       
                                                                                
                                       
  Date:       07/27/2011 07:01 AM                                               
                                       
                                                                                
                                       
  Subject:    Re: EXTERNAL: Re: CORRUPT PDS - I/O ERROR                         
                                       
                                                                                
                                       



Paul,

I tried your suggestion,  here is a sample of what I received:

** VERIFY   ADBTS
BLOCK LENGTH OF 20,960 EXCEEDS THE DATA SET DCB BLKSIZE
BLOCK LENGTH OF 20,960 IS NOT DIVISIBLE BY THE DCB LRECL

** VERIFY   ALTERTS
BLOCK LENGTH OF 21,360 EXCEEDS THE DATA SET DCB BLKSIZE
BLOCK LENGTH OF 21,360 IS NOT DIVISIBLE BY THE DCB LRECL

** VERIFY   ALTABLE
BLOCK LENGTH OF 27,920 EXCEEDS THE DATA SET DCB BLKSIZE
BLOCK LENGTH OF 27,920 IS NOT DIVISIBLE BY THE DCB LRECL

** VERIFY   GRANT
BLOCK LENGTH OF  8,240 EXCEEDS THE DATA SET DCB BLKSIZE
BLOCK LENGTH OF  8,240 IS NOT DIVISIBLE BY THE DCB LRECL

Could you tell me what I should do?


From: Paul Strauss <[email protected]>
To: [email protected]
Sent: Tuesday, July 26, 2011 3:15:35 PM
Subject: Re: EXTERNAL: Re: CORRUPT PDS - I/O ERROR

If you have PDS or PDS85 on the system it may help.  You can run it in
batch like this:

//TSO  EXEC PGM=IKJEFT01
//* STEPLIB  DD DISP=SHR,DSN=  load library where PDS is
//SYSPRINT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD *
PDS  ' put bad pds here '
VERIFY :                                This command with
the : says to read all members and list the bad ones.
END
//

I'm not sure what you'll get if the dataset looks like a flat file if the
directory was written over, but it may tell you something.

If any members can be read, it will tell you which ones are the bad ones
and you can then create an IEBCOPY job with an Exclude for all the bad
members and copy the good members to a new dataset..

Thank You,

Paul Strauss

Integrated Technology Delivery, Global Services, IBM
L0DB z/OS MVS/Program Products/Security
150 Kettletown Rd.
Southbury, CT 06488
(203) 272-2758
[email protected]

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to