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

unable to limit number of volumes created using pgm=iebgener


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

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Fri Sep 02, 2011 12:45 am
Reply with quote

When I code VOL=(,,,12) in my iebgener step, it creates more then 12 volumes, does not abend and issues a return code of '0'. In this case it created 20 volumes. Can anyone help me.
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Fri Sep 02, 2011 1:01 am
Reply with quote

Robert beat me with the answer on the other topic you added to.

You can't use the volume count as a limit to the number of output volumes, it is designed to aid allocation of tape units.

What are you trying to achieve, there is probably some way if we know.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Fri Sep 02, 2011 1:01 am
Reply with quote

Hello,

Suggest you talk with your tape management people. . .

Just curious, if there is more data volume than will fit on 12 "tapes", why would you want this to stop? The content would basically be useless as there would be no control of where the "file" ended. . . icon_confused.gif
Back to top
View user's profile Send private message
gerald williams

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Fri Sep 02, 2011 1:41 am
Reply with quote

I have a two-step job. The 1st step is an iebgener to copy the tape files. The second step is a vendor program that calls in the copied file. The 2nd step will only allow up to 16 volumes as input. If there is more than 16 volumes the 2nd step will ABEND after running for several hours. There is a long recovery process to correct the 2nd step ABEND. I would like for the iebgener step to ABEND or issue a return code other than ‘0’ and stop the process there.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Fri Sep 02, 2011 1:53 am
Reply with quote

Hello,

Quote:
The 1st step is an iebgener to copy the tape files.
Where do therse files originate?
Quote:
The 2nd step will only allow up to 16 volumes as input.
Does anyone know why this is a "rule"? I've seen processes that read hundreds of "tapes" with no problem. . .

Does the vendor program have a record-count limit or does it somehow know/care about the actual number of volumes?

What model tape is the input? If it is 3480/3490, change the output media to "fat" tapes (maybe 3590?) or virtual tape (v-tape). Again, your tape management people will know what is available on your system.
Back to top
View user's profile Send private message
gerald williams

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Fri Sep 02, 2011 2:08 am
Reply with quote

I am coping Storage Tech 9840 tapes to IBM's virtual tapes. The vendor step (2nd step) has an internal tape limit of 16 and abends when it calls for the 17th tape. Based on the IBM manual I am coding the volume count correctly "VOL=(,,,16)". This should limit the number of volumes createdby the ibgerner step, but it is not. What am i missing? Any help is appreciated.
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Fri Sep 02, 2011 2:15 am
Reply with quote

You have two options ...
1) write a tape MOUNT/EOV exit which does nothing but count and after a certain number of volumes terminates the program.

less intrusive
2) write a program which does its own label processing considering each tape as a <single> file
and after having written a certain number of files/volumes terminates with the proper return code
most probably the easiest way is to do a bit of EXCP programming and handle everything Yourself, VOL,HDR,EOF,EOV and tape marks

You might take as a canvas
the COPYMODS program (CBT Tape File 229),
ot the COPYTAPE (CT) program (CBT Tape File 316)
or search Yourself for something that You can understand better

it should not be a big effort to extract the needed snippets
usually in these program the ugly part is the read part

in this case it would be much simpler ...
write all the header <control>records
read the sequential file, build the buffer
at eot, there is usually the space left to write the trailing <control> recods
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Fri Sep 02, 2011 2:23 am
Reply with quote

Hello,

Quote:
The vendor step (2nd step) has an internal tape limit of 16 and abends when it calls for the 17th tape.
Yes, but why?

If your "volume" contained a tera-byte instead of a few hunderd meg, would the vendor program fail? I still do not know why they would implement such a limit. How are the virtual tapes defined? Are there multiple "pools" that emulate different media-types (i.e. 3480, 3490, larger)? If larger than the 9480, and you can get hundreds of 9480 volumes on a single virtual tape (simply concatenate the input volumes rather than a separate copy for each volume), you will avoid the vol-count problem. This would not fix the problem if the vendor code has a record-count issue. . .
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Fri Sep 02, 2011 2:23 am
Reply with quote

Quote:
Based on the IBM manual I am coding the volume count correctly "VOL=(,,,16)". This should limit the number of volumes createdby the ibgerner step, but it is not. What am i missing? Any help is appreciated.

You are missing a meditation session on what You are reading icon_biggrin.gif

Quote:
Volume Count for Tape Data Sets:

Code a volume count when a new data set will reside on 6 or more volumes. If you omit the volume count or if you specify 1 through 5, the system allows up to five volumes; if you specify 6 through 20, the system allows 20 volumes; if you specify a count greater than 20, the system allows 5 plus a multiple of 15 volumes. You can override the maximum volume count in data class by using the volume-count subparameter. The


as confirmed by Your initial post
Quote:
When I code VOL=(,,,12) in my iebgener step, it creates more then 12 volumes, does not abend and issues a return code of '0'. In this case it created 20 volumes. Can anyone help me.


here is the link to te manual page
publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2B680/12.67.2?SHELF=IEA2BK91&DT=20080604022956

