OSAMxxx section of the DFSDFxxx member

The OSAMxxx section of the DFSDFxxx member specifies definitions used to dynamically add, update, or delete OSAM subpools. The section must begin with the header <SECTION=OSAMxxx>. The OSAMxxx section is valid in DB/DC, DBCTL, and batch environments.

By specifying OSAM subpool definitions in the DFSDFxxx member, you can dynamically change or delete subpools that have been specified with IOBF statements in the DFSVSMxx member.

The OSAMxxxsection in the DFSDFxxx member specifies the OSAM subpool definitions for reconfiguration. OSAMxxx is a dynamic section name. You can maintain multiple OSAMxxx sections in one DFSDFxxx member by specifying a unique suffix (xxx) for each section. Multiple sections are useful for storing commonly used definitions for future use. For example:
<SECTION=OSAMMON>
…
…
<SECTION=OSAMWED>
…
…
<SECTION=OSAMFRI>
…
…

You do not need to define multiple OSAMxxx sections in the DFSDFxxx member. You can define only one OSAMxxx section and modify the definition statements in that section before each invocation of the UPDATE POOL TYPE(DBAS) command. However, it might make sense to store commonly used definition statements that can be reused at future times.

This section is processed dynamically only by invocation of an UPDATE POOL TYPE(DBAS) command. With the UPDATE POOL TYPE(DBAS) command, you can specify which section name to use. For example:
UPDATE POOL TYPE(DBAS) SECTION(OSAMFRI)

The keywords in the OSAMxxx section can be specified multiple times to reference different subpool changes. The parameter values for each keyword are positional.

Syntax

Read syntax diagramSkip visual syntax diagramIOBF=( bufsize,04bufno,fix1,fix2,id,co)DBD=( dbdname, dsid,id)

Parameters

