Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Files larger than 32 GB

BS2000 supports files and pubsets with a capacity of up to 4 TB and volumes of up to 2 TB. These are called “large files”, “large pubsets” and “large volumes”.

The thresholds supported by BS2000 are as follows:

  • The maximum capacity of a pubset or volume set is about 4 TB.

  • The maximum capacity of a single disk is about 2 TB.

  • The maximum file size is about 4 TB (which is the maximum size of a pubset or volume set minus SVL, F5 label and system files).

Large files and large volumes are only supported in special pubsets whose attributes must have been set up for the use of these large objects by systems support.

Expanding catalog entries

The introduction of 4-byte fields for the following data stored in the catalog entry is a key aspect in the lifting of the 32-GB limit for volume and data sizes:

  • FILE-SIZE – the storage space allocated for the file

  • HIGHEST-USED-PAGE – the amount of storage that currently contains data

  • LHP (Logical halfpage number) and PHP (physical halfpage number) of the individual extents in the extent list, that allocate “physical” halfpages of volumes to the logical halfpages


3-byte and 4-byte fields

Block numbers and block counters are visible at various BS2000 user interfaces. Although 4-byte fields have been used exclusively in all new versions of these interfaces, some old interface versions may still use 3-byte fields. If files >= 32 GB exist, you may experience compatibility problems. This may also occur in rare cases when only volumes >= 32 GB exist.


New format for the extent list

With the introduction of 4-byte fields for LHP and PHP, a new (additional) format has been introduced for the extent list.

The correlation between the maximum size of volumes and files and the field width of LHP and PHP is depicted in figure 6:

Figure 6: Correlation between file and volume sizes and the field width of LHP and PHP 

For compatibility reasons BS2000 supports both formats of the extent list as follows:

  • In general, the “old” format with 3-byte block numbers will be used.

  • Only in the case of large files or of files that can only be addressed using PHPs > X'FFFFFF' will the new format with 4-byte block numbers be used.

Extent lists therefore contain either extents with 3-byte block numbers or extents with 4-byte block numbers.

Restrictions for large files

  • A SYSEAM file cannot be >= 32 GB.

  • Files with BLKCTRL=PAMKEY:
    The logical page number is stored as a 3-byte field in the system section of the PAMKEY.

Summary of the DMS macro interfaces affected by 32-byte objects

Interface

Change

FCB

New operand for large files

FILE

New operand for large files

FSTAT

Effort involved in check and conversion if VERSION=0/1

OPEN

Takes account of semantic problems

RDTFT

Attribute of the “large file” file attribute

DIV

New operand for large files;
extended range of values for BLOCK and SPAN

FPAMACC

Extended range of values for BLOCK

FPAMSRV

New operand for large files

User programs

As stated above, it cannot be assumed that all programs have been prepared for accessing large objects, i.e. that they can address 4-byte block numbers and block counters and it must be borne in mind that the interfaces available to user applications only relate to accessing and processing files and their metadata.

Program behavior can thus be classified as follows:

Class A:

A program is able to process large files without restrictions. This behavior is defined as LARGE_FILES-capable.

Class B:

A program has not been prepared for processing large files and/or their metadata. It is, however, able to perform defined rejections of corresponding access attempts that it regards as illegal. Alternatively, there are no access files or their metadata within the program. This behavior is defined as LARGE_FILES-capable.

Class C:

A program has not been prepared for processing large files and cannot perform a defined rejection of corresponding access attempts. This behavior is defined as LARGE_FILES-incompatible.

In configurations that contain large files, programs that are compatible with or capable of LARGE_FILES are required. LARGE_FILES compatibility is to be regarded as the norm. Growth over 32 GB will initially be limited to a relatively small number of files. Only the programs that access these require LARGE_FILES capability.

For concrete examples of this classification for the relevant DMS interfaces in BS2000 and further, detailed information on this subject, refer to the manual “Files and Volumes larger than 32 GB” [19].