IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

S0C7 abend while reading a record


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
priyabrata mohanty

New User


Joined: 04 Mar 2005
Posts: 8
Location: bangalore

PostPosted: Sat Mar 05, 2005 4:12 pm
Reply with quote

hi,
i am reading from a ps having 800000 records. the job usually takes 4 hrs to complete. but today it abended with S0C7. from sysdump, i found that it abended while reading a record. now i want to find out , which record caused the abend and that too as quickly as possible (say, within 30 min). can anybody suggest me how to do without using FILE-AID?

thanx in advance.
regards,
Priyabrata.
Back to top
View user's profile Send private message
mdtendulkar

Active User


Joined: 29 Jul 2003
Posts: 237
Location: USA

PostPosted: Sat Mar 05, 2005 6:55 pm
Reply with quote

priyabrata mohanty,

Theres no easy way to find out on which record the program got abended if you do not have checkpoints, counters, displays in your programs.

You will need to analyze the flow of the program, identify the field at which the program gave S0C7 and then identify the valid data for that field and use file-aid to filter and see if any data mismatch is there for that field.

This is a crude way of analysis, see the DUMP for more details. You will need to analyze that only

Regards
Mayuresh
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Developer


Joined: 15 Feb 2005
Posts: 7129
Location: San Jose, CA

PostPosted: Sat Mar 05, 2005 9:47 pm
Reply with quote

One common cause of an 0C7 involves decimal operations on invalid decimal data (PD or ZD format). If that's the problem and you know which PD or ZD fields are being accessed, you could use the VERIFY or DISPLAY operator of DFSORT's ICETOOL to identify the invalid values and the records in which they're located. If you want to know more about this technique, let me know.
Back to top
View user's profile Send private message
priyabrata mohanty

New User


Joined: 04 Mar 2005
Posts: 8
Location: bangalore

PostPosted: Sun Mar 06, 2005 2:10 pm
Reply with quote

hi yeager,
thankx for your reply. i am really interested in the way in which DFSORT can be used to track the problem of finding the record causing soc7 abend. please let me know about it.

is it possible to split the large ps(say,having 800000 recs) to smaller files(say, having 200000 recs each) and find the problem record in less time?

thankx.
priyabrata.
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Developer


Joined: 15 Feb 2005
Posts: 7129
Location: San Jose, CA

PostPosted: Sun Mar 06, 2005 10:22 pm
Reply with quote

You can use a DFSORT/ICETOOL job to identify invalid values in ZD or PD fields. You can either use the VERIFY operator, or the DISPLAY operator (or both). Here's a DFSORT/ICETOOL job that will identify invalid values in a ZD field in positions 21-28 and invalid values in a PD field in positions 41-45.

Code:

//S1 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//IN DD DSN=...  input file
//TOOLIN DD *
VERIFY FROM(IN) ON(21,8,ZD) ON(41,5,PD)
/*


It will only take DFSORT/ICETOOL at most a few minutes (and probably a lot less) to verify 800000 records. DFSORT is generally much, much faster than FileAid.

For more information on using the VERIFY and DISPLAY operators of DFSORT's ICETOOL to identify invalid ZD and PD values, see:

publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/ICE1CA10/6.7.5.9?SHELF=&DT=20050222160456

Quote:
is it possible to split the large ps(say,having 800000 recs) to smaller files(say, having 200000 recs each) and find the problem record in less time?


No. It takes less time to just read the file and identify the records with invalid values then to read the file, split it and then read the individual files to identify the records with invalid values. In the first case, you're reading the records once. In the second case, you're reading the records twice.
Back to top
View user's profile Send private message
yoyowjd

New User


Joined: 07 Mar 2005
Posts: 1

PostPosted: Mon Mar 07, 2005 1:38 pm
Reply with quote

Hi Frank

Good Tools~
Thanks for your share~ icon_biggrin.gif

Regards,
Ever
Back to top
View user's profile Send private message
lnvrn

New User


Joined: 24 Feb 2005
Posts: 8
Location: Mumbai

PostPosted: Tue Mar 08, 2005 7:20 pm
Reply with quote

Hi,

Can u please explain by using File-aid how can we achieve this.

Thanks & Regards
Back to top
View user's profile Send private message
sekhar_ibm

New User


Joined: 21 Feb 2005
Posts: 5
Location: hyd

PostPosted: Sat Mar 12, 2005 8:01 pm
Reply with quote

hai,

can i know,

If any variabe or feald need to change(lenth,datatype) in any program,table or map then how can we find which programes,database tables are effected.tell me if any spufi option is there or any tool.

thanku icon_lol.gif
Back to top
View user's profile Send private message
mcmillan

Site Admin


Joined: 18 May 2003
Posts: 1210
Location: India

PostPosted: Sat Mar 12, 2005 8:20 pm
Reply with quote

That's the reason why we are maintaining doccuments. You have to review your doccuments for that.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts SFTP Issue - destination file record ... All Other Mainframe Topics 2
No new posts FINDREP - Only first record from give... DFSORT/ICETOOL 3
No new posts To find whether record count are true... DFSORT/ICETOOL 6
No new posts ISAM and abend S03B JCL & VSAM 10
Search our Forums:

Back to Top