View previous topic :: View next topic
|
Author |
Message |
prafull
New User
Joined: 08 Dec 2006 Posts: 48
|
|
|
|
Can space allocated for a PDS be increased?
Or copy-delete and redefine is the only option?
Tried to search in the forums but cudn't find.
Pls provide the link if discussed earlier.
(I understand being Sequential Dataset;it might not be possible but not sure pls help.) |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
This has me confused
Quote: |
(I understand being Sequential Dataset; |
A pds is not a sequential dataset - individual members may be read sequentially, but the dataset is not PS.
To do what you want, allocate a new pds called pds.name.new using the attributes of the original dataset with more directory blocks and more space. Copy all of the members to the new pds. Rename the old pds to pds.name.old. Rename the newly created pds to pds.name.
This will give you a larger pds and you'll have the original just in case you need it.
Do you need a larger pds or does the existing pds just need to be compressed? |
|
Back to top |
|
|
prafull
New User
Joined: 08 Dec 2006 Posts: 48
|
|
|
|
Thanks Dick.
that quote was really confusing.Pls ignore.
But
Quote: |
To do what you want, allocate a new pds called pds.name.new using the attributes of the original dataset with more directory blocks and more space. Copy all of the members to the new pds. Rename the old pds to pds.name.old. Rename the newly created pds to pds.name. |
I had a thought on this as I said
Quote: |
Or copy-delete and redefine is the only option? |
The corrected Q would be; can we increase the directory blocks of already present PDS without deleting and reallocating? |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
Directory blocks - NO
You might be able to wing it with adding extra space, but definitely not directory blocks. |
|
Back to top |
|
|
anilboke
New User
Joined: 08 May 2006 Posts: 3
|
|
|
|
Open the PDS
Enter the command EXPDIR in the command line and press enter.
It will increase directory blocks by 1. So you can repeath this command to increase as much as u want.
Thanks
Anil |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8796 Location: Welsh Wales
|
|
|
|
anilboke
I believe that the command that you are suggesting is part of a CA product which must be paid for and installed.
Not every shop will have this product. |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
Hi,
In my shop, CHGMAN environment follwoing command(ALTERDIR) works:
After log-in to ISPF, enter START/ EZY , you'll be prompt to a new screen enter the following option there & press enter
Code: |
Function ===> ALTERDIR
DSN/Variable # ===> 'HLQ.TEMP.PDS'
|
You'll get another screen:
Code: |
Dataset Name: HLQ.TEMP.PDS
Volume: SVZAAF
Directory Blocks Allocated: ===> 20
Directory Blocks Used: ===> 1
Enter Directory Blocks required: ===> 1
Instructions:
Press ENTER to confirm the ALTERDIR request.
Press END to cancel the ALTERDIR request. |
Enter Directory Blocks required & it'll serve the purpose.
May be the above command is site specific, still you can give a try.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
A small background about ALTERDIR:
The ALTERDIR function alters the number of directory blocks allocated in the selected partitioned dataset without requiring the dataset to be deleted and reallocated. The new number of directory blocks is specified on a subsequent panel.
This function first relocates any members that would be overwritten during this process, along with any alias entries for these members, to an unused area of the dataset. The size of the directory is then altered to the requested number of blocks. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
And this will work only if changeman is installed. . . |
|
Back to top |
|
|
anilboke
New User
Joined: 08 May 2006 Posts: 3
|
|
|
|
Expat,
EXPDIR works in our shop. We have CA product intalled. I am not sure whether it works for all shops or not.
Thanks
Anil |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
dick scherrer wrote: |
Hello,
And this will work only if changeman is installed. . . |
Yeah, installation specific. |
|
Back to top |
|
|
prafull
New User
Joined: 08 Dec 2006 Posts: 48
|
|
|
|
Thanks all.... I have changeman installed in my shop but am not able to find the said option(start/ezy)...can you please explore more... |
|
Back to top |
|
|
GlobalGyan
New User
Joined: 31 Jan 2006 Posts: 28
|
|
|
|
what does changeman have to do increasing the dir blocks?
I think it should be another product that is driving "ALTERDIR"
-GG |
|
Back to top |
|
|
banand
New User
Joined: 05 Jun 2007 Posts: 28 Location: Mumbai
|
|
|
|
Hi,
ALTERDIR will work if EZYTRIEVE is installed.
1) Type EZY in the START prompt and press Enter.
Then EZYTRIEVE panel will display,
2 ) type ALTERDIR in the FUNCTION
Then Give your PDS name in the DSN=
Then type 1 in the DSN/variable # =
And Enter
3) It will navigate to another SCREEN
There you can increase your PDS Directory block
Thanks, |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
banand wrote: |
ALTERDIR will work if EZYTRIEVE is installed. |
Hi,
I thought EZYTRIEVE comes with MVS installation. is it a third party tool? |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Easytrieve is a CA (Computer Associates) product, |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
Thanks Dick. These third parties tools make enough confusion for youngster like me...huh..! |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
You're welcome
Something else that happens is that when one spends the from start of their career to having several years experience at one location, things there are often thought of being that way everywhere. You will see in these forums lots of things that are posted are "the way it is done" at that person's location.
Many sites have their own sets of customized/minimal documentation that include pieces from several products and the knowledge of which product is supplied by which vendor is not part of it. Message codes and info from the vendor is shown on panels and reports but is not something the analyst/user pays attention to (unless they have a problem).
We're here when there are questions/confusion |
|
Back to top |
|
|
nabarun
New User
Joined: 27 Apr 2005 Posts: 13 Location: india
|
|
|
|
What happens when a data set runs out of space?
As mentioned earlier, when you allocate a data set, you reserve a certain amount of space in units of blocks, tracks, or cylinders on a storage disk. If you use up that space, the system displays the message SYSTEM ABEND '0D37,' or possibly B37 or E37.
We haven't discussed abnormal ends or abends in this section, but this problem is something you will have to deal with if it occurs. If you are in an edit session, you will not be able to exit the session until you resolve the problem.
Among the things you can do to resolve a space shortage abend are:
If the data set is a PDS, you can compress it by doing the following:
Split (PF 2) the screen and select UTILITIES (option 3).
Select LIBRARIES (option 1) on the Utility Selection Menu.
Specify the name of the data set and enter C on the option line.
When the data set is compressed, you should see the message COMPRESS SUCCESSFUL.
You can then swap (PF 9) to the edit session and save the new material.
Allocate a larger data set and copy into it by doing the following:
Split (PF 2) the screen and select UTILITIES (option 3), then DATASET (option 2) from the other side of the split.
Specify the name of the data set that received the abend to display its characteristics.
Allocate another data set with more space.
Select MOVE/COPY (option 3) on the Utility Selection Menu to copy members from the old data set to the new larger data set.
Browse (option 1) the new data set to make sure everything was copied correctly.
Swap (PF 9) back to the abending edit session, enter CC on the top line of input and the bottom line of input, enter CREATE on the command line, and press the Enter key.
Enter the new, larger data set name and a member name to receive the copied information.
You again see the abending edit session. Enter CAN on the command line. Press the RETURN key (PF 4) key to exit the edit session.
Select DATASET (option 2) from the Utility Selection Menu to delete the old data set.
Rename the new data set to the old name.
Cancel the new material entered in the edit session by entering CAN on the command line. You should then be able to exit without abending; however, all information that was not previously saved is lost.
is there any way to get rid of these space problem???
yessssssss. this is by use of PDSE
What is a PDSE?
A PDSE is a partitioned data set extended. It consists of a directory and zero or more members, just like a PDS. It can be created with JCL, TSO/E, and ISPF, just like a PDS, and can be processed with the same access methods. PDSE data sets are stored only on DASD, not on tape.
The directory can expand automatically as needed, up to the addressing limit of 522,236 members. It also has an index, which provides a fast search for member names. Space from deleted or moved members is automatically reused for new members, so you do not have to compress a PDSE to remove wasted space. Each member of a PDSE can have up to 15,728,639 records. A PDSE can have a maximum of 123 extents, but it cannot extend beyond one volume. When a directory of a PDSE is in use, it is kept in processor storage for fast access.
PDSE data sets can be used in place of nearly all PDS data sets that are used to store data. But the PDSE format is not intended as a PDS replacement. When a PDSE is used to store load modules, it stores them in structures called program objects .
PDS versus PDSE
In many ways, a PDSE is similar to a PDS. Each member name can be eight bytes long. For accessing a PDS directory or member, most PDSE interfaces are indistinguishable from PDS interfaces. PDS and PDSE data sets are processed using the same access methods (BSAM, QSAM, BPAM). And, in case you were wondering, within a given PDS or PDSE, the members must use the same access method.
However, PDSE data sets have a different internal format, which gives them increased usability. You can use a PDSE in place of a PDS to store data or programs. In a PDS, you store programs as load modules. In a PDSE, you store programs as program objects. If you want to store a load module in a PDSE, you must first convert it into a program object (using the IEBCOPY utility).
PDSE data sets have several features that can improve user productivity and system performance. The main advantage of using a PDSE over a PDS is that a PDSE automatically reuses space within the data set without the need for anyone to periodically run a utility to reorganize it.
Also, the size of a PDS directory is fixed regardless of the number of members in it, while the size of a PDSE directory is flexible and expands to fit the members stored in it.
Further, the system reclaims space automatically whenever a member is deleted or replaced, and returns it to the pool of space available for allocation to other members of the same PDSE. The space can be reused without having to do an IEBCOPY compress.
Other advantages of PDSE data sets follow:
PDSE members can be shared. This makes it easier to maintain the integrity of the PDSE when modifying separate members of the PDSE at the same time.
Reduced directory search time. The PDSE directory, which is indexed, is searched using that index. The PDS directory, which is organized alphabetically, is searched sequentially. The system might cache in storage directories of frequently used PDSE data sets.
Creation of multiple members at the same time. For example, you can open two DCBs to the same PDSE and write two members at the same time.
PDSE data sets contain up to 123 extents. An extent is a continuous area of space on a DASD storage volume, occupied by or reserved for a specific data set.
When written to DASD, logical records are extracted from the user's blocks and reblocked. When read, records in a PDSE are reblocked into the block size specified in the DCB. The block size used for the reblocking can differ from the original block size.
how to allocate PDSE???
Same way you allocate a PDS. The DSORG is PO-E=LIBRARY , and you don't need to specify directory blocks
so from next time do not create a pds create a pdse.
thanks & regards
Nabarun |
|
Back to top |
|
|
p.d.prasad
New User
Joined: 20 Jun 2006 Posts: 14 Location: hyderabad
|
|
|
|
Hi
You mean to say the can we increase size of pds ( number of members can increased or not?)
yes we can increase members by using ALTER command through JCL program |
|
Back to top |
|
|
tommypetersen
New User
Joined: 22 Nov 2006 Posts: 2 Location: USA
|
|
|
|
You can add additional directory blocks and change secondary extents in regular JCL:
SPACE=(,(,[secalloc][,dirblock]))
where
secalloc is the secondary allocation
dirblock is the number of needed directory blocks
If you have used all 16 extents your are out of luck.
But if you had the PDS with 0 secondary extents you can add secondary extents and you can add directory blocks. You may not see the changes until you actually need the new extent or more directory blocks.
One caveat is that if the PDS is used by an on-line region such as CICS or IDMS the on-line region may not be able to see the new extents. |
|
Back to top |
|
|
|