what happens when You try to run the job with a volume count of 5 ?
Back to top
View user's profile Send private message
gerald williams

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Fri Sep 02, 2011 2:39 am
Reply with quote

I will try a volume count of 5 and see what happens. Thanks
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Fri Sep 02, 2011 3:22 am
Reply with quote

With a volume count of 5, you will get five volumes.

Does the "copy" have to be with IEBGENER?
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Fri Sep 02, 2011 3:26 am
Reply with quote

the TS complained that when specifying a volcount of 12 he gor 20 volumes ( as per manual )
but nothing was said if it was a casual event ( data using only 20 volumes )
or if the volcount was hit
my guess goes to the casual event, he spoke of a 0 return code
so it is quicker to test with 5 volumes ( sure hit ) than hope to have data taking more than 20 volumes
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Fri Sep 02, 2011 3:56 am
Reply with quote

The zero is indeed interesting. No hint I can see from the manual so far of a non-zero, no mention of rc. Specify six to 20, you get up to 20, you want 21, tough, but what actually happens? Yes, better to test with five and see :-)

20 vs 20 is too big a co-incidence, but then there is that zero. Zero usually means OK :-)

My bold prediction is five gets five, with identical input as original 20, and gets... silly to predict that, when the data is on the way soon...
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Fri Sep 02, 2011 4:05 am
Reply with quote

837-08.

Coincidence with 20th volume, causal. Spot-on enrico.

Still a predication, of course...
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Fri Sep 02, 2011 9:29 am
Reply with quote

Hello,

IIRC the "default" max volumes is site specific. Many (most) use 5 as this is the value in the install but long ago places that typically created many volumes of tapes as output set their limit higher.

I suspect that if this copy was run with no volume count specified, it would get the s837 after filling 5 volumes (regardless of device type) so long as the max volume count was 5 . . .
Back to top
View user's profile Send private message
gerald williams

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Fri Sep 02, 2011 8:21 pm
Reply with quote

I used vol=(,,,5) and the step abended with an 837-08 when it tried to create the six volume. I guess I will allow the iebgener step to create as many volumes as it wants and then add a step to check the number of volumes created and ABEND the new step if it finds more than 16. Thanks for everyone help.
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Fri Sep 02, 2011 9:02 pm
Reply with quote

That sounds like an amount of wasted time.

Does it have to be IEBGENER copying the data? What do you do if there is too much data for the 2nd step?
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Fri Sep 02, 2011 9:07 pm
Reply with quote

Just curious...

one of the rules of IT is data consistency...
if Your data needs 18 volumes, for overall consistency You need to process all of it it means 18 volumes

what happens to Your data consistency when some application can process only 16 volumes of data ???

are You just going to throw away the residual 2
Back to top
View user's profile Send private message
gerald williams

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Fri Sep 02, 2011 10:51 pm
Reply with quote

I am coping Storage Tech 9840 tapes to IBM's virtual tapes. The MVS guys have put a limit on the amount of data each virtual tape can hold. I have to load the copied tapes into a Vendor Software that has a limit of 16 volumes per dataset. So my temporary resolution is to develop a work around for the Storage Tech tapes that cannot be copied. This work around will be in place until the MVS guys increased the amount of data the virtual tapes can hold or the Vendor increase the number of volumes they will accept per dataset. I have no control over the MVS guys or the Vendor. I am only playing the hand I was dealt. Thanks for all of your help.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Fri Sep 02, 2011 11:14 pm
Reply with quote

Hello,

Quote:
I am only playing the hand I was dealt.
Well, we all pretty much have to do this (or arrange to have the dealer changed). . .

I suspect it would be a good idea to speak with the vendor and learn if there is a "record limit" as well as a limit on the number of volumes.

You may have it under control, but i am still confused with the situation where there are 18 tapes - what to do with the last 2. And also, what if the data is logically connected (i.e. hdr / dtl). If the run stops exactly at the end of 16, there may be a separaton that corrupts the file. . .

Anyway, good luck icon_smile.gif
Back to top
View user's profile Send private message
gerald williams

New User


Joined: 09 Jun 2009
Posts: 7
Location: FLORIDA

PostPosted: Sat Sep 03, 2011 12:14 am
Reply with quote

There is no vendor "record limit" there is a vendor 16 volume limit. We are not going to drop any data or corrupt the file. We will just not import the virtual tapes into the vendor software if more than 16 are created from the Storage Tech tapes. In that case we will continue to use those Storage Tech tapes until the MVS guys increased the amount of data the virtual tapes can hold, or the Vendor increase the number of volumes they will accept per file. Thanks for your help until next time.
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 Pulling a fixed number of records fro... DB2 2
No new posts Substring number between 2 characters... DFSORT/ICETOOL 2
No new posts Generate random number from range of ... COBOL Programming 3
No new posts Increase the number of columns in the... IBM Tools 3
No new posts Cobol program with sequence number ra... COBOL Programming 5
Search our Forums:

Back to Top