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

Can space allocated for a PDS be increased?


IBM Mainframe Forums -> JCL & VSAM
Post new topic   This topic is locked: you cannot edit posts or make replies.
View previous topic :: View next topic  
Author Message
prafull

New User


Joined: 08 Dec 2006
Posts: 48

PostPosted: Sat May 26, 2007 2:09 pm
Reply with quote

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
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Sat May 26, 2007 2:20 pm
Reply with quote

Hello,

This has me confused
Quote:
(I understand being Sequential Dataset;
icon_confused.gif

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
View user's profile Send private message
prafull

New User


Joined: 08 Dec 2006
Posts: 48

PostPosted: Sat May 26, 2007 2:42 pm
Reply with quote

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
View user's profile Send private message
expat

Global Moderator


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

PostPosted: Sat May 26, 2007 3:57 pm
Reply with quote

Directory blocks - NO

You might be able to wing it with adding extra space, but definitely not directory blocks.
Back to top
View user's profile Send private message
anilboke

New User


Joined: 08 May 2006
Posts: 3

PostPosted: Mon May 28, 2007 12:17 pm
Reply with quote

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
View user's profile Send private message
expat

Global Moderator


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

PostPosted: Mon May 28, 2007 12:24 pm
Reply with quote

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
View user's profile Send private message
Anuj Dhawan

Superior Member


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

PostPosted: Mon May 28, 2007 5:48 pm
Reply with quote

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
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Mon May 28, 2007 9:41 pm
Reply with quote

Hello,

And this will work only if changeman is installed. . .
Back to top
View user's profile Send private message
anilboke

New User


Joined: 08 May 2006
Posts: 3

PostPosted: Tue May 29, 2007 5:13 pm
Reply with quote

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
View user's profile Send private message
Anuj Dhawan

Superior Member


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

PostPosted: Tue May 29, 2007 7:43 pm
Reply with quote

dick scherrer wrote:
Hello,

And this will work only if changeman is installed. . .


Yeah, installation specific.
Back to top
View user's profile Send private message
prafull

New User


Joined: 08 Dec 2006
Posts: 48

PostPosted: Wed May 30, 2007 9:15 am
Reply with quote

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
View user's profile Send private message
GlobalGyan

New User


Joined: 31 Jan 2006
Posts: 28

PostPosted: Wed May 30, 2007 9:56 am
Reply with quote

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
View user's profile Send private message
banand

New User


Joined: 05 Jun 2007
Posts: 28
Location: Mumbai

PostPosted: Wed Jun 13, 2007 5:06 pm
Reply with quote

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
View user's profile Send private message
Anuj Dhawan

Superior Member


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

PostPosted: Wed Jun 13, 2007 6:17 pm
Reply with quote

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
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Wed Jun 13, 2007 6:19 pm
Reply with quote

Hello,

Easytrieve is a CA (Computer Associates) product,
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


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

PostPosted: Wed Jun 13, 2007 6:47 pm
Reply with quote

Thanks Dick. These third parties tools make enough confusion for youngster like me...huh..! icon_neutral.gif
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: Wed Jun 13, 2007 11:41 pm
Reply with quote

You're welcome icon_smile.gif

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 icon_smile.gif
Back to top
View user's profile Send private message
nabarun

New User


Joined: 27 Apr 2005
Posts: 13
Location: india

PostPosted: Tue Jun 26, 2007 10:51 am
Reply with quote

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
View user's profile Send private message
p.d.prasad

New User


Joined: 20 Jun 2006
Posts: 14
Location: hyderabad

PostPosted: Tue Jun 26, 2007 4:38 pm
Reply with quote

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
View user's profile Send private message
tommypetersen

New User


Joined: 22 Nov 2006
Posts: 2
Location: USA

PostPosted: Fri Dec 05, 2008 9:47 pm
Reply with quote

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
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   This topic is locked: you cannot edit posts or make replies. View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Replace each space in cobol string wi... COBOL Programming 2
No new posts Allocated cylinders of a dataset DB2 12
No new posts Merge 2 lines based on Space from a S... DFSORT/ICETOOL 5
No new posts Allocated space calculation from DCOL... PL/I & Assembler 3
No new posts split a name based on space in ASM PL/I & Assembler 9
Search our Forums:

Back to Top