IOBF=()
This keyword statement is for adding, updating, or deleting an OSAM subpool. The parameters supported on the IOBF statement are positional.
bufsize
This positional parameter specifies the size of the buffers in the subpool. The parameter value can be from 512 to 32768 bytes. The UPDATE POOL TYPE(DBAS) command rounds up the size value to 512, 1024, 2048, and thereafter to multiples of 2048. You can code specifications of 1024 and above as 1K, 2K, 4K, and thereafter round them up to multiples of 2 KB to a maximum of 32 KB. This parameter is required.
bufnum
This positional parameter specifies the number of buffers in the subpool. The parameter value can be 0 or 4 - 32767. If the value specified is less than 4 and not 0, the command overrides the value with 4. If the value specified is greater than 32767, the command overrides the value with 32767. A value of 0 indicates that the subpool is to be deleted. This parameter is required.
fix1
This positional parameter specifies the buffer long-term page-fixing option. Acceptable values are Y and N. If Y is specified, all buffers and buffer prefixes associated with this subpool are long-term page-fixed during configuration of the subpool. If N is specified, no buffers associated with this subpool are long-term page-fixed during configuration of the subpool. If the parameter is omitted, the command takes as default what was previously specified for the subpool. For the creation of new subpools, if the parameter is omitted, the default is N. This parameter is optional.
fix2
This positional parameter specifies the buffer prefix long-term page-fixing option. Acceptable values are Y and N. If Y is specified, all buffer prefixes associated with this subpool are long-term page-fixed during configuration of the subpool. If N is specified, the subpool header and all buffer prefixes associated with this subpool are not long-term page-fixed during configuration of the subpool. If the N parameter is omitted, the command takes as default what was previously specified for the subpool. For the creation of new subpools, if the parameter is omitted, the default is N. This parameter is optional.
id
This positional parameter specifies the user-defined identifier that is assigned to a subpool. The ID is a 1- to 4-character alphanumeric field that is used with the DBD statement to assign a specific subpool to a given data set. If this parameter is not specified, the default subpool ID is null.
If two or more IOBF statements for the same subpool ID are specified for the same buffer size, the subsequent statements are rejected.
co
This positional parameter specifies the subpool caching option. This parameter is optional. You can specify the caching option in one of the following ways:
N
No data caching. Caching is not active for the subpool.
A
Cache all data. Write all data read from DASD and all changed data to the coupling facility.
C
Cache only changed data. Write all changed data written to DASD to the coupling facility.
If the parameter is not specified on the IOBF statement, the command takes as default what was previously specified for the subpool. For the creation of new subpools, if the parameter is omitted, the default is N.
The co option is valid only when an OSAM coupling facility structure has been allocated and a connection is active.
When increasing the number of buffers for an existing OSAM subpool, the values for bufnum, fix1, and fix2 can be changed. The others are ignored if specified.
DBD=()
This keyword statement specifies that the indicated subpool is to be assigned to the data set having a matching ID parameter as defined on the IOBF= subpool definition statement. This statement is optional. The parameters supported on the DBD statement are positional.
dbdname
This positional parameter specifies the name of the database. The DBD name can be for a non-partitioned database, a HALDB partition, or a HALDB master. For a HALDB partition, specify the name of the partition as the dbdname. If the HALDB master name is specified, all the HALDB partitions associated with the HALDB are assigned to the same subpool. This parameter is required.
dsid
This positional parameter specifies the specific data set of a data set group within a database (identified by the dbdname parameter) that requests assignment of a specific pool. The number is an IMS internally assigned value 1 - 10. This parameter is required.
For data organizations such as primary index, unique secondary index, and HISAM without dependent segments, the primary data set of the data set group is assigned data set number 1. No secondary data set of the data set group exists for these data organizations.
For data organizations such as non-unique secondary index, and HISAM with dependent segments, the primary data set of the data set group is assigned data set number 1, and the secondary data set of the data set group is assigned data set number 2.
For hierarchic direct data organization, the data set group always consists of a single data set. The data set of the first data set group is assigned data set number 1, and data set numbers for subsequent data set groups are sequentially assigned numbers 2 - 10. The maximum number of data set groups for a database is 10.
Requirement: For High Availability Large Databases (HALDB), specify the data set number as a number or an alphabetic character. The valid data set numbers defined for HALDB partition data sets are 1 through 10 or A through J, L, and X. (When HALDB Online Reorganization is used, data sets M through V and Y are automatically directed to the same shared resources pools for data sets A through J and X. The specification of M through V and Y are not valid.) The data set of the first data set group must be assigned the letter A (for both data sets A and M when HALDB Online Reorganization is used). The data set numbers for subsequent data set groups (B through J and N through V when HALDB Online Reorganization is used) must be sequentially assigned the other valid letters (B through J). Use the letter L to specify the indirect list data set. For PHIDAM databases, use the letter X (for both data sets X and Y when HALDB Online Reorganization is used) to specify the primary index data set.
id
This positional parameter specifies the user-defined identifier that is assigned to a specific subpool. The ID is a 1- to 4-character alphanumeric field that must be equal to the ID assigned to the specific subpool. This parameter is optional and defaults to a null value.
Subpools are assigned to data sets based upon buffer size. First, a subpool having buffers equal to or greater than the buffer size required for the data set is located. Then, if a specific subpool was requested, it is assigned, if its size is not less than the required size. In this case, the first subpool that meets the size criterion is assigned. The subpool might not have an ID assigned to it.

Example of the OSAMxxx section of the DFSDFxxx member

/******************************************************************/ 
/* OSAM Section                                              */ 
/******************************************************************/
<SECTION=OSAM001>
IOBF=(512,100,N,N)
IOBF=(1024,1000,N,N,OSM1,N)
IOBF=(2048,5000,Y,Y,OSM2,A)
IOBF=(4096,5000,N,Y,OSM3,N)
IOBF=(32K,32767,N,N,OSM9,N)

<SECTION=OSAM002>
IOBF=(512,100,N,N)
IOBF=(1024,1000,N,N,OSM1,N)
IOBF=(2048,5000,Y,Y,OSM2,A)
IOBF=(4096,5000,N,Y,OSM3,N)
IOBF=(32K,32767,N,N,OSM9,N)
DBD=(ABCDEFPC,01)
DBD=(XYZABC03,01,OSM1)
DBD=(XYZABC03,02,OSM1)
DBD=(JKLMNKA,A,OSM9)
DBD=(JKLMNKB,B,OSM9)
DBD=(JKLMNKJ,J,OSM9)

<SECTION=OSAM003>
IOBF=(512,100)
IOBF=(1K,1000,,N,OSM1,N)
IOBF=(2K,7832,Y,,OSM2,C)
IOBF=(4K,32767,N,Y,OSM3)
IOBF=(32K,4,,,OSM9,N)
DBD=(ABCDEFPC,01)
DBD=(XYZABC03,01,OSM1)
DBD=(ABCZZZK5,01,OSM3)
DBD=(JKLMNKA,C,OSM9)
DBD=(JKLMNKB,F,OSM9)
DBD=(JKLMNKJ,J,OSM9)
/******************************************************************/
/*                                                                */
/******************************************************************/