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

SB37 ABEND, but dataset is created successfull


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

New User


Joined: 07 Oct 2008
Posts: 23
Location: Chennai

PostPosted: Tue Jan 06, 2009 11:54 am
Reply with quote

Hi!

My job abended with Sb37 (space issue in the dataset). But the dataset is loaded successfully with the data from the input file.
If dataset load is success, then why did the ABEND occur?

Can anyone please justify this situation.

JCL : Dataset to be created with
SPACE=(CYL,(50,25),RLSE)

dataset has been created has the properties as
1st extent cylinders: 88
Secondary cylinders : 25

Current Utilization
Used cylinders . . : 88
Used extents . . . : 1

Thanks
Hema
Back to top
View user's profile Send private message
Gnanas N

Active Member


Joined: 06 Sep 2007
Posts: 792
Location: Chennai, India

PostPosted: Tue Jan 06, 2009 11:57 am
Reply with quote

Hi,

Do you have something like BMC Stop X37 or CA-Allocate?
Back to top
View user's profile Send private message
erhema

New User


Joined: 07 Oct 2008
Posts: 23
Location: Chennai

PostPosted: Tue Jan 06, 2009 12:06 pm
Reply with quote

Hi Gnanas,

No. Am not using any thing lik BMC Stop or CA-Allocate.

Thanks
Hema
Back to top
View user's profile Send private message
muthuvel

Active User


Joined: 29 Nov 2005
Posts: 217
Location: Canada

PostPosted: Tue Jan 06, 2009 12:12 pm
Reply with quote

Were you sure the job abended of SB37,Please post the JCL and Output dataset DISP parameters?
Back to top
View user's profile Send private message
Gnanas N

Active Member


Joined: 06 Sep 2007
Posts: 792
Location: Chennai, India

PostPosted: Tue Jan 06, 2009 12:12 pm
Reply with quote

Please check, B37 for that dataset... dataset is the result of that step today's run...

Also post dataset attributes here.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Tue Jan 06, 2009 12:22 pm
Reply with quote

Few questions ..........

Are you looking at the correct dataset
What is the disposition of the dataset
Have your storage people set up constraint relief
Back to top
View user's profile Send private message
umasankarmf

New User


Joined: 08 Sep 2008
Posts: 43
Location: india

PostPosted: Tue Jan 06, 2009 12:27 pm
Reply with quote

Hi hema,
Error SB37 is related to space. Just like warning i.e. data set is full with some unused storage space. So just compress the data set.


Corrections are welcome..........!
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Tue Jan 06, 2009 12:28 pm
Reply with quote

umasankarmf wrote:
Hi hema,
Error SB37 is related to space. Just like warning i.e. data set is full with some unused storage space. So just compress the data set.
Corrections are welcome..........!

Please explain with examples on how to compress a PS dataset
Back to top
View user's profile Send private message
umasankarmf

New User


Joined: 08 Sep 2008
Posts: 43
Location: india

PostPosted: Tue Jan 06, 2009 12:32 pm
Reply with quote

Hi expat,

Just type Z infront if the data set after ISPF 3.4 option or by using 3.2 option also you can compress the dataset.

If I am wrong please correct me..........!
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Tue Jan 06, 2009 12:35 pm
Reply with quote

You are talking about a PDS not a PS dataset. You CAN NOT compress a PS dataset.
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Tue Jan 06, 2009 1:20 pm
Reply with quote

umasankarmf wrote:
Just like warning
B37 is a System abend code that needs some corrective action. It cannot be treated just as a warning.
Back to top
View user's profile Send private message
erhema

New User


Joined: 07 Oct 2008
Posts: 23
Location: Chennai

PostPosted: Tue Jan 06, 2009 2:02 pm
Reply with quote

Hi All,

Here is my JCL

//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=INPUT.FILE(+0),DISP=SHR
//SYSUT2 DD DSN=OUTPUT.FILE.GROUP(+0),
// DISP=(MOD,CATLG,KEEP),
// SPACE=(CYL,(50,25),RLSE),
// DCB=(RECFM=FB,LRECL=160),
// UNIT=SYSDA

SB37 ABEND occured in this Step.


Output dataset created is OUTPUT.FILE.GROUP.G1100V00

Properties of this file are
1st extent cylinders: 88
Secondary cylinders : 25

Current Utilization
Used cylinders . . : 88
Used extents . . . : 1

Please let me know if i need to provide any other input.

Thank You
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Tue Jan 06, 2009 2:11 pm
Reply with quote

Hema,

Have you looked at the JCL manual for the Subparameter description for DISP Parameter.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Tue Jan 06, 2009 2:15 pm
Reply with quote

Ohhhhhhhhhh boy. I haven't seen JCL like that since about 1983 when I changed from this to a new accumulation method that preserved data integrity.

If you are doing an accumulation of data, why on earth do you use DISP=MOD. This is rather dangerous and may invalidate data integrity, as you probably have done in your run shown above.

This is much safer because it is rerun friendly. How are you going to recover your output gdg gen(0) before rerun ?

Also, please learn to use code tags as shown below to make your code easier to read.
Code:

//STEP1    EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DSN=OUTPUT.FILE.GROUP(+0),DISP=SHR
//         DD DSN=INPUT.FILE(+0),DISP=SHR
//SYSUT2   DD DSN=OUTPUT.FILE.GROUP(+1),
//            DISP=(,CATLG,DELETE),
//            SPACE=(CYL,(50,25),RLSE),
//            DCB=(RECFM=FB,LRECL=160),
//            UNIT=SYSDA
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6248
Location: Mumbai, India

PostPosted: Tue Jan 06, 2009 2:15 pm
Reply with quote

Try using DISP=(NEW,CATLG,DETELE) & check what happens ?
Back to top
View user's profile Send private message
erhema

New User


Joined: 07 Oct 2008
Posts: 23
Location: Chennai

PostPosted: Tue Jan 06, 2009 2:32 pm
Reply with quote

Hi Expat,

yes, you are right, this code is written before 20 years and am maintaining it. I have to correct this ABEND.

This same job runs more than 10 times in one day and i want all 10 diff inputs to be accumulated in one partiuclar Group GDG.

Please answer my question, Why this output GDG dataset have the data received from its latest input file copied successfully and also have thrown an ABEND.

please let me know if am wrong anywhere

thanks
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Tue Jan 06, 2009 3:11 pm
Reply with quote

It probably has some of the data accumulated, but not all of it, as it has run out of space.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6248
Location: Mumbai, India

PostPosted: Tue Jan 06, 2009 3:22 pm
Reply with quote

Hi,

First consider this format of DISP parameter: DISP=({status}{,normal-termination-disp}{,abend-disp})

erhema wrote:
Please answer my question, Why this output GDG dataset have the data received from its latest input file copied successfully and also have thrown an ABEND.
Because you use "Keep" for "abend-disp", so till the sapce was availabe to your DSN it was "loaded" with data & the moment space was filled up..boom..you got the abend..but because of "KEEP" DSN was still kept & was not deleted.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6248
Location: Mumbai, India

PostPosted: Tue Jan 06, 2009 3:28 pm
Reply with quote

Hello,

By the way did you try using
Quote:
DISP=(NEW,CATLG,DETELE) & check what happens ?
and again, did you notice the DISP parameter for SYSUT2 in the code from Expat.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Tue Jan 06, 2009 9:51 pm
Reply with quote

Hello,

Quote:
This same job runs more than 10 times in one day and i want all 10 diff inputs to be accumulated in one partiuclar Group GDG.
Even though this has run for a long time, i believe you will be better served if you correct it (yup, as coded it is not correct).

You might consider changing the individual runs to create a +1 of a different gdg base and at the end of the day (after the last run) copy all 10 generations to a new +1 of the existing gdg. This would make one generation available for each day's data without using the current problem scheme. This copy could simply be an iebgener like:
Code:

//COPY     EXEC PGM=IEBGENER                                         
//SYSUT1   DD DSN=MY.TEN.FILES,DISP=(OLD,DELETE,KEEP)                               
//SYSUT2   DD DSN=MY.DAILY.FILE(+1),DISP=(,CATLG,DELETE),UNIT=xxxxxx,     
//            SPACE=(CYL,(50,25),RLSE),DATACLAS=zzzzzz               
//SYSOUT   DD SYSOUT=*                                               
//SYSPRINT DD SYSOUT=*                                               
//SYSIN    DD DUMMY                                                   


By not specifying a generation on sysut1, all cataloged geneerations would be processed and then automatically deleted at successful end. If some day there were other than 10 generations, this would work for however many were available.
Back to top
View user's profile Send private message
UmeySan

Active Member


Joined: 22 Aug 2006
Posts: 771
Location: Germany

PostPosted: Wed Jan 07, 2009 2:01 pm
Reply with quote

Morning ladies !

By the way, did you ever had a closer look at the RC (04 or 08 or 0C) of the B37 error ???


@erhema:
Did the job ever run successfully ???

@Expat:
Respect, meaningful guideline !!!
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 batch SFTP job using AOPBATCH unable ... All Other Mainframe Topics 7
No new posts Reading Empty Dataset DFSORT/ICETOOL 5
No new posts Call an hlasm from REXX in batch and ... CLIST & REXX 4
No new posts What is the most complex abend you've... Mainframe Interview Questions 8
No new posts Mainframe Dataset Binary or ASCII Mainframe Interview Questions 4
Search our Forums:

Back to Top