View previous topic :: View next topic
|
Author |
Message |
VivekKhanna
New User
Joined: 09 Feb 2009 Posts: 57 Location: India
|
|
|
|
Hi All,
I had created a GDG with following parameters:
Code: |
//GDGCREA JOB (54645dfh,sdg,dfrg),
// 'XXXXX,V09-6',
// MSGLEVEL=(1,1),CLASS=1,MSGCLASS=T,NOTIFY=&SYSUID,
// PRTY=6
//*
//CREATGDG EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE GDG (NAME(XXXXXX.DEV.TEST.GDGBASE) -
LIMIT(10) NOEMPTY SCRATCH)
/*
//*
//
|
When I had reached the limit, and the new version say G0011V00 gets created, the initial version gets scratched, without emptying the GDG.
My question is, if it is possible to retrieve information from G0001V00 version, after it gets scratched. If so, how can that be achieved. |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
Nope. Not unless a backup exists. |
|
Back to top |
|
|
arvind.m
Active User
Joined: 28 Aug 2008 Posts: 205 Location: Hyderabad
|
|
|
|
Quote: |
the initial version gets scratched, without emptying the GDG.
|
So according to you the GDG file should be empty. i request you to read the manual or get back to the person who taugh you JCL.
its generation and not version.
Quote: |
If so, how can that be achieved
|
Yes. whenever a file is scratched there is a possibility to get the file back. In order to get the file to need to talk to the storage guys. |
|
Back to top |
|
|
VivekKhanna
New User
Joined: 09 Feb 2009 Posts: 57 Location: India
|
|
|
|
@ Expat,
I have one question, in case of logical deletion (not physical deletion) of a generation, how can we retrieve the information from that generation.
@ Arvind,
As per my understanding of the subject, NOEMPTY doesn't mean emptying the GDG. And I guess I hadn't write anywhere
Quote: |
GDG should be empty. |
|
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
DASD or tape ? |
|
Back to top |
|
|
VivekKhanna
New User
Joined: 09 Feb 2009 Posts: 57 Location: India
|
|
|
|
from DASD |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
No, none at all. The chances of you actually using "Classic" DASD are remote. If you are, then maybe, a miniscule possibility does exist. |
|
Back to top |
|
|
sankaranarayanan parasura
New User
Joined: 28 Oct 2007 Posts: 10 Location: chennai
|
|
|
|
Hi,
Already there was a discussion for you query in
difference between noscratch and noempty parameter of GDG
SCRATCH
specifies that the generation data set's DSCB is to be deleted from the volume's VTOC when the generation data set is uncataloged. Direct access device space management (DADSM) removes the data set's DSCB from the VTOC, erases the data set's space on the volume, and makes the space available to other system users. The generation data set ceases to exist. For SMS-managed GDSs, SCRATCH also specifies that the NVR is to be removed from the VVDS when the data set is uncataloged.
NOSCRATCH
specifies that the generation data set's DSCB is not to be removed from the volume's VTOC when the generation data set is uncataloged. The data set's DSCB in the volume's VTOC is left intact and can be used to locate the data set. Your program, however, can process the data set by using a JCL DD statement to describe and allocate the data set
So as per you JCL it scratches the oldest generation.
If you have mentioned NOSCRATCH then there is a way to retrieve using VTOC information. |
|
Back to top |
|
|
arvind.m
Active User
Joined: 28 Aug 2008 Posts: 205 Location: Hyderabad
|
|
|
|
Quote: |
without emptying the GDG
|
For your information
Quote: |
EMPTY|NOEMPTY
specifies what action is to be taken when the maximum number of GDSs for the GDG is exceeded and another GDS is to be cataloged. The disposition of the data set's DSCB in the volume's VTOC is determined with the SCRATCH|NOSCRATCH parameter. For SMS-managed data sets, the data set's NVR is also determined with the SCRATCH|NOSCRATCH parameter. If NOSCRATCH is specified for an SMS-managed GDS, the GDS is uncataloged from its GDG base and can be recataloged outside its GDG base as an SMS non-VSAM entry with the roll-off status.
EMPTY
specifies that all the generation data sets are to be uncataloged
when the maximum is exceeded (each data set's non-VSAM entry is automatically deleted from the catalog).
Abbreviation: EMP
NOEMPTY
specifies that only the oldest generation data set is to be
uncataloged when the maximum is reached.
Abbreviation: NEMP
|
|
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
Quote: |
If you have mentioned NOSCRATCH then there is a way to retrieve using VTOC information. |
And it is those dumb people using NOSCRATCH on DASD GDG's that really get up the nose of the storage managment team. |
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
Then again, what shops honestly allows someone from outside of the storage management team to define a GDG base? |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
superk wrote: |
Then again, what shops honestly allows someone from outside of the storage management team to define a GDG base? |
Unfortunately quite a few. |
|
Back to top |
|
|
sankaranarayanan parasura
New User
Joined: 28 Oct 2007 Posts: 10 Location: chennai
|
|
|
|
Code: |
//GDGCREA JOB (54645dfh,sdg,dfrg),
// 'XXXXX,V09-6',
// MSGLEVEL=(1,1),CLASS=1,MSGCLASS=T,NOTIFY=&SYSUID,
// PRTY=6
//*
//CREATGDG EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE GDG (NAME(XXXXXX.DEV.TEST.GDGBASE) -
LIMIT(10) NOEMPTY SCRATCH)
/*
//*
// |
Hi Expat,
The above code means to have 10 latest generations(when it is reached that quota) and scratching the oldest one.
Then why to think of retrieving the scratched one. His question is totally wrong to ask to retrieve the old scratched one.
NOEMPTY is for not emptying all the generations is specified and I think he shouldn't misunderstand with that.
Also as you said it is not wise to have NOSCRATCH parameter. |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
Yes, when the GDS is in ROLLED OFF status it is not so easily managed by the SMS ACS routines. It would be very difficult, and dangerous, to give the GDS a global retention period because to know the LIMIT and cycle creation period of every GDS would be impossible.
To get around it I wrote a REXX that found ROLLED OFF datasets and killed them. It took me a couple of days to do that, time which would have been better spent doing real work, but it automated an otherwise manual process and was worth it in the end. But either way, it was two days work that should not have needed to be undertaken. |
|
Back to top |
|
|
Terry Heinze
JCL Moderator
Joined: 14 Jul 2008 Posts: 1248 Location: Richfield, MN, USA
|
|
|
|
expat wrote: |
superk wrote: |
Then again, what shops honestly allows someone from outside of the storage management team to define a GDG base? |
Unfortunately quite a few. |
At most shops I've been at, developers can define bases in test, but only production support defines them in production. |
|
Back to top |
|
|
|