On 07/17/2012 03:13 PM, Bill Ashton wrote:
I thought I knew this off the top of my head, but someone gave me a problem
that doesn't fit what I thought.
Let's say I hvae a PS file allocated as CYL(2500,500), and it is allocated
to VOLSR1 and VOLSR2. Can someone point me to the doc that explains this,
or can someone explain to me what happens when I need to take secondary
extents?
For instance, I thought this would be the case:
1. Allocate first extent (2500) on VOLSR1
2. 2nd extent (2500) on VOLSR2
3. 3rd (500) on VOLSR1
4 - ## (500) on VOLSR1 until 16 extents or the VOLSR1 has < 500C available
in 5 pieces, then continue on with VOLSR2.
## (500) on VOLSR2 until 16 extents or B37 abend if < 500C available.
I haven't done a lot with multi-volume files, so I might have this wrong,
and would welcome your straightening me out. Thanks!
For PS file, the primary is only used for the first allocation on first
volume. When allocated space is exhausted, a secondary extent is
allocated, on the current volume if enough space is available and max
extents of 16 haven't been reached on that volume; otherwise, an attempt
will be made to allocate a secondary extent on the next available
volume, if there is one. Each volume in the volume list will be used in
turn until no further secondary allocations are possible on that volume,
then the next volume will be used. (VSAM allocation is slightly
different in the the first extent allocated on each volume is by default
the primary size and the extent limit per volume is larger, but like PS
the first extent on a new volume will only be allocated when no further
secondary allocations are possible on the previous volume.
For a non-extended PS file the primary "p" must be allocated with 1 to 5
extents (or the entire allocation will fail), while a secondary "s" must
always be a single extent (and none are guaranteed), so depending on
free-space and fragmentation the max possible allocated space on the
first volume might be as small as "p", as large as "p + 15s", or
anywhere in between, and the 16 extent limit could kick in as early as
"p + 11s". When the dataset needs to extend to subsequent volumes, the
amount of space available per volume could be as low as "0" or as high
as "16s". This behavior is fairly clearly described in a manual somewhere.
For an Extended Sequential SMS dataset with Storage Constraint Relief
enabled, you again have one primary, followed by many secondary
allocations over one or more volumes; but the rules for number of
extents are relaxed to a max of 123 per volume, and as long as the max
extents per volume isn't exceeded or a max of 59 volumes isn't exceeded,
both primary and secondary space allocation can have an arbitrary number
of extents, and both primary and secondary allocation can spread to
extents on a following volume if there isn't enough free space on an
earlier volume to satisfy the request. In other words, the odds of
getting the space you need in a DASD pool with significant fragmentation
of free space is much better, and you no longer have to worry if your
primary or secondary space exceed what can be obtained on a single
volume. My recollection is that the reference manuals were too terse to
make this behavior totally clear, but the above was verified by
empirical evidence.
--
Joel C. Ewing, Bentonville, AR [email protected]
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN