Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Partition dataset got corrupted and is giving I/O error
Goto page 1, 2  Next
 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> TSO/ISPF
View previous topic :: :: View next topic  
Author Message
kgumraj

Active User


Joined: 01 May 2006
Posts: 151
Location: Hyderabad

PostPosted: Mon Mar 26, 2007 2:19 pm    Post subject: Partition dataset got corrupted and is giving I/O error
Reply with quote

Hi,
One of our partition dataset got corrupted and is giving I/O error. The reason being the Directory block information is verified wrong. Now this partition dataset is been treated as sequential file.

How to repair this error?

Is there anything like VERIFY of IDCAMS for PO
OR
Is it possible to copy the individual members in separate sequential file?
Back to top
View user's profile Send private message

expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Mon Mar 26, 2007 2:51 pm    Post subject:
Reply with quote

The first question would be ..... what is your backup strategy ?
Back to top
View user's profile Send private message
kgumraj

Active User


Joined: 01 May 2006
Posts: 151
Location: Hyderabad

PostPosted: Mon Mar 26, 2007 3:09 pm    Post subject:
Reply with quote

Hi,

expat wrote:
The first question would be ..... what is your backup strategy ?


I posted early, how to recover a dataset that got deleted, and from the response. I called data center people and they retrived that for us. But the problem is I am not able to browse one dataset.
other dataset is working fine.

Hope you got it.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Mon Mar 26, 2007 3:15 pm    Post subject:
Reply with quote

If the directory has been corrupted, then the dataset will need to be recovered from the latest backup that was taken before the corruption occurred.
Back to top
View user's profile Send private message
kgumraj

Active User


Joined: 01 May 2006
Posts: 151
Location: Hyderabad

PostPosted: Mon Mar 26, 2007 3:39 pm    Post subject:
Reply with quote

Hi,

expat wrote:
If the directory has been corrupted, then the dataset will need to be recovered from the latest backup that was taken before the corruption occurred.


if the Backup itself is corrupted, how can we repair that ?
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Mon Mar 26, 2007 3:53 pm    Post subject:
Reply with quote

That depends on when the dataset became corrupted, and how long or soon after it was noticed.

If you do not have any valid backups, then you can not restore it.

I am not sure if you can add a dummy member by IEBGENER and repair the directory, might be worth a try.

Code:

//SYSUT1   DD *
DUMMY RECORD
/*
//SYSUT2   DD DSN=your.pds(DUMMY),DISP=OLD,
//          RECFM=FB,LRECL=80,SPACE=(pri,sec,dirblks)


I will try and find out if this is possible. It somehow sticks in my mind that it might work. Let me know if you try it, and if I get some time I'll take a look and see what I can find out.
Back to top
View user's profile Send private message
GlobalGyan

New User


Joined: 31 Jan 2006
Posts: 28

PostPosted: Mon Mar 26, 2007 4:23 pm    Post subject:
Reply with quote

How did you manage to get your PDS 'corrupted'? :=)

-GG
Back to top
View user's profile Send private message
mmwife

Super Moderator


Joined: 30 May 2003
Posts: 1592

PostPosted: Tue Mar 27, 2007 6:23 am    Post subject:
Reply with quote

Is this a source lib PDS?
Back to top
View user's profile Send private message
kgumraj

Active User


Joined: 01 May 2006
Posts: 151
Location: Hyderabad

PostPosted: Tue Mar 27, 2007 11:26 am    Post subject:
Reply with quote

Hi,

mmwife wrote:
Is this a source lib PDS?


Yes, it has all the programs in it.
Back to top
View user's profile Send private message
Phrzby Phil

Active Member


Joined: 31 Oct 2006
Posts: 961
Location: Richmond, Virginia

PostPosted: Tue Mar 27, 2007 5:33 pm    Post subject:
Reply with quote

I have had a PDS corrupted by writing to it with the wrong LRECL. I could no longer access any members. Bummer.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Tue Mar 27, 2007 5:56 pm    Post subject:
Reply with quote

That situation would almost certainly be corrected by the code I posted earlier.
Back to top
View user's profile Send private message
kgumraj

Active User


Joined: 01 May 2006
Posts: 151
Location: Hyderabad

PostPosted: Wed Mar 28, 2007 9:35 am    Post subject:
Reply with quote

Hi,

expat wrote:
That situation would almost certainly be corrected by the code I posted earlier.


Your JCL will solve the error, but empty the file icon_sad.gif
Back to top
View user's profile Send private message
murmohk1

Senior Member


Joined: 29 Jun 2006
Posts: 1439
Location: Bangalore,India

PostPosted: Wed Mar 28, 2007 10:36 am    Post subject:
Reply with quote

Kiran,

Quote:
but empty the file


What do you mean by that? It is a file or PDS you are talking about.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8593
Location: Back in jolly old England

PostPosted: Wed Mar 28, 2007 12:43 pm    Post subject:
Reply with quote

Why will it empty the file ???

All it is doing is writing a new member to the PDS and resetting the RECFM & LRECL parameters. Done it a few times before, and all OK.

You can omit the space parameters for a RECFM / LRECL change.
Back to top
View user's profile Send private message
mmwife

Super Moderator


Joined: 30 May 2003
Posts: 1592

PostPosted: Thu Mar 29, 2007 5:44 am    Post subject:
Reply with quote

Expat is right. This happens fairly often. His solution won't won't empty the file. It just creates a dummy member in the PDS and in so doing, restores the orig lrecl/blksize (assuming you know what it was).

PS Don't use the space param. If you don't know the DCB info, Code:

DCB=(prod_source_lib_dsn) or is it DCB=(*.prod_source_lib_dsn) ? where,
prod_source_lib_dsn is in std DSN format.
Back to top
View user's profile Send private message
Neil Culleton

New User


Joined: 16 Jul 2008
Posts: 1
Location: Australia

PostPosted: Wed Jul 16, 2008 3:45 pm    Post subject:
Reply with quote

For the next person who <blush> corrupts a dataset by writing to it using a wrong LRECL, the above solution works.

In my case i needed more DCB parms:
===================================
//COPY1 EXEC PGM=IEBGENER
//SYSUT1 DD *
DUMMY RECORD
/*
//SYSUT2 DD DISP=OLD,DSN=HLQ.XXX.YYY(DUMMY),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=27920)
===================================

Using just LRECL or just BLKSIZE was giving:
'IEB311I CONFLICTING DCB PARAMETERS' on the IEBGENER.

Cheers,
Neil.
Back to top
View user's profile Send private message
Pedro

Senior Member


Joined: 01 Sep 2006
Posts: 2019
Location: Silicon Valley

PostPosted: Wed Jul 16, 2008 11:01 pm    Post subject: Reply to: Partition dataset got corrupted and is giving I/O
Reply with quote

Quote:
if the Backup itself is corrupted, how can we repair that ?


Some sites keep multiple generations of a dataset. For example, HSM has a GEN() parameter in the HRECOVER command, so you can recover not the most recent generation, but an older version.
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1703
Location: Australia

PostPosted: Thu Jul 17, 2008 10:27 am    Post subject:
Reply with quote

Hi,

I'm surprised to hear how often PDS become corrupted, surely it warrants investigating the problem.

I remember having the occasional one and found that utilities like IEBGENER, IDCAMS, SORT and even REXX's causing problems, I found by creating temporary PDS's and using IEBCOPY to copy the member to the target library, problems seemed to disappear.

I don't remember corruptions being caused by IEBCOPY.

Now that's not to say I don't use these utilities to write directly into the target libraries, but I try to avoid it.


Gerry
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Thu Jul 17, 2008 7:36 pm    Post subject:
Reply with quote

Hi Gerry,

Quote:
I'm surprised to hear how often PDS become corrupted,
From what i've noticed (at least on this forum) it is often caused when people (who do not yet understand how things "work") use "their own" jcl to compile/link instead of the "standard" compile/link for their system.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Thu Jul 17, 2008 7:55 pm    Post subject:
Reply with quote

or people writting rexx scripts to modify and don't bother creating and using a test (copy) pds first.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> TSO/ISPF All times are GMT + 6 Hours
Goto page 1, 2  Next
Page 1 of 2

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts S922 Error yuvan ABENDS & Debugging 3 Fri Dec 02, 2016 6:58 pm
No new posts Invoke Webservice Fails with DFHPI100... divated CICS 2 Thu Nov 24, 2016 5:57 pm
No new posts FTP - JCL failed while passing FTP co... Suneetha1612 JCL & VSAM 12 Wed Nov 16, 2016 7:33 pm
No new posts Amount field is getting corrupted whe... thesumitk SYNCSORT 5 Tue Oct 18, 2016 8:20 pm
No new posts Error during restore rename archanamuthukrishnan All Other Mainframe Topics 2 Fri Oct 14, 2016 3:30 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us