Version 8.1.4

Device And File Considerations

This section provides information on device and system file topics.


Supported z/OS and z/VM Device Types

The standard characteristics of the device types supported by Adabas on z/OS and z/VM are summarized in the following table. Adabas block sizes and RABNs per track are provided for each Adabas component for each device type.

Device Trks/Cyl ASSO DATA WORK PLOG/RLOG CLOG TEMP/SORT/DSIM Notes
0512 16 2044:8 4092:4 8192:2 8192:2 8192:2 8192:2  
3310 11 2044:8 4092:4 4096:4 4096:4 4096:4 8192:2  
3330 19 1510:8 3140:4 4252:3 4252:3 3156:4 3140:4  
3340 12 1255:6 2678:3 3516:2 3516:2 3516:2 3500:2  
3350 30 1564:11 3008:6 4628:4 4628:4 3024:6 3008:6  
3370 12 2044:15 3068:10 5120:6 5120:6 3072:10 7680:4  
3375 12 2016:15 4092:8 4096:8 4096:8 4096:8 8608:4  
3380 15 2004:19 4820:9 5492:8 5492:8 4820:9 7476:6 3
3390 15 2544:18 5064:10 5724:9 5724:9 5064:10 8904:6 3
8345 15 4092:10 22780:2 22920:2 22920:2 22920:2 22920:2  
8350 30 3008:6 6232:3 9442:2 9442:2 9442:2 9442:2 1
8380 15 3476:12 6356:7 9076:5 9076:5 9076:5 9076:5 1
8381 15 3476:12 9076:5 11476:4 11476:4 9076:5 9076:5 1
8385 15 4092:10 23292:2 23468:2 23468:2 23468:2 23468:2 1
8390 15 3440:14 6518:8 10706:5 10706:5 8904:6 8904:6 1
8391 15 4136:12 10796:5 13682:4 13682:4 8904:6 18452:3 1
8392 15 4092:12 12796:4 18452:3 18452:3 18452:3 18452:3 1
8393 15 4092:12 27644:2 27990:2 27990:2 27990:2 27990:2 1
9332 6 2044:10 4092:5 5120:4 5120:4 10240:2 10240:2 2
9335 6 2556:14 3580:10 5120:7 5120:7 7168:5 7168:5  
9345 15 4092:10 7164:6 11148:4 11148:4 22920:2 22920:2 3

Notes:

  1. The 8350, 838n, and 839n are pseudodevice types physically contained on a 3350, 3380, and 3390 device, respectively, but for which some or all of the standard block sizes are larger.
  2. The number of tracks per cylinder listed here is artificial.
  3. The IBM RAMAC 9394 emulates devices 3390 Model 3, 3380 Model K, or 9345 Model 2.

Top of page

ECKD Devices

Adabas supports ECKD DASD devices such as the IBM 3390 with the 3990 controller and ESCON channels.

During an open operation, ADAIOR determines which DASD device types are being used for the ASSO, DATA, WORK, SORT, and TEMP data sets. At that time, Adabas issues an informational message for each Adabas database component, where type is the component:

ADA164 ... FILE DDtype HAS BEEN OPENED IN ckd/eckd MODE - RABN SIZE rabn-size

Note:
Software AG strongly recommends that you avoid mixing ECKD and CKD extents within a file, because the file will be opened only in CKD mode. Mixing extents could degrade performance when file I/O operations are performed.

Top of page

Adding New Devices

Support for new device types that include user-defined block sizes can be implemented in ADAIOR by modifying one of the table of device-constant entries (TDCEs) reserved for this purpose.

A TDCE is X’40’ bytes long and the first free TDCE can be identified by X’0000’ in its first two bytes (TDCDT).

For all versions of Adabas prior to version 6.2, the address of the first TDCE is at offset ADAIOR+ X‘34’.

For Adabas Version 6.2, TDCE entries are in the ADAIOR CSECT TDCON: the first TDCE entry is at offset 0; the first free TDCE entry is at offset X‘400’.

For Adabas Version 7.1, TDCE entries are in the ADAIOS CSECT TDCON: the first TDCE entry is at offset 0; the first free TDCE entry is at offset X‘580’.

This information is valuable when adding an additional TDCE entry.

Information to be Zapped into the First Free ADAIOR TDCE

The information in the following tables must be zapped into the first free TDCE. The rules described in the section General Rules for Defining Device Block Sizes must be followed when changing the TDCE.

Label Offset Contents
TDCDT 00 Device type in unsigned decimal (X’3385’), must be numeric, and unique among all TDCEs.
TDCKSN 02 Constant set number: must be uniquely chosen from the values X’2B’ or X’2E’.
TDCF 03 The flag bit must be set—TDCFCKD (X’40’) for CKD devices, TDCFECKD (X’60’) for ECKD devices or TDCFECKD (X’61’) for ECKD, not user defined devices.
TDCDT1 04 (see note 1)
TDCDT2 05 (see note 1)
TDCDT3 06 (see note 1)
TDCDT4 07 (see note 1)
TDCMSBS 08 Refer to the section Maximum Sequential Block Size.
TDCTPC 0A Number of tracks per cylinder.
TDCCIPT 0C (see note 2)
TDCBPCI 0E (see note 2)
TDCABPT 10 Number of Associator blocks per track.
TDCABS 12 Associator block size.
TDCACPB 14 (see note 2)
TDCDBPT 16 Number of Data Storage blocks per track.
TDCDBS 18 Data Storage block size.
TDCDCPB 1A (see note 2)
TDCWBPT 1C Number of Work blocks per track.
TDCWBS 1E Work block size.
TDCWCPB 20 (see note 2)
TDCTSBPT 22 Number of TEMP or SORT blocks per track
TDCTSBS 24 TEMP or SORT block size.
TDCTSCPB 26 (see note 2)
TDCPBPT 28 Number of PLOG blocks per track.
TDCPBS 2A PLOG block size.
TDCPCPB 2C (see note 2)
TDCCBPT 2E Number of CLOG blocks per track.
TDCCBS 30 CLOG block size.
TDCCCPB 32 (see note 2)

Notes:

  1. One or more operating-system-dependent codes for identifying the device type: z/OS, the UCB unit type from UCBTBYT4.
  2. Not used for z/OS operating systems.

General Rules for Defining Device Block Sizes

The following general rules must be followed when defining Adabas device block sizes:

Maximum Sequential Block Size

When adding new devices, the maximum sequential block size must also be specified. The value to be set to the maximum sequential block size is TDCMSBS, located at offset X’08’ from the beginning of the ADAIOR TDCE table.

Depending on the device type, the TDCMSBS value should be as follows:

Device Type Maximum Block Size
0512 32760
3310 32760
3330 13030
3340 8368
3350 (8350) 19069
3370 32760
3375 17600
3380 (8380/81) 23476
339n 27998
8380/1/5 23476
839n 27998
9332 32760
9335 32760

Note:
On some devices, it may be most efficient to use smaller block sizes (for example, to specify 23476 for the 3380, but with two blocks per track).

Rules for Associator and Data Storage Block Sizes

The following rules apply for Associator and Data Storage block sizes:

Rule for Work Data Set Block Size

The Work block size must be greater than either (maximum compressed record length + 110) or (Associator block size + 110), whichever is greater.

Rules for TEMP/SORT Data Set Block Sizes

If ADAM direct addressing is used:

size > (maximum compressed record length + ADAM record length + 24);
size > 277 (maximum descriptor length + 24)

However, TEMP and SORT are generally read and written sequentially; therefore, the larger the TEMP/SORT block size, the better.

Block sizes for TEMP and SORT must be greater than the block sizes for Data Storage.

Rules for PLOG or SIBA Block Sizes

Note:
The use of 3480/3490 tape cartridge compression (IDRC) is not recommended for protection log files. The ADARES BACKOUT function will run at least twice as long under z/OS when processing compressed data.

The following rules apply for PLOG or SIBA block sizes:

The block size (BLKSIZE) of a sequential file is determined as follows:

if PTTF(JCL) then BLKSIZE is taken from file assignment statement or label;
if PTTMBS > 0 then BLKSIZE = PTTMBS;
if PTTMBS = 0 then
if tape then BLKSIZE = 32760;
else BLKSIZE = TDCMSBS;
else if BLKSIZE in file assignment statement or label then use it;
if PTTF(OUT) then
if QBLKSIZE > 0 then BLKSIZE = QBLKSIZE;
if tape then BLKSIZE = 32760;
else BLKSIZE = TDCMSBS;
else error.

Note:
QBLKSIZE is an ADARUN parameter.

Sequential Protection Log Block Size in I_PTT

In addition, the sequential protection log block size may have to be increased in the corresponding PTT entry in CSECT I_PTT of the load module ADAIOS.

PTT entries begin at offset 0 into CSECT I_PTT.

Each PTT entry is X’10’ bytes long and has the structure given below:

Label Offset Contents
PTTPN 00 Program number
PTTFT 01 File type
PTTN 02 DD name characters 2 - 8
PTTF 08 Flags:

OUT (X’80’) output

BSAM (X’40’) BSAM

BACK (X’20’) read backwards

JCL (X’10’) BLKSIZE/LRECL/RECFM taken from DATADEF statement or label

UNDEF (X’04’) undefined record format

VAR (X’02’) variable record format

- 09 Reserved
PTTMBSZ 0C Maximum block size

The PTT entry for the sequential protection log can be identified by X‘12F1’ in its first two bytes.

Top of page

Enhanced Backup and Restore Performance in Tape Sequential Files

Adabas exploits IBM’s large block (more than 32,760 bytes) support for sequential access methods BSAM and QSAM under z/OS version 2 release 10 and above. ADAIOR supports tape drives with a block size of up to 256K for 3590 devices and 64K for 3490/3490E devices.

This support can provide performance benefits for any utility writing to tape (for example, ADASAV). Users must ensure that they have applied the PTF for their environment that fixes IBM APAR OW55220. Without this fix, ADARES BACKOUT from a tape file written with large block support will fail.

Warning:
If you choose to write tape files with large block sizes ( for example, for database backups), these files will not be transportable to systems where support for large blocks is not available. This might include a site being used as a backup facility for disaster recovery.

Top of page