Preface
INFOPAK MVS provides compression for sequential and partitioned files in an MVS operating environment. Compression applies to data files with record formats F, FB, V, VB, and U processed by QSAM, BSAM or BPAM access methods. Also, Load Module Libraries may NOT be compressed.
The INFOPAK MVS compression is completely transparent to all application programs.
The INFOPAK MVS compression supports concatenation of compressed and uncompressed datasets.
This document is intended primarily for database administrators and system administrators who want to:
-
evaluate the space savings they can expect from the use of INFOPAK
-
use the INFOPAK compression system
Interactive Compression Simulation
Execution of TESTPAK under TSO
The CLIST PAKSTAR should be in a library in the LOGON procedure (see installation manual: HP106) This CLIST, PAKSTAR, invokes the interactive part of INFOPAK.
Invoking PAKSTAR, displays the following screen:
Primary menu
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- I N F O P A K \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Select one of the following options:
0 DEFAULTS
1 TESTPAK VSAM/MVS - Simulation of the compression
2 TESTPAK DB2 - Simulation of the compression NOT AVAILABLE
3 INFOPAK VSAM/MVS - Managing the reference cluster
P CONFIDENTIAL CODE
T TUTORIAL
X FIN
Press END or RETURN to terminate
note
NOT AVAILABLE appears for products that are not installed or that are not found in the specified libraries.
Defaults, (Option 0)
This option is used to list and modify the default parameters for each user.
TESTPAK uses two variables:
-
the JOB card for batch execution,
-
the default of the maximum number of records or blocks by file that TESTPAK read to evaluate a compression.
The following panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- DEFAULT VALUES - INFOPAK \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Enter below the JOB card(s) for batch execution
===\> //JOB1 JOB \'TESTPAK\',MSGCLASS=S,NOTIFY=INFO0
===\> //*
===\> //*
===\> //*
Specific parameter for TESTPAK VSAM/MVS:
Maximum number of record/block to be read ===\> 10000
TESTPAK VSAM/MVS, (Option 1)
The following panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- TESTPAK VSAM/MVS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Enter below a dsname to select the file(s) to be tested
This dsname may be:
* a generic dsname when selecting cataloged files
* a full dsname to select a non-cataloged file
FILE(S) ===\> USER.TEST*
VOLUME ===\> (blank for cataloged file(s))
UNIT ===\> (blank for cataloged file(s))
This panel is used to select files for a compression simulation.
Description of input fields
The fields are described below:
{wrapper="1" role="DL"}
-
File(s)
specifies the search criterion. A generic name may only be used for cataloged files.
The generic character '*' may only be used at the end of the name.
-
Volume
Name of the volume that contains the non cataloged file to be tested.
-
Unit
Unit that contains the non cataloged file to be tested. Default SYSALLDA.
note
It is assumed that the ARCHIVE file exists. The creation of this file is described in the installation manual of INFOPAK.
When using file selection, a file list will be created as described below:
Cataloged files
The list of selected files contains:
-
All cataloged files that match the selection criterion and are supported by INFOPAK (KSDS, ESDS, PDS and sequential files).
If compression statistics exist for these files, they also will be displayed.
The volume field name for these files is blank.
-
Uncataloged files whose compression statistics have been stored in the archive file and that match the selection criterion.
These files are displayed with the corresponding volume names.
-
Erased or uncataloged files that match the selection criterion and still exist in the ARCHIVE file.
The value of the volume field is '??????'.
Uncataloged file
The selection criterion of an uncataloged file must be the full dataset name as well as its volume name. The unit type is optional, the default value is SYSALLDA.
The list displayed contains only one entry.
If compression statistics exist for this file, they are displayed. The volume name is always displayed.
Selection panel
After validation of the selection, the following panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- TESTPAK VSAM/MVS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\> SCROLL ===\> CSR
FILE(S) : USER1.TEST*
Maximum number of records or blocs to be read ===\> 10000
Execution type , batch (B) or interactive (I) ===\> I
S: S select, ? information, E erase
S FILE NAME CP CS CP-LZ TYPE VOLUME
. USER1.TEST.CNTL 69.05 64.36 55.23 PDS
. USER1.TEST.ESDS ESDS
. USER1.TEST.KSDS 40.43 31.47 35.56 KSDS
. USER1.TEST.SEQ1 74.50 64.30 70.12 SEQ
. USER1.TEST.SEQ2 SEQ
. USER1.TEST.SEQ3 69.10 62.50 25.34 SEQ ??????
. USER1.TEST.SEQ4 70.84 64.25 65.98 SEQ TSO010
******************************** BOTTOM OF DATA *******************************
Description of input fields
The input fields are described below:
{wrapper="1" role="DL"}
-
Number of records
Indicates the maximum number of records or blocks to be read for each selected file. This value is used in interactive and batch mode. A null value means that all records of the files are to be read. The default value is defined in the user profile, it can be modified with option 0 (default).
Execution type :
Indicates the execution mode of TESTPAK VSAM/MVS.
{wrapper="1" role="DL"}
-
(I)nteractive
The simulation is processed for each selected file.
A message shows the file name in process and the statistics are automatically updated.
"I" is the default value.
-
(B)atch
The JCL to execute all selected files will be displayed. Statistics are available at the end of the compression job and it is necessary to reselect the files in order to obtain the statistics (go back to the selection menu).
If the archive file cannot be accessed (no archive file card) the statistics for each file will be put into the SYSOUT file of TESTPAK.
The recommended method to use is batch mode if simulations are done for files containing a large number of records/blocks.
-
Selection code S
Type 'S' to select a file to be processed. No selection is allowed if the volume field name is equal to '??????'.
The code '?' displays more information about the file compression.
The code 'E' will erase statistics in the archive file.
-
If the file is an uncataloged file (volume field equal to '??????' or volume name) then the line on the screen disappears and the corresponding record will be deleted from the archive file.
-
If the file is a cataloged file (volume field is blank), the record will be deleted from the archive file, the statistics will be erased on the screen, but the file is still displayed.
Output fields
The output fields are described below:
{wrapper="1" role="DL"}
-
File(s)
Reminder of the selection criterion
-
CP
Estimation of compression rate with the CP routine
-
CS
Estimation of compression rate with the CS routine
-
CP-LZ
Estimation of compression rate with the Lempel-Ziv (hardware) routine
-
Type
File type: KSDS, ESDS, PDS, SEQ or MIGR for migrated files.
note
:
A migrated file is assumed to be a sequential file.
-
Volume
volume name/number for an uncataloged file.
This field is blank for cataloged files.
If any entries exist in the archive file, that represent deleted or uncataloged files, the volume field is set to '??????'.
Selection validation
The execution of command "?" or "E" is immediate when pressing ENTER, PF7 or PF8. PF3 cancels this operation. The validation of the command 'S' is different as shown below:
-
In interactive mode.
The execution is immediate for all selected files when pressing: ENTER, PF7 or PF8.
-
In batch mode.
After the selection, it is necessary to press PF3 to obtain the execution JCL. The user can submit this JCL, modify it or cancel the operation by pressing PF3.
The archive file
The archive rules are described below:
-
The compression simulation data is stored in a VSAM cluster, the ARCHIVE file (see installation manual)
-
The archive file name is defined in the INFOTEL PARMLIB member.
-
If the archive file is not available, statistics are not stored.
-
New statistics replace old statistics if they exist.
Additional information panel (Selection code ?)
The command (?) displays more information about a file. One of the following panels will be displayed:
For a VSAM cluster selection:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- TESTPAK VSAM/MVS - INFORMATION \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
CLUSTER NAME : USER1.TEST.KSDS
VOLUME :
CLUSTER TYPE : KSDS
Minimum record length : 196
Maximum record length : 196
Number of records read : 62
Number of bytes before compression : 12 152
Comp. Rate NB of bytes after comp. CPU Comp. CPU Decomp.
CP 40.26 7 260 114 72
CS 31.28 8 351 57 24
CP-LZ 35.56 7 830 234 152
For a sequential file:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- TESTPAK VSAM/MVS - INFORMATION \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
FILE NAME : USER1.TEST.SEQ1
VOLUME :
FILE TYPE : SEQ
Minimum bloc length : 3080
Maximum bloc length : 3080
Number of blocs read : 100
Number of bytes before compression : 308 000
Comp. Rate NB of bytes after comp. Optimum Blksize CPU Comp. CPU Decomp.
CP 74.50 78 540 30800 1195 667
CS 64.30 109 956 29876 421 125
CP-LZ 70.12 92 030 30300 2165 1003
TESTVPAK
TESTVPAK is a batch program which allows you to simulate the effects of the INFOPAK compression on your own sequential, partitioned, VSAM KSDS and ESDS files.
TESTVPAK does a partial or total read of one or several files and calls the three modes of compression (maximum compression, maximum performance and hardware compression) for each of the physical records read. TESTVPAK provides a statistical report showing the space gain that one will achieve on the selected files as a result of using the INFOPAK product.
note
If the hardware instruction is not present, TESTPAK will simulate the instruction.
note
TESTPAK can also be used to create custom external dictionaries, see HP121, Using external dictionaries.
TESTVPAK provides actual results which can be used to redefine the files that will be subject to compression.
The installation procedure places the TESTVPAK module in the library with the ddname MVSLOAD (see the "PRODUCT INSTALLATION JCL" delivered with the tape).
TESTVPAK Operation and Environment
The TESTVPAK program, which can be executed in pure batch mode, may be run with the following JCL:
// jobname JOB\...\...\...\...
// STEP1 EXEC PGM=TESTVPAK,PARM=\'CPU\'
// STEPLIB DD DSN=library containing TESTVPAK
// PRINT DD SYSOUT=*
// DDxx DD DSN=name of the first file to scan
// etc. etc.
// DDyy DD DSN=name of the last file to scan
// SYSIN DD *
Command cards for each file
etc\...
/*
note
PARM='CPU' provides information about CPU consumption of the compression modules.
The format of the SYSIN DD Command cards for each file is described below:
{wrapper="1" role="DL"}
-
OPERAND 1
ddname of the file to be scanned
-
OPERAND 2
(optional) number of records (or blocks) in this file to read for the compression report. If this parameter remains blank, TESTVPAK will read the entire file. For large files, it is recommended to limit the number of records in order to avoid excessive run times.
note
OPERAND 1 and OPERAND 2 must be separated by at least one space.
example
Example :
// jobname JOB \...\...\...\...\....
// STEP1 EXEC PGM=TESTVPAK,PARM=\'CPU\'
// STEPLIB DD DSN=library containing TESTVPAK
// PRINT DD SYSOUT=*,DCB=(LRECL=133,BLKSIZE=1330,
RECFM=FBA)
// DD1 DD DSN=FILE1.SEQ1
// DD2 DD DSN=FILE2.PDS
// DD3 DD DSN=FILE3.SEQ2
// DD4 DD DSN=FILE4.ESDS
// DD5 DD DSN=FILE5.KSDS
// SYSIN DD *
DD1 100
DD2
DD3
DD4
DD5 100
/*
TESTPAK will operate on these three files:
-
on the first one, called FILE1.SEQ1, INFOPAK will read 100 physical records (blocks),
-
INFOPAK will read all blocks of FILE2.PDS and FILE3.SEQ2.
-
INFOPAK will read all records of FILE4.ESDS and 100 records of FILE5.ESDS.
TESTVPAK Results
TESTVPAK provides, for the file or files selected and for the number of records requested, a report showing the space gains achieved. A representation of the TESTVPAK Report and the description of each report element is shown below:
************************************************************************************************************************************
* I N F O P A K V S A M / I N F O P A K M V S 04/05/93 16 H 47 PAGE : 1 *
************************************************************************************************************************************
* LIST OF CONTROL CARDS IN SYSIN *
************************************************************************************************************************************
DD1 100
DD2
DD3
DD4
DD5 100
************************************************************************************************************************************
* INFOPAK PROPERTY OF INFOTEL *
************************************************************************************************************************************
************************************************************************************************************************************
* I N F O P A K V S A M / I N F O P A K M V S 04/05/93 16 H 47 PAGE : 1 *
************************************************************************************************************************************
* FILE COMPRESSION STATISTICS *
************************************************************************************************************************************
! DDNAME ! RECORD LG ! NUMBER OF ! NB OF BYTES IN ! COMPR. ! NB OF BYTES ! COMPR. ! RECOMMENDED! CPU/OCC(MICS) !
! ! MIN / MAX !OCCURRENCES ! ! MODULE ! AFTER COMPR. ! GAINS ! BLKSIZE ! COMP ! DECOMP !
!+DD1 ! 3080 / 3080 ! 100 ! 308 000 ! CP ! 78 540 ! 74,50 % ! 30800 ! 1195 ! 667 !
! ! ! ! ! CS ! 109 956 ! 64,30 % ! 29876 ! 421 ! 125 !
! ! ! ! ! CP-LZ ! 115 316 ! 62,56 % ! 27800 ! 2565 ! 1267 !
!+DD2 ! 1520 / 3120 ! 16 ! 47 200 ! CP ! 14 480 ! 69,33 % ! 30560 ! 1531 ! 886 !
! ! ! ! ! CS ! 18 800 ! 60,17 % ! 29920 ! 483 ! 162 !
! ! ! ! ! CP-LZ ! 16 874 ! 64,25 % ! 30240 ! 3029 ! 1922 !
!+DD3 ! 400 / 4000 ! 65 ! 203 280 ! CP ! 64 080 ! 68,48 % ! 29760 ! 1795 ! 1035 !
! ! ! ! ! CS ! 91 520 ! 54,98 % ! 26160 ! 603 ! 215 !
! ! ! ! ! CP-LZ ! 80 906 ! 60,20 % ! 27600 ! 3402 ! 2212 !
! DD4 ! 196 / 196 ! 62 ! 12 152 ! CP ! 7 260 ! 40,26 % ! ! 114 ! 72 !
! ! ! ! ! CS ! 8 351 ! 31,28 % ! ! 57 ! 24 !
! ! ! ! ! CP-LZ ! 8 613 ! 29,12 % ! ! 250 ! 163 !
!*DD5 ! 4089 / 4089 ! 100 ! 408 900 ! CP ! 1 228 ! 99,70 % ! ! 214 ! 41 !
! ! ! ! ! CS ! 337 506 ! 17,46 % ! ! 318 ! 37 !
! ! ! ! ! CP-LZ ! 175 418 ! 57,10 % ! ! 447 ! 102 !
! ! ! ! ! ! ! ! ! ! !
!**** TOTAL **** ! 343 ! 979 532 ! CP ! 165 588 ! 83,10 % ! ! ! !
! ! ! ! ! CS ! 566 171 ! 42,20 % ! ! ! !
! ! ! ! ! CP-LZ ! 397 127 ! 59,46 % ! ! ! !
*NOTE: ABOVE MEASUREMENTS TAKE INTO ACCOUNT THE FACT THAT PRIMARY AND ALTERNATE KEYS MAY NOT BE
MOVED COMPRESSED OR ALTERED.
&ec_1; &ec_2; &ec_3; &ec_4; &ec_5; &ec_6; &ec_7; &ec_8; &ec_9;
************************************************************************************************************************************
* INFOPAK SOFTWARE PROPERTY OF INFOTEL *
************************************************************************************************************************************
note
The fact that primary and alternate keys are not compressed is accounted for in the DASD savings calculation. The character "*" appearing in front of the DDNAME indicates an ESDS file. The character "+" appearing in front of the DDNAME indicates a sequential file.
Each numbered square contains the information below:
-
DDname of the file
-
Minimum and maximum record lengths encountered
-
Number of physical records read.
-
Number of bytes accumulated before compression
-
Compression Code: high performance (CS), high compression (CP) or Lempel-Ziv hardware compression (CP-LZ).
-
Number of bytes accumulated after compression: this is the actual result of INFOPAK on each file.
-
Compression gains: it is the percentage obtained from the equation: [7]=([4]-[6])/[4]
-
Recommended BLKSIZE. This value may not look like a good BLKSIZE using conventional wisdom because it is specified in terms of uncompressed data. The recommended BLKSIZE should be used to maximize the benefit of compression on your DASD and TAPE datasets.
-
CPU consumption: time in microseconds for compressing and decompressing a block (MVS) or a record(VSAM).
This cpu time for hardware compression(CP-LZ) uses the following logic.
-
The CPU TIME is for actual use of the hardware if running under MVS 4.3 or later and is for software emulation if you are using a prior release of MVS, see manual HP120.
-
Starting with MVS 4.3, the CVT contains a bit which designates the availability, or absence, of the hardware compression microcode.
-
If hardware compression is requested, INFOPAK references this bit in the CVT and will automatically use the compression microcode if it is available, and the cpu time will reflect this.
-
If you are not using version 4.3 or later of MVS and you implement hardware compression then INFOPAK, believing that the hardware is not actually present, will use software emulation of the hardware microcode and the cpu time will reflect this.
-
If the hardware compression microcode is installed and MVS 4.3 is not in use, you may request a zap from Infotel to force the use of the microcode.
-
The indicated gain is a MAXIMUM gain because, of course, it does not take into account the length of disk control information, any "gaps", etc.
The exact gains achieved by INFOPAK (for example expressed in number of cylinders) can be determined after reloading the compressed file.
TESTVPAK Error Messages and Return Codes
The TESTVPAK return code is 0, except if the PRINT card is omitted; in this case it would be 8.
TESTVPAK can produce the following error message:
- THE VALIDITY DATE HAS EXPIRED, EXECUTION STOPPED
Please contact your INFOTEL representative, when this happens.
INFOPAK Interface to OPEN
The compression of MVS or VSAM files requires the installation of the INFOPAK INTERFACE to OPEN. The role of this interface is to intercept the OPEN commands, to determine if the file being opened has to be compressed and to load the appropriate interface module (MVS, VSAM or VSAM/MVS).
To correctly install and maintain the interface, the following four steps must be taken:
-
Define the "REFERENCE CLUSTER" (INFOPAK cluster),(see the installation manual)
-
Put at least one entry into the reference cluster
-
Create the IPL procedure (see the installation manual)
-
Control the activation or deactivation of this interface
-
Control the suspension of functioning of this interface
Important test rules for INFOPAK
INFOPAK VSAM and INFOPAK MVS use the OPEN INTERFACE for their respective control functions. If one or both of these products is in production and you wish to test a new version of one or both you should follow these general rules:
-
All test modules should be stored in a private library, separated from the production system.
-
For testing, all test modules identified by the ddnames MVSLOAD, MVSLINK, and MVSLPA can point to the same library that must be authorized.
-
A STEPLIB statement must be included in all jobs that will run to do compression or decompression in the test environment. This steplib should point to the authorized library created by the test install for the libraries referenced by ddnames MVSLINK and MVSLPA.
-
A test reference cluster, separated from production, must be used for the identification of the datasets used in testing the product. Make sure that the same dataset names will NOT be used in production and test environments.
-
All executions of program INFVSUT1 for testing purposes must include the PARM=DDN2 function. This will insure that the production system will not be deactivated by mistake.
If you follow the above steps, you will successfully protect the production system from the test system, and testing can be done isolated from production.
Use of INFVSUT1 to control the interface
One function of INFVSUT1 is the control of the INFOPAK INTERFACE to OPEN:
-
Activate the interface.
-
Update the table in memory
-
Deactivate the interface
-
Activate and deactivate compression for generic new datasets
-
Control the interface status
Activate the interface
Activating the INFOPAK INTERFACE to OPEN consists of:
-
Loading it into SQA (6 K bytes) (or ESQA with XA machines) and activating the OPEN intercept mechanism.
-
Reading the reference cluster and loading it into CSA and SQA (or ECSA and ESQA with XA machines).
The reference cluster MUST NOT be empty because it is opened as input.
The interface for the reference cluster is activated by executing INFVSUT1. If the interface is already active, it will not be activated another time, unless one activation is no PARM and the other is PARM=DDN2.
It is mandatory that the interface is activated before any OPEN occurs on a compressed file, especially before the start of CICS.
note
During the test phase, it may be necessary to activate the INFOPAK interface to OPEN twice with different reference clusters (i.e. for sites having INFOPAK VSAM in production and wanting to test INFOPAK MVS). In this case, for testing, the module INFVSUT1 must be executed with the DDN2 parameter and a different reference cluster. The DDN2 parameter will be used each time the user wants to access the "test" interface and the "test" reference cluster.
note
When the number of files to be compressed is large (more than 500 entries in the reference cluster), increasing the size of the lookaside buffer for OPEN is recommended. This will improve the access time on the internal file search in CSA during the open processing. The default value of the buffer is 1k. The parameter LBSIZE is used to modify this value (from 1k up to 999k). The optimal value for LBSIZE is 1k for each 500 entries in the reference cluster.
- Sample JCL to activate the interface
Running INFVSUT1 once will activate MVS and VSAM INFOPAK if both products are installed in the environment. This job is for running one copy of INFOPAK, so unless you are running two separate copies of INFOPAK do not use parm=ddn2.
//stepname EXEC PGM=INFVSUT1
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Reference-cluster-name,DISP=OLD
- Sample JCL to activate a second interface for testing
Running INFVSUT1 once will activate MVS and VSAM INFOPAK if both products are installed. Be sure to use parm=ddn2 for testing a second copy.
//stepname EXEC PGM=INFVSUT1,PARM=DDN2
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
- Sample JCL to activate the interface using a larger look-aside buffer
//stepname EXEC PGM=INFVSUT1,PARM=\'LBSIZE=4K\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
note
A message will be printed.
note
The size used in CSA (or ECSA if MVS/XA)
{wrapper="1" role="DL"}
-
*
66 + 4*n bytes for each KSDS, ESDS, or PATH where
n is the number of alternate keys of the basis cluster
-
*
50 bytes for each sequential or partitioned entry
-
*
50 bytes for each generic filename entry (INCLUDE or EXCLUDE)
-
*
14 bytes for each program entry
note
The size used in SQA (or ESQA if MVS/XA)
{wrapper="1" role="DL"}
-
*
50 bytes for each pattern-dsname (OS files only).
Update the table in core
At sites with several machines accessing the same cluster, the interface must be activated on each machine and the content of the tables must be identical. INFVSUT1 copies the contents of the reference cluster into the tables, but only for the machine where it runs.
//jobname JOB\...\...\...\....
//* ADD ENTRYs TO THE REFERENCE CLUSTER in MULTI-CPU SYSTEM
//addentry EXEC PGM=INFVSUT1,PARM=REFRESH
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Reference-cluster-name,DISP=OLD
//SYSIN DD *
A \<ARCCTL EX
A \<GVRESTOR EX
/*
//
The tables must be updated from the reference cluster executing INFVSUT1 without a SYSIN DD statement. If the interface is already active, INFVSUT1 will update the contents of the tables and will print update messages.
Deactivate the interface
To execute particular operations (tests, ...), the deactivation of the interface is useful. This is done by executing INFVSUT1 with the parameter "CANCEL". The SYSIN card is not used. This option must be used carefully since after the deactivation no clusters are considered to be compressed.
- Sample JCL to deactivate the interface
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=CANCEL
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Reference-cluster-name,DISP=OLD
- Sample JCL to deactivate a test interface
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=\'DDN2,CANCEL\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
note
A message is printed.
When the interface is deactivated, all files are assumed by the system to be uncompressed. Therefore, deactivation should only be done rarely.
The interface may be deactivated with the "CANCEL" parameter of INFVSUT1.
Deactivate and Activate compression for GENERIC entries
When the interface is first activated, the generic entries are also automatically activated.
PARM=GENSTOP will notify INFOPAK that GENERIC entries in the reference cluster are to be ignored by compression. Decompression will function normally. Sample JCL to deactivate GENERIC COMPRESSION
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=\'GENSTOP\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
//*sysin not used
Sample JCL to deactivate GENERIC COMPRESSION in a test interface:
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=\'DDN2,GENSTOP\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
//*sysin not used
PARM=GENSTART will notify INFOPAK that GENERIC entries in the reference cluster are to be used for compression. Sample JCL to activate GENERIC COMPRESSION :
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=\'GENSTART\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
//*sysin not used
Sample JCL to activate GENERIC COMPRESSION in a test interface :
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=\'DDN2,GENSTART\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
//*sysin not used
Determine the interface
status
To determine the status of the interface, execute INFVSUT1 with the "TEST" parameter. The SYSIN card is not used.
The SYSOUT file will indicate the status of the interface (active or not active) with a message and a return code (0 if the interface is active and 4 if the interface is not active).
Also, an appropriate message is displayed upon the system console.
- Sample JCL to test the status of the interface
//jobname JOB \...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=TEST
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Reference-cluster-name,DISP=OLD
- Sample JCL to test the status of the test interface
//jobname JOB \...\...\...\...\.....
//stepname EXEC PGM=INFVSUT1,PARM=\'DDN2,TEST\'
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=Test-reference-cluster-name,DISP=OLD
Bypassing the interface
INFOPAK provides three facilities to bypass INFOPAK for a program:
-
Using INFVSUT1
The INFOPAK utility, INFVSUT1, will also allow you to add program names to the reference cluster. The programs in the reference cluster will be excluded from the compression/decompression exit when they are executed even though the files they are using are compressed.
To bypass INFOPAK for a program, INFVSUT1 accepts a SYSIN parameter card with the name of the program to be excluded from the compression/decompression mechanism.
-
Special step name
Executing a STEP whose name begins with the six characters "INFAMS" will temporarily bypass the compression/decompression exit for every cluster being opened by the program executed.
Example:
//INFAMSxx EXEC PGM=program-name
-
Special ddname
A ddname beginning with the six characters "INFAMS" will exclude the corresponding file from the compression/decompression process.
Example:
//INFAMSxx DD DISP=SHR,DSN=data-set-name
note
When an INCLUDE or an EXCLUDE is processed by INFOPAK, the suspension of the interface is controlled as follows:
| Progname | Stepname | Ddname | File content | Result | | | | | before loading | | +=================+==========+==========+=================+=================+ | * | * | * | - Cluster or | - Include | | | | | file not | taken into | | | | | compressed | account during | | | | | | a reload | | | | | - An intention | | | | | | of | - Data | | | | | compression | compressed | | | | | (INCLUDE | during the | | | | | DSN)exists for | initial loading | | | | | this cluster or | | | | | | file | | | INFAMS or pgm | * | * | | - Include | | ex. | | | | taken into | | | | | | account during | | | | | | a reload | | | | | | | | | | | | - Data | | | | | | compressed | | | | | | during the | | | | | | initial loading | | * | INFAMSxx | * | | - Include | | | | | | taken into | | | | | | account during | | | | | | a reload | | | | | | | | | | | | - Data NOT | | | | | | compressed | | | | | | during | | | | | | the initial | | | | | | loading | | * | * | INFAMSxx | | - Include NOT | | | | | | taken into | | | | | | account during | | | | | | a reload | | | | | | | | | | | | - Data NOT | | | | | | compressed | | | | | | during the | | | | | | initial loading | | * | * | * | - Cluster | - Exclude | | | | | known as | taken into | | | | | compressed | account during | | | | | | a reload | | | | | - An intention | | | | | | of exclusion | - Data | | | | | (EXCLUDE | decompressed | | | | | DSN)exists for | during | | | | | this cluster | the initial | | | | | | loading | | INFAMS or pgm | * | * | | - Exclude | | ex. | | | | taken into | | | | | | account during | | | | | | a reload | | | | | | | | | | | | - Data | | | | | | decompressed | | | | | | during | | | | | | the initial | | | | | | loading | | * | INFAMSxx | * | | - Exclude | | | | | | taken into | | | | | | account during | | | | | | a reload | | | | | | | | | | | | - Data NOT | | | | | | decompressed | | | | | | during the | | | | | | initial loading | | * | * | INFAMSxx | | - Exclude NOT | | | | | | taken into | | | | | | account during | | | | | | a reload | | | | | | | | | | | | - Data NOT | | | | | | decompressed | | | | | | during the | | | | | | initial loading |
: INCLUDE / EXCLUDE
note
The DDNAME INFAMSxx overrides the STEPNAME INFAMSxx.
Use of INFVSUT1 to bypass the interface
INFVSUT1 interface functions for programs
INFVSUT1 provides the following functions:
-
Bypass compression/decompression for a program (ADD pgm XX)
-
Bypass compression/decompression for a program (ADD pgm EX) except for intents
-
Cancel the bypass request (DELETE pgm)
-
Interrogate the reference cluster (LIST pgm)
Programs to be excluded from compression
The FAVER reload module name "GVRESTOR" should be excluded with code EX or XX. This will make INFOPAK VSAM entirely compatible with FAVER. Thus, INFOPAK VSAM will not attempt to compress an already compressed file when doing a FAVER reload. If code XX is used, FAVER cannot be used to compress a new VSAM file even if there is an intent for compression for that file. With code EX, even if FAVER is excluded, intents will be take into account and FAVER will compressed the cluster using an uncompressed backup.
The HSM module "ARCCTL" should be excluded from compression/decompression using the code XX. "ARCCTL" is the only HSM module that opens datasets, therefore, it is the only HSM module that should be excluded. This will allow HSM to backup and restore compressed and uncompressed data unchanged.
The DFDSS module "ADRDSSU" should also be excluded from compression/decompression using the code XX. This will allow DFDSS to backup and restore compressed and uncompressed data unchanged.
INFVSUT1 can be requested to check the ability of a program to use a compressed file.
Bypass the Interface for a Program
\>\>\--+- ADD \--+\-\-\-\--+\-\-- \<pgmname \--+\-\-\-\-\-\-\-- XX \-\-\-\-\-\-\-\-\-\-\--\>\<
| | +\-\-- \<pgm* \-\-\-\--+
+\-- A \-\--+
The ADD (A) function with a program name (or generic program name) causes the total bypass of compression/decompression for this program. The function will be performed immediately, and the compression/decompression mechanism will not be invoked for any files used during the execution of this program.
This facility allows the performance of reorganizations (or backups) without the INFOPAK interface, and yields savings in both space and elapsed times. It is particularly recommended when using SAVE/RESTORE products. Reading the VSAM CI (excludes the INFOTEL interface) and writing records (with the interface) will cause double compression.
-
Description:
{wrapper="1" role="DL"}
-
<pgmname
Program name. The "<" indicates that this is the name of a program.
-
<pgm*
Generic program name. All programs with this prefix excluded.
-
XX
Function code indicating a total bypass of the interface
-
note
-
The program will always be excluded from compression if its name appears as the object of the "PGM=" parameter in the EXEC statement. But, for example if the program is called by a LOAD MACRO, it will not be excluded because it will not have a TCB that contains its name. (The TCB is the actual source of the program name which is compared to the INFOPAK CLUSTER).
-
This code XX is especially designed for programs like DFDSS(ADRDSSU) and HSM(ARCCTL).
-
The code XX deactivate "intent processing" for the program, that is, it is not possible to compress a file with such a program (see keyword EX).
Example
-
Bypass the compression/decompression system during the execution of HSM
A <ARCCTL XX
-
Bypass the compression/decompression system during the execution of programs with names starting with pgm2
A <PGM2* XX
Bypass the interface for a program except for intent
\>\>\--+- ADD \--+\-\-\-\--+\-\-- \<pgmname \--+\-\-\-\-\-\-\-- EX \-\-\-\-\-\-\-\-\-\-\--\>\<
| | +\-\-- \<pgm* \-\-\-\--+
+\-- A \-\--+
The ADD (A) function with a program name (or generic program name) causes the bypass of compression/decompression for this program. The function will be performed immediately, and the compression/decompression mechanism will not be invoked for any files used during the execution of this program.
The exclusion is not total, if a file with is to be compressed using an INCLUDE command (intent) will be compressed even if the program is excluded using code EX. This also applies to EXCLUDE commands.
note
This code was specially designed for tools like FAVER, it can be used for compressing a VSAM for the first time using a non-compressed backup. Indeed, FAVER does backups using CI access (then always bypassing INFOPAK) and does restore using record access. This may cause double compression when the backup copy is a copy of a compressed VSAM.
note
For tools like HSM or DFDSS, use the code XX.
-
Description:
{wrapper="1" role="DL"}
-
<pgmname
Program name. The "<" indicates that this is the name of a program.
-
<pgm*
Generic program name. All programs with this prefix excluded.
-
EX
Function code indicating a bypass of the interface
example
-
Example :
-
Bypass the compression/decompression system during the execution of PGM1
A <PGM1 EX
-
Bypass the compression/decompression system during the execution of programs with names starting with pgm2
A <PGM2* EX
note
-
The program will always be excluded from compression if its name appears as the object of the "PGM=" parameter in the EXEC statement. But, for example if the program is called by a LOAD MACRO, it will not be excluded because it will not have a TCB that contains its name. (The TCB is the actual source of the program name which is compared to the INFOPAK CLUSTER).
-
The INFAMS program (supplied with the product) is automatically excluded from compression.
Cancel the bypass request
\>\>\--+- DELETE \--+\--+- \<pgmname \--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- \<pgm* \-\-\-\--+
+\-\-\-- D \-\-\--+
The DELETE (D) function with a program name deletes the program from the reference cluster. The suppression is immediate and the VSAM clusters read or written by the program are under the control of the compression mechanism.
-
Description:
{wrapper="1" role="DL"}
-
<pgmname
Program name. The "<" indicates that this name is the name of a program.
-
<pgm*
Generic program name.
-
Interrogate the reference cluster by program name
\>\>\--+- LIST \--+\-\-\-\-\-\-\--+\-- \<pgmname \--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | | |
+\-\-- L \-\--+ +\-- \<pgm* \-\-\-\--+
The LIST (L) function with a program name or a generic program name provides all information about each entry.
-
Description:
{wrapper="1" role="DL"}
-
<pgmname
Program name. The "<" indicates that this is the name of a program.
-
<pgm*
Generic program name corresponding to the root of the program entries.
-
note
-
With a program name, INFVSUT1 indicates if the program is included in the reference cluster and its function.
-
With a generic program name, INFVSUT1 lists the name of each program of the reference cluster beginning with the generic name and its function.
-
Examples:
-
To print PGM1 information
-
To print all information for all programs in the reference cluster
-
Finding programs using EXCP or VSAM CI processing
The INFOPAK modules will not compress or decompress files that are accessed with EXCP or VSAM CI processing. With the access method testing function turned on, the OPEN interface will notify you with a message sent to routcde 11 when a compressed file is processed with a unsupported access method. In most cases these jobs should be excluded. Please contact your Infotel technical support if you need help to handle these jobs.
INFVSUT1 access method testing
INFVSUT1 has the following functions for testing access methods:
-
ADD a program or generic program name to the reference cluster to turn on the check for the use of an unsupported access method (EXCP or VSAM CI processing).
-
Turn off or stop checking for EXCP or VSAM CI processing for a program or generic program.
-
Interrogate the reference cluster(LIST pgm).
ADD a program for access method testing
\>\>\--+- ADD \--+\-\-\-\-\-\-\--+\-- \<pgmname \--+\-\-\-\-\-\-- IN \-\-\-\-\-\-\-\-\--\>\<
| | | |
+\-\-- A \-\--+ +\-- \<pgm* \-\-\-\--+
The ADD(A) function with a program name (or a generic program name) indicates to the open interface that during open processing of compressed files, by this program, it is to notify the system using routcde=11, if it detects the use of an access method that cannot support compression or decompression. The access methods that do not support compression and decompression are EXCP for MVS and CI processing for VSAM. This notification will include the DDNAME of the compressed dataset.
The message sent to routcde=11 is as follows:
VSUT1099: DDNAME ddname: NOT A SUPPORTED ACCESS METHOD
Description of ADD parameters:
{wrapper="1" role="DL"}
-
<pgmname
Program name. The "<" indicates that this is the name of a program.
-
<pgm*
Generic program name.
-
IN
Function code.
note
The program name is tested only if its' name appears in the "PGM=" parameter of an EXEC statement. The TCB is the actual source of the name to be checked in the reference cluster. Programs that are called by the LOAD macro will not be tested.
- example
Example :
-
The program named PGM1 will be tested during execution.
- a <PGM1 IN
-
All programs that access compressed files will be tested.
- a <* IN Remove a program from access method testing
Controlling the interface with an automatic JCL
Automatic update of the tables in core
When activating INFOPAK on several systems sharing the same reference cluster, an update of the reference cluster causes the automatic update of the tables in memory on the system where INFVSUT1 has been executed. Update of the other systems must be performed by execution of INFVSUT1 without SYSIN on the other systems, unless the EXEC card for INFVSUT1 contains PARM=REFRESH. In this case INFOPAK will initiate a refresh on the systems.
INFOPAK will itself initiate an update to the reference cluster on a system, if for example, a file is automatically compressed because of the presence of an INCLUDE entry when the file is reloaded. In this case, the user is not able to submit a JCL, therefore, in this case only, INFOPAK will submit a JCL through the internal reader. The JCL submitted is that which has previously been entered into the reference cluster.
Definition of JCL cards for the automatic update
INFVSUT1 supports the following commands:
-
ADD of a JCL card (ADD)
-
DELETION of a JCL card (DELETE)
-
MODIFICATION of a JCL card (REPLACE)
-
LIST of the reference cluster (LIST)
Add a JCL card
\>\>\--+- ADD -+\-\-- |number \-\-- GJ \-\-- card \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-- A \--+
The ADD (A) command with its working code GJ allows to define a JCL card as well as its order number.
-
Description:
{wrapper="1" role="DL"}
-
|number
Is the order number of the JCL card. The JCL cards are submitted in ascending order of the order numbers. The order numbers need not be successive (they are interpreted as character strings). The "|" indicates an order number of a JCL card.
-
GJ
Mandatory working code for JCL cards.
-
card
Character string that will be submitted to the internal reader (according to the JCL syntax).
-
example
-
Example :
A |0010 GJ //INFOPAKP JOB \'REFRESH\',CLASS=C,
A |0011 GJ // MSGCLASS=S,NOTIFY=PAKADM
A |0020 GJ /*JOBPARM SYSAFF=MVSP
A |0030 GJ //STEP EXEC PGM=INFVSUT1
A |0040 GJ //SYSUT1 DD DSN=reference-cluster,DISP=OLD
A |0050 GJ //SYSPRINT DD SYSOUT=*
A |0110 GJ //INFOPAKT JOB \'REFRESH\',CLASS=C,
A |0111 GJ // MSGCLASS=S,NOTIFY=PAKADM
A |0120 GJ /*JOBPARM SYSAFF=MVST
A |0130 GJ //STEP EXEC PGM=INFVSUT1
A |0140 GJ //SYSUT1 DD DSN=reference-cluster,DISP=OLD
A |0150 GJ //SYSPRINT DD SYSOUT=*
Delete a JCL card
\>\>\--+- DELETE -+\-\-- |number \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- D \-\-\--+
The DELETE (D) command is used to remove a JCL card from the reference cluster JCL.
-
Description:
{wrapper="1" role="DL"}
-
|number
Is the order number of the JCL card to be deleted.
-
example
-
Example :
-
Delete card 0027 from the reference cluster JCL
D |0027
Modify a JCL card
\>\>\--+- REPLACE -+\-\-- |number \-\-- GJ \-\-- card \-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-\-- R \-\-\--+
The REPLACE (R) command replaces a JCL card in the reference cluster JCL.
-
Description:
{wrapper="1" role="DL"}
-
|number
Is the order number of the JCL card to be modified.
-
GJ
Mandatory working code of the JCL card.
-
card
Character string to submit to the internal reader (JCL syntax).
-
example
-
Example :
-
Replace the card 0010 in the reference cluster JCL
R |0010 GJ //INFOPAKP JOB 'REFRESH',CLASS=V,
List an automatic JCL from the reference cluster
\>\>\--+- LIST -+\-\--+- |number \--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | | |
+\-- L \-\--+ +- |number* -+
The LIST (L) command followed by an order number of a JCL card or a generic order number provides the contents of the reference cluster that match the specification.
-
Description:
{wrapper="1" role="DL"}
-
|number
Is the order number of the JCL card whose listing is requested.
-
|number*
This generic name specifies the root of the card(s) whose listing is requested.
-
example
-
Example :
-
List all information about the JCL cards stored in the reference cluster
L |*
INFOPAK MVS
INFOPAK MVS provides compression for sequential and partitioned files in an MVS operating environment. This compression applies to F, FB, V, VB and U structured files accessed by QSAM, BSAM or BPAM. Data sets of format VBS can not be compressed by INFOPAK.
One compression module is available with INFOPAK MVS, it contains the four compression levels of INFOPAK:
-
CP compression code which provides maximum compression with software or hardware
-
RP compression code. Same routine as CP but using 8 bytes per block to tag compressed blocks.
-
CS compression code which provides good compression at a lower CPU level.
-
RS compression code. Same routine as CS but using 8 bytes per block to tag compressed blocks.
BSAM files may be compressed with the restriction that records have not been updated (even when keeping the same length) after initial loading. However, it is always possible to add new records to the file.
Smart compression
Smart compression routines (RP and RS) are using different algorithms. RP provides maximum compression and RS provides low CPU consumption with good compression. Both algorithms use a tag at the end of each compressed block to distinguish compressed records from uncompressed records. This principle avoids double compression, and also allows processing of files containing both compressed and uncompressed records.
It is possible to add compression on the fly to a PDS using the ADD command of INFVSUT1 even if the PDS is not empty. After being declared compressed, each member added or updated will be compressed by INFOPAK.
Compressing a file
Compression of a sequential or partitioned file requires that the INFOPAK interface to OPEN will be active as previously described.
INFOPAK MVS can compress four kinds of files:
-
partitioned files,
-
cataloged sequential files
-
all sequential files in a specified SMS dataclass,
-
uncataloged sequential files (such as temporary files).
The compression commands that are allowed to be input via INFVSUT1 are: ADD (A), FORCE (F), REPLACE (R), DELETE (D), INCLUDE (I), EXCLUDE (E), and PURGE (P). The use of these commands for each file type are shown in Table 1.
Command Cataloged PDS Cataloged sequential Non cataloged file Deleted file A dsn / - - -
F dsn / / - -
R dsn / / - -
D dsn / - - -
I dsn - / - -
X dsn - / - -
P dsn - - - /
I dataclass - / - -
D dataclass - / - -
I dsn* - / - -
X dsn* - / - -
D dsn* - / - -
P dsn* - - - /
A %dsn% / / / -
D %dsn% / / / -
: INFVSUT1 command types
The INFOTEL utility program INFVSUT1 must be used to notify INFOPAK to compress a file.
For partitioned files both INFOTEL utilities, INFVSUT1 and INFPCOPY, must be used.
To compress files which are not cataloged, use the INFOTEL utility program INFVSUT1 with a pattern-dsname, see Use of INFVSUT1 with pattern-dsname.
It is recommended to use only INFVSUT1 for updating the reference cluster. The use of any other utility will give unpredictable results. The commands for INFVSUT1 will be specified in SYSIN.
Sample for using INFVSUT1:
//jobname JOB \...\...\.....
//stepname EXEC PGM=INFVSUT1
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=name-of-the-reference-cluster,DISP=OLD
//SYSIN DD *
command card
/*
The following chapter provides information concerning the syntax of the command cards and how to use these cards to handle the files to be compressed.
Use of INFVSUT1 with complete names
The following commands can be used:
-
Add a partitioned file to the compression system (ADD dsn)
-
FORCE Add a dataset to the compression system (FORCE dsn)
-
Suppress a partitioned file from the compression system (DELETE dsn)
-
Modify the compression mode of a partitioned file (REPLACE dsn)
-
Specify an intent to compress a cataloged sequential file (INCLUDE dsn)
-
Exclusion from compression for a cataloged sequential file (EXCLUDE dsn)
-
Remove an entry from the reference cluster (PURGE dsn)
-
List the contents of the reference cluster for this entry (LIST dsn)
Add a partitioned file to the compression system
\>\>\--+- ADD -+- dsname -+- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-- A \--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
This ADD (A) command is used to add a partitioned file to the compression system.
note
This command is not allowed to be used with sequential files.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the file to be added to the compression system.
-
CP
Huffman optimal compression (maximum compression).
-
CP(LZ)
Lempel Ziv optimal compression. If the hardware compression instruction is not present on the CPU, a software emulation will be used.
-
CP(HD)
Hardware Driven optimal compression. This compression code forces the use of the hardware compression instruction when it is supported by the CPU. Otherwise, the standard Huffman compression(CP) is used.
note
-
:
Options CP(LZ) and CP(HD) are available when INFOPAK is unloaded with the Lempel Ziv option.
-
CS
Quick compression (less compression, less CPU).
-
RP
Smart Huffman optimal compression (maximum compression).
-
RP(LZ)
Smart Lempel Ziv optimal compression. If the hardware compression instruction is not present on the CPU, a software emulation will be used.
-
RP(HD)
Smart Hardware Driven optimal compression. This compression code forces the use of the hardware compression instruction when it is supported by the CPU. Otherwise, the standard Smart Huffman compression(RP) is used.
INFOPAK is unloaded with the Lempel Ziv option.
-
RS
Smart quick compression (less compression, less CPU).
note
-
The file must be an existing partitioned file and must be cataloged.
-
If compressed by CP or CS level, the PDS must be empty (no member).
-
The file must be accessible: INFVSUT1 opens the file.
-
This action is ignored if the dataset has already been added by a previous ADD command.
-
As soon as this command is executed, the file is considered to be compressed by the INFOTEL interface to OPEN.
-
example
Examples :
{wrapper="1" role="DL"}
-
example 1
Add the DSN1 PDS to the compression (CP option)
A DSN1 CP -
example 2
Add the DSN2 PDS to the compression (CS option)
ADD DSN2 CS -
example 3
Add the DSN3 PDS to the compression (RS option) using compress in place
ADD DSN3 RS
Add a COMPRESSED DATASET to the reference cluster
This can be used to add a renamed compressed DATASET to the reference cluster. This DATASET can be empty OR can already contain compressed data.
\>\>\--+- FORCE -+- dsname -+- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-\-- F \-\--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
This FORCE (F) command with a dsname adds the dataset name to the reference cluster. The dataset may be EMPTY or may contain compressed data.
Important note:
If the file is not empty:
-
the data must have been compressed already
-
the compression code must not be changed
-
Description
{wrapper="1" role="DL"}
-
dsname
dataset name
-
CS/CP/RS/RP
is the compression option (See ADD command).
-
note
-
The dataset must be defined
-
Its definition must be accessible by dsname
-
The dataset must not be opened
-
It must not have been previously added with the ADD function.
-
If the entry was created by INCLUDE or EXCLUDE, these commands are canceled by the FORCE command.
-
As soon as the FORCE command is performed, the INFOTEL MVS interface will be active for the dataset.
-
example
Examples :
{wrapper="1" role="DL"}
-
example 1
FORCE add the dataset DSN1 in compression mode CP
F DSN1 CP -
example 2
FORCE add the dataset DSN2 in compression mode CS
F DSN2 CS
Suppress a partitioned file from the compression system
\>\>\--+- DELETE -+\-\-\-- dsname \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- D \-\-\--+
The DELETE (D) command with a dsname is used to suppress a partitioned file entry from the reference cluster.
note
This command is not permitted with sequential files.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the file to suppress from the compression system.
-
note
-
The file must be an existing partitioned file and must be cataloged.
-
It must be empty (no member).
-
The file must be accessible: INFVSUT1 opens the file.
-
As soon as this command is executed, the file is ignored by the INFOPAK compression system.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Suppresses the DSN1 PDS from compression
D DSN1
Modify the compression mode of a partitioned file
\>\>\--+- REPLACE -+- dsname -+- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-\-\-- R \-\-\--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
The REPLACE (R) command is used to modify the definition of a partitioned file which is already compressed. This action code is the way to change the compression option of a file.
note
This command is not permitted with sequential files.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the file to be modified.
-
CS/CP/RS/RP
is the compression option (see ADD command)
-
note
-
The file must be an existing partitioned file and must be cataloged.
-
If the file is empty (no member):
- all compression modes are allowed to be applied and the cluster characteristics are allowed to be modified
-
If the file is not empty:
-
the file characteristics must be kept
-
the file must be compressed using either the Huffman or Lempel-Ziv compression mode (CP, CP5LZ), CP(HD), RP, RP(LZ) or RP(HD)
-
the new compression mode must also be either Huffman or Lempel-Ziv
-
it is not possible to switch from standard compression to secured compression and/or vice versa.
-
-
The file must be accessible: INFVSUT1 opens the file.
-
The effect of the REPLACE command is immediate.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Modifies the DSN1 PDS compression (CP option)
R DSN1 CP
Specify an intent to compress a cataloged sequential file
\>\>\--+- INCLUDE -+- dsname -+- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-\-\-- I \-\-\--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
The INCLUDE (I) command is used to specify an intent to compress a file. The compression will take place on the next reload of the file.
note
This command is not allowed to be used with partitioned files.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the file to be compressed.
-
CS/CP/RS/RP
is the option code (see ADD command).
-
note
-
Compression will take place on the first reload of the file: first OPEN in OUTPUT mode except DISP=MOD.
-
When the first OPEN OUTPUT takes place, the file is considered to be compressed.
-
The mechanism for program exclusion from compression/decompression is modified during the reload: the execution of a step whose name begins with INFAMS is the only one which will temporarily bypass the compression/decompression exit.
-
Compression will take place only if the INFVSUT1 module can be called dynamically at the time of the OPEN.
-
A message is printed to report the add of the file to the compression system.
-
This action overrides any previously defined status acquired by an INCLUDE or EXCLUDE command.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Specifies an intent to compress sequential file DSN1 (CP option)
I DSN1 CP
Exclusion from compression of a cataloged sequential file
\>\>\--+- EXCLUDE -+\-- dsname \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-\-- X \-\-\--+
This EXCLUDE (X) command is used to exclude a sequential file from a generic intent to compress which includes its name. In this case, the exclusion takes place immediately.
This command is also used to declare an intent to decompress a sequential file. The decompression will take place on the next reload of the file.
note
This command is not permitted with partitioned files.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the file to exclude from the compression system.
-
note
-
If the file is not compressed or if the file is not cataloged:
-
If the file is cataloged, the file must be a sequential file.
-
The file is immediately excluded from the compression/decompression system. This overrides any other previous command on the file.
-
If the name of the file matches a generic intent to compress (INCLUDE dsn* command) (see Generic intent to compress sequential cataloged files), the file no longer belongs to the generic intent.
-
-
If the file is compressed and cataloged:
-
Decompression will take place on the first reload of the file: first OPEN in OUTPUT mode (except DISP=MOD).
-
Decompression will take place only if the INFVSUT1 module can be called dynamically at the time of the OPEN.
-
A message is printed to report the suppression of the file from the compression system.
-
-
example
Examples :
{wrapper="1" role="DL"}
-
example 1
Excludes compressed file DSN1 from compression.
X DSN1After the execution of this command, DSN1 is marked for exclusion, and remains compressed until the next reload.
-
example 2
Excludes the uncompressed file DSN2 from compression
X DSN2After the execution of this command, DSN2 is immediately excluded from compression; it cannot be compressed with a generic intent command.
Remove an entry from the reference cluster
\>\>\--+- PURGE -+- dsn \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- P \-\--+
The PURGE (P) command is used to remove an entry from the reference cluster for a file which is no longer cataloged. In general, this command is used to remove an entry for a deleted file. Remember that the DELETE command can be used only with a partitioned and cataloged file, and the EXCLUDE command creates an exclusion entry in the reference cluster.
note
The PURGE command does not suppress any INCLUDE entry which is in effect. In this case, you must use the DELETE command.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the entry to remove from the reference cluster.
-
note
-
The entry in the reference cluster is removed only if the file (partitioned or sequential) is not cataloged.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Purges the entry for file DSN1
P DSN1
List the contents of the reference cluster for this entry
\>\>\--+- LIST -+\-- dsn \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-- L \-\--+
The LIST (L) command is used to list information in the reference cluster for a file.
-
Description
{wrapper="1" role="DL"}
-
dsname
is the name of the entry in the reference cluster to be listed.
-
note
-
The information on the report is:
-
If the entry is known.
-
If the entry is an exclusion entry.
-
If the entry is for a compressed file and the option code.
-
If the entry is an intention (INCLUDE or EXCLUDE) entry.
-
-
Example
{wrapper="1" role="DL"}
-
example 1
Lists information about the entry of DSN1.
L DSN1
-
Table: use of INFVSUT1 with complete names
empty PDS Sequential Deleted file Reference cluster A / - - 1 entry created
R / - - 1 entry modified
D / - - 1 entry suppressed
I - / / 1 entry created
X - / / 1 entry created
P / 1 entry suppressed
: Available commands
* In the case of a compressed file, the entry is modified in the reference cluster as an intent to exclude which will take place on the next reload of the file.
Use of INFVSUT1 with generic names
INFVSUT1 can be used to compress multiple files with only one generic command. This means that all the files with a name matching the generic entry, will be compressed on the next reload. An entry in the reference cluster will be created automatically for each file that is to be compressed.
note
This is allowed to be used with sequential files only. The generic commands do NOT apply to partitioned files.
The format of a generic name is as follows :
\>\>\--+\-\-\-\--+- GenS -+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--+-+\-\-\-\--+\--\>\<
| | | | | |
+- * -+ +- **. -+\-\-\-\-\-\-\--+-+ +- * -+
| |
+- GenS -+
GenS =
+\-\-\-\-\-\-\-\--\<\-\-\-\-\-\-\-\--+
| |
\>\>\-- ch -+-+\-\-\-\-\--+-+\-\-\-\-\--+-+\--\>\<
| | | |
+- ch -+ +- *. -+
Description:
{wrapper="1" role="DL"}
-
*
In the beginning or at the end of a generic name, it specifies whatever character string with whatever length and with any number of qualifiers. In the middle of the generic name, it specifies whatever character string with whatever length but including only ONE qualifier. It must be followed by a point.
-
**
stands for whatever character string with whatever length and with any number of qualifiers. It must be followed by a point.
-
ch
is any part (not including ".") of a valid dsname.
A generic name is indicated by "dsn*" in the rest of the manual.
The following commands can be used:
-
Generic intent to compress sequential cataloged files (INCLUDE dsn*).
-
Generic exclusion from compression of sequential cataloged files (EXCLUDE dsn*).
-
Suppression of a generic intent to compress (DELETE dsn*).
Generic intent to compress sequential cataloged files
\>\>\--+- INCLUDE -+- dsn* -+- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-\-\-- I \-\-\--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
+- AU \-\-\-\--+
The INCLUDE (I) command is used to declare an intent to compress all sequential files with a name matching the generic name.
Compression will take place separately for each of the designated files on its next reload.
-
Description
{wrapper="1" role="DL"}
-
dsn*
is the generic name of files which will be compressed.
-
CS/CP/RS/RP
is the compression option (See ADD command).
-
AU
Generic intent for AUDIT. The code can be used to automatically generate file exclusion in the reference cluster when a BDAM access is intercepted.
This code should be used before compression if a generic intent matches files that can be accessed by BDAM. BDAM is not supported by INFOPAK but some BDAM files can be loaded using BSAM.
-
If the same generic name was used previously in a command (INCLUDE or EXCLUDE), the entry is overridden with the new one.
-
Compression will take place only if the INFVSUT1 module can be called dynamically at time of OPEN.
-
Files which will be compressed as a result of a generic intent are:
-
Files with a name that matches the generic name.
-
Files which are not subject to an ADD, INCLUDE or EXCLUDE command.
-
Files which are sequential and cataloged.
-
-
If the name of an open file matches several generic intents, INFOPAK will accept the one with the longer generic name.
-
Compression will take place on the first reload of the file: first OPEN in OUTPUT mode (except DISP=MOD). An entry will be added in the reference cluster for this file.
-
When the first OPEN OUTPUT occurs, the file is considered as compressed by the compression system.
-
The mechanism for program exclusion from compression/decompression is modified during the reload: the execution of a step whose name begins with INFAMS is the only one which will temporarily bypass the compression/decompression exit.
-
A message is printed to report the add of the file to the compression system.
-
Generic commands must be used with care at a multi-CPU site: when the command takes effect on a CPU, the tables of the other CPU will not be updated until INFVSUT1 is run without SYSIN on that CPU unless INFVSUT1 was invoked with PARM=REFRESH (see chapter Controlling the interface with an automatic JCL).
-
note
Dataclasses have priority over generic intents. If a file is eligible both for a dataclass and a generic intent, the dataclass will dominate.
- example
Examples :
{wrapper="1" role="DL"}
-
example 1
Compress with CS option all files whose name begin with DSN1.IDX2
I DSN1.IDX2* CSAs soon as the command is executed, sequential files whose names begin with DSN1.IDX2 will be compressed on their first reload.
Generic exclusion from compression of sequential cataloged files
\>\>\--+- EXCLUDE -+\-- dsn* \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-\-- X \-\-\--+
The EXCLUDE (X) command is used to limit the range of a generic intent to compress. This is done by excluding from the generic intent command files whose names match the generic name.
-
Description
{wrapper="1" role="DL"}
-
dsn*
is the generic name of files which are not to be compressed by a generic intent to compress.
-
note
-
If the same generic name has already been used in an INCLUDE or EXCLUDE command, the previous command is overridden by the new one.
-
If the name of a file matches several generic commands, INFOPAK will take the one with the longer generic name.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Compress with CS option all files whose names begin with DSN1.IDX2 except files beginning with DSN1.IDX21
I DSN1.IDX2* CS
X DSN1.IDX21*After the execution of these commands, all sequential files whose names begin with DSN1.IDX2 (except DSN1.IDX21) will be compressed on their first reload.
Suppression of a generic intent to compress
\>\>\--+- DELETE -+\-- dsn* \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- D \-\-\--+
The DELETE (D) command is used to remove a generic intent entry from the reference cluster.
-
Description
{wrapper="1" role="DL"}
-
dsn*
is the name of the generic intent entry to be suppressed.
-
note
-
The entry is immediately suppressed.
-
Files that were subject to the entry are now available for a generic command of a higher level.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Suppress generic entry DSN1*
D DSN1*
Use of INFVSUT1 with pattern-dsname
INFVSUT1 can be used to declare that all files (sequential or partitioned, cataloged or uncataloged) are considered as compressed if their names match a specific syntax: each get/read is decompressed and each put/write is compressed.
Although the pattern-dsname commands may be used effectively with cataloged files, they are intended primarily for not cataloged files as the other commands cannot be used for them. Pattern-dsnames are of the general form %dsn% where dsn = the syntax that, if found in the appropriate position within the file dsname, will identify the file as being compressed.
The "%" sign is used as a delimiter to tell where to look for the syntax within the dsname where:
-
%dsn = find the syntax as the rightmost characters of the dsname,
-
dsn% = find the syntax as the leftmost characters of the dsname, and
-
%dsn% = find the syntax embedded anywhere within the dsname.
The following commands can be used:
-
Add a syntax of compression (ADD pattern)
-
Suppress a syntax of compression (DELETE pattern)
-
List compression syntax entries (LIST pattern)
Add a syntax of compression
\>\>\--+- ADD -+\-\-- pattern-dsname \-\--+- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-- A \--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
The ADD (A) command is used to enter a pattern-dsname in the reference cluster.
-
Description
{wrapper="1" role="DL"}
-
pattern-dsname
compression syntax to be used to identify compressed files.
-
note
-
Immediately upon execution of the ADD command, all files matching the pattern-dsname will be considered as compressed by INFOPAK.
-
WARNING ! Pattern-dsname entries are evaluated before any other entry in the reference cluster: if the name of a file matches a pattern-dsname, other entries in the reference cluster are bypassed and the file is under the control of compression. Therefore, use pattern-dsnames sparingly with a specific syntax not likely to be used in normal file naming. Now, to identify compressed files, it will be necessary to change the file dsname to include this unusual syntax.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Adds all files whose names begin with DSN1.@CP.
A DSN1.@CP.% CP
note
The "@" is included in the syntax to avoid accidental inclusion of files not intended for compression.
Suppress a syntax of compression
\>\>\--+- DELETE -+\-\-\-\-- pattern-dsname \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- D \-\-\--+
The DELETE (D) command is used to remove a pattern-dsname entry from the reference cluster.
-
Description
{wrapper="1" role="DL"}
-
pattern-dsname
compression syntax to be deleted. The "%" sign must be included identically as it is in the pattern-dsname being deleted.
-
note
-
The suppression is immediate.
-
The suppression of a pattern-dsname entry frees immediately all files whose names match the pattern-dsname.
-
WARNING ! When a pattern-dsname is deleted, all files previously under control of that pattern-dsname are considered uncompressed. Therefore, if a compressed file under the control of that pattern-dsname remains after the pattern-dsname is deleted, processing of that file will cause an abend. Thus, it is important to make sure that all related files are deleted prior to the deletion of the pattern-dsname.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Suppresses the entry for DSN1.@CP.%
D DSN1.@CP.%
List compression syntax entries
\>\>\--+- LIST -+\-\-\-\-- pattern-dsname \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-- L \-\--+
The LIST (L) command is used to list the name, status and compression option for the pattern-dsname entered.
-
Description
{wrapper="1" role="DL"}
-
pattern-dsname
name of the entry to be listed. Must include the "%" sign if it was included when the pattern-dsname was entered.
-
note
-
The information on the report is:
-
The status of the entry
-
The option of compression
-
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
List information on DSN1.@CP.% entry
L DSN1.@CP.%
Use of INFVSUT1 with generic commands
INFVSUT1 can be called with the following commands, which will process all entries in the reference cluster matching the generic name.
-
Generic purge from the reference cluster (PURGE dsn*)
-
Generic list from the reference cluster (LIST dsn*)
Generic purge from the reference cluster
\>\>\--+- PURGE -+\-- dsn* \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- P \-\--+
The PURGE (P) command is used to remove dsname entries matching the generic name for files which are no longer cataloged.
-
Description
{wrapper="1" role="DL"}
-
dsn*
is the generic name of the dsname entries to be purged.
-
note
The following entries are purged:
-
Entries for sequential or partitioned files,
-
with a name matching the generic name,
-
due to an ADD command or a compression having taken place after an INCLUDE command and
-
the corresponding files are no longer cataloged.
-
example
Examples :
{wrapper="1" role="DL"}
-
example 1
Remove entries of uncataloged files whose names begin with DSN1
P DSN1* -
example 2
Remove all entries of uncataloged files.
P *
Generic list from the reference cluster
\>\>\--+- LIST -+\-- dsn* \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-- L \-\--+
The LIST (L) command is used to list information on entries in the reference cluster matching the generic name.
-
Description
{wrapper="1" role="DL"}
-
dsn*
is the generic name of the entries to be listed.
-
note
-
The information on the report for generic entries is:
- Type of entry (EXCLUDE or INCLUDE)
-
The information on the report for file entries are:
-
If it is an exclusion of the compression system
-
If it is a compression entry and the option code is (CP/CS/RP/RS)
-
If it is an intent (INCLUDE or EXCLUDE)
-
-
If the generic name is "*", all entries are listed, including those ones discussed above as well as program entries.
-
example
Examples :
{wrapper="1" role="DL"}
-
example 1
Lists information for entries beginning with DSN1
L DSN1* -
example 2
Lists all information from the reference cluster
L *
Use of INFVSUT1 with dataclasses
INFVSUT1 can be used to compress multiple files belonging to the same dataclass. An entry in the reference cluster will be created automatically for each file that is compressed.
note
This is only possible with SMS sequential files. The dataclass commands do NOT apply to partitioned files or sequential files which are not cataloged.
The following commands can be used:
-
Compression of SMS sequential files that belong to the same dataclass (INCLUDE :dataclas).
-
List information on entries in the reference cluster matching the dataclass (LIST :dataclas).
-
Remove a dataclass entry from the reference cluster (DELETE :dataclas).
Compression of sequential cataloged files belonging to
the same SMS dataclass.
\>\>\--+- INCLUDE -+:dataclas- CS \-\-\-\--+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| | +- CP \-\-\-\--+
+\-\-\-- I \-\-\--+ +- CP(LZ) -+
+- CP(HD) -+
+- RS \-\-\-\--+
+- RP \-\-\-\--+
+- RP(LZ) -+
+- RP(HD) -+
The INCLUDE (I) command is used to declare an intent to compress all sequential files belonging to the same SMS dataclass.
Compression will take place separately for each of the designated files on its next reload.
-
Description
{wrapper="1" role="DL"}
-
dataclas
is the dataclass of files which will be compressed.
-
CS/CP/RS/RP
is the compression option (See ADD command).
-
If the same dataclass was used previously in a command (INCLUDE), the entry is overridden with the new one.
-
Compression will take place only if the INFVSUT1 module can be called dynamically at the time of the OPEN.
-
The following files will be compressed:
-
Files that match the indicated dataclass.
-
Files which are under the control of SMS.
-
-
Compression will take place on the first reload of the file: first OPEN in OUTPUT mode except DISP=MOD. An entry will be added in the reference cluster for this file.
-
When the first OPEN OUTPUT occurs, the file is considered as compressed by the compression system.
-
The mechanism for program exclusion from compression/decompression is modified during the reload: the execution of a step whose name begins with INFAMS is the only one which will temporarily bypass the compression/decompression exit.
-
A message is printed to report the add of the file to the compression system.
-
Dataclasses must be used with care at a multi-CPU site: when the command takes effect on a CPU, the tables of the other CPU will NOT be updated until INFVSUT1 is run without SYSIN on that CPU unless INFVSUT1 was invoked with PARM=REFRESH (see chapter Controlling the interface with an automatic JCL).
-
note
In order to control the number of files to be compressed, make sure to NOT use an existing dataclass but to create a new one.
note
Dataclasses have priority over generic intents. If a file is eligible both for a dataclass and a generic intent, the dataclass will dominate.
- example
Example :
{wrapper="1" role="DL"}
-
example 1
Compresses all files with option CS belonging to the dataclass DC1
I :DC1 CSAs soon as the command is executed, sequential files belonging to the specified dataclass will be compressed on their first reload.
List dataclass entries from the reference cluster
\>\>\--+- LIST -+\-\-\-\-- :datacl* \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-- L \-\--+
The LIST (L) command is used to list information about entries in the reference cluster matching the specified dataclass.
-
Description
{wrapper="1" role="DL"}
-
:datacl*
is the generic dataclass name.
-
note
-
The information on the report for dataclasses is:
-
the name of the dataclass
-
its compression code: (CP/CS/RP/RS)
-
-
example
Examples :
{wrapper="1" role="DL"}
-
example 1
Lists information about the specified dataclass DC1
L :DC1 -
example 2
Lists all dataclass entries from the reference cluster
L :*
Suppression of a dataclass
\>\>\--+- DELETE -+\-- :dataclas \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--\>\<
| |
+\-\-- D \-\-\--+
The DELETE (D) command is used to remove a dataclass entry from the reference cluster.
-
Description
{wrapper="1" role="DL"}
-
:dataclas
is the name of the dataclass entry to be suppressed.
-
note
-
The entry is immediately suppressed.
-
example
Example :
{wrapper="1" role="DL"}
-
example 1
Suppresses the dataclass entry DC1
D :DC1
Activating compression for a sequential file
To use the compression mechanism, perform the following steps:
-
Identify the file for compression
-
Reload the file
Identify the file for compression
Execute the INFVSUT1 utility to add the new compressed data set names to the reference cluster. The section Use of INFVSUT1 with complete names tells how to use this utility.
Reload the file
Compression will take place on the next OPEN in OUTPUT mode (except if DISP=MOD). From now on, this command has the same effect as the ADD command.
The file is now compressed and all application programs will process the compressed dataset without any other modification.
The standard sort executes I/O with EXCPs that are not supported by INFOPAK MVS. The sort of compressed files must be executed under the control of the INFSORT or INFBSORT interface (ref to chapter Using INFSORT and INFBSORT).
Compress a PDS gradually with Compress in Place
Declare the PDS for Compression using RP or RS compression code.
Use INFVSUT1 to declare the PDS ready for compression. The section Use of INFVSUT1 with complete names tells how to use this utility.
Compress all members of a PDS with INFPCOPY
To use the compression mechanism, perform the following steps:
-
Rename the PDS
-
Redefine the PDS
-
Declare the PDS for compression
-
Reload the PDS by using INFPCOPY
These operations are discussed in the following sections.
Rename the PDS
This frees up the file dsname to become the name of the compressed PDS. The renamed PDS will be the input of INFPCOPY and the original name will be the compressed output.
Redefine the PDS
You can redefine the PDS by using ISPF/PDF or with a DD card in a job IEFBR14. At this point the PDS is empty and its PDS name may be added to the reference cluster.
Declare the PDS for compression
Use INFVSUT1 to declare the PDS ready for compression. The section Use of INFVSUT1 with complete names tells how to use this utility.
After these three steps, the file is empty and ready for compression.
Reload the PDS by using INFPCOPY
The reload is done by using the INFOTEL INFPCOPY utility. This utility allows you to copy a partitioned file into another one with the BPAM access method. IEBCOPY must NOT be used because it uses EXCPs directly and the output would be in uncompressed format. The section Using INFPCOPY tells how to use this utility.
The PDS is now compressed and all application programs will process the compressed dataset without any other modification.
Compressing a GDG file
Please follow the instructions below to compress an already existing GDG file.
1. Use a generic INCLUDE, i.e. INCLUDE DSN* CP. (DSN* is a generic dsname that corresponds to all GDS of a GDG). This generic entry will compress all new generations of the GDG, thus creating an entry within the INFOPAK reference cluster for each GDS. The old generations, that are not compressed, will not be processed by INFOPAK.
2. Once all existing generations of the GDG are compressed, add a PATTERN with the command ADD DSN% CP. The PATTERN DSNAME that is used (DSN%) must be the same as the generic dsname being used for the generic include, the * must be replaced by %. The new GDS that are created afterwards will not generate further entries in the INFOPAK cluster, but are processed by INFOPAK, for the WRITE as for the READ.
3. Next, use the command DELETE DSN*. This command only destroys the generic inclusion, but not the entries corresponding to the GDG that are currently compressed.
4. When all generations, created by step 1, have been destroyed, (after a complete rotation of the GDG), use the command PURGE DSN*. This command deletes all entries corresponding to the generic dsname DSN*, which files are no longer cataloged, from the reference cluster.
In order to compress a GDG when defining it, just create a PATTERN with the command ADD DSN% CP. All entries, that are created afterwards, will be compressed by INFOPAK.
note
The previous examples are illustrating the use of compression code CP, but they also apply to all other compression codes.
INFOPAK interactive
Primary menu
At this time, the steps in the INFOPAK installation manual should have been completed and the library containing the members PAKSTAR and PAKSTARC has been concatenated in your LOGON procedure under the ddname SYSPROC. (see installation manual: HP106).
These members invoke the interactive part of INFOPAK (PAKSTAR in REXX language, PAKSTARC in CLIST language).
INFOPAK VSAM/MVS interactive is an option of the primary menu of INFOPAK.
Primary menu of INFOPAK:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- I N F O P A K \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Select one of the following options:
0 DEFAULTS
1 TESTPAK VSAM/MVS - Simulation of the compression
2 TESTPAK DB2 - Simulation of the compression NOT AVAILABLE
3 INFOPAK VSAM/MVS - Managing the reference cluster
P CONFIDENTIAL CODE
T TUTORIAL
X FIN
Press END or RETURN to terminate
Option 3 displays the INFOPAK VSAM/MVS menu.
note
NOT AVAILABLE appears for products that are not installed or that are not found in the specified libraries.
INFOPAK VSAM/MVS MENU
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Reference cluster : INFOTEL.PROD
Interface of : PRODUCTION
Select one of the following options:
0 PARAMETERS - interface activation parameters
1 INTERFACE - status, activation, deactivation, update table
2 FILES - compression, modify compression modes, etc\...
3 GENERIC ENTRIES - include, exclude generic group of files
4 PATTERNS - pattern dsname compression
5 JCL CARDS - definition of JCL cards for automatic update
6 PROGRAMS - exclude programs from compression
7 JOBS - include authorized job. CRYPT.
8 DATACLASS - include dataclass to compression
Option 7 is only available when INFOCRYPT VSAM/MVS is installed.
Description of output fields
{wrapper="1" role="DL"}
-
Reference cluster
Name of the reference cluster corresponding to the current interface (test or production). The reference cluster names are defined in the PARMLIB INFOPAK member.
-
Interface of
Current interface type (TEST or PRODUCTION). The interface may be changed using the option 0. TEST indicates that the parameter DDN2 is to be used for each call to INFVSUT1.
note
The variable names ADMIN and USER of the INFOPAK PARMLIB member provide the following authorization:
-
Only an ADMINISTRATOR can ACTIVATE or DEACTIVATE the interface and modify the NUMBER OF ESTIMATED FILES parameter (option 0) used at activation time.
-
The INFOPAK USERS can update the reference cluster (TEST or PRODUCTION). Using option 0, they can switch the current cluster type and the automatic update parameter.
-
Everyone has the authorization to LIST the entries of the reference cluster (TEST or PRODUCTION).
Parameters (Option 0)
When selecting option 0 of the INFOPAK VSAM/MVS menu, the following panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - PARAMETERS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Production cluster : INFOTEL.CLUSTER.REFERENCE
Test cluster : INFOTEL.CLUSTER.TEST
Select the reference cluster ===\> P (Production, Test)
Automatic update of the tables in core ===\> Y (Yes/No)
Number of estimated files (compressed) ===\> 500
Description of input fields
{wrapper="1" role="DL"}
-
Reference cluster
This field indicates the type of cluster to be used. P indicates the production cluster and T indicates a test cluster.
-
Automatic update
When activating INFOPAK on several systems sharing the same reference cluster, this field specifies for each command the automatic update of the other systems by submitting JCL. If the update is not automatic, it may be necessary to use the ADJUST command (option 1) to update the tables in each system.
-
Number of files
This number is used to calculate the buffer size for the interface. This is necessary to improve the access to the file list in CSA during OPEN. 1k bytes for each 500 entries is recommended. The default value is 500 files.
Description of output fields
{wrapper="1" role="DL"}
-
Production cluster
Displays the contents of the variable REFPROD of the INFOPAK PARMLIB. This is the name of the production reference cluster.
-
Test cluster
Displays the contents of the variable REFTEST of the INFOPAK PARMLIB. This is the name of a test cluster.
Activation, Deactivation (Option 1)
When selecting option 1 of the INFOPAK VSAM/MVS menu, the following panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - ACTIVATION/DEACTIVATION \-\-\-\--
COMMAND ===\>
Reference cluster : INFOTEL.PROD
Interface of : PRODUCTION
Interface status : ACTIVE
Generic status : ACTIVE
Use the following primary commands:
ACTIVE to activate the interface INFOPAK VSAM/MVS
CANCEL to deactivate the interface INFOPAK VSAM/MVS
ADJUST to update the tables in core
GENSTOP to deactivate generic entry compression
GENSTART to activate generic entry compression
Description of output fields
{wrapper="1" role="DL"}
-
Reference cluster
Name of the current reference cluster. Cluster names are defined in the INFOPAK PARMLIB member.
-
Interface of
Current interface type (TEST or PRODUCTION). It can be changed by selecting the option 0.
-
Status
The value of this field can be ACTIVE if the interface is active or INACTIVE if it is inactive.
The interface must be active to access to other options of the INFOPAK VSAM/MVS main menu.
Description of the primary commands
note
Only administrators of the product are authorized to execute these commands.
{wrapper="1" role="DL"}
-
ACTIVE
to activate the interface.
-
CANCEL
to deactivate the interface. A confirmation panel is displayed.
-
ADJUST
to update the tables in core. When, for example, the reference cluster was updated on another system.
-
GENSTOP
to deactivate compression for generic entries in the reference cluster for new datasets.
-
GENSTART
to activate compression for generic entries in the reference cluster for new datasets.
note
GENSTART and GENSTOP do NOT apply to DECOMPRESSION!!
Confirmation of deactivation
The following panel is displayed when the command CANCEL has been entered:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION PANEL \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Confirm deactivation of the PRODUCTION interface
Press PF3 to cancel or ENTER to confirm.
Type PF3 to cancel the deactivation.
Type ENTER to deactivate the interface.
The files (Option 2)
Option 2 of the INFOPAK VSAM/MVS menu allows to display lists of the file entries for the reference cluster as well as lists of the catalog.
File selection
A selection panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - FILE SELECTION \-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Selection criteria ===\> INFO0.TEST*
List type ===\> CAT REF list of the reference cluster
CAT list of the cataloged files
Migrated files ===\> Y (Y/N) applicable if CAT selected
Note, use the primary command ACT to process any compression commands.
The selection criteria can be a full or a generic name. Its syntax is the same as that of PDF (3.4).
To list all entries of the reference cluster, enter '*' in the criteria field and specify REF in the list type field.
Description of input field
List type
The value can be one of the following:
{wrapper="1" role="DL"}
-
REF
displays the entries contained in the reference cluster and matching the selection criteria (actual compressed files, intentions or exclusions).
-
CAT
displays cataloged files matching the selection criteria and the contents of the reference cluster. The list can be limited to the unmigrated file by specifying the next parameter.
Migrated files
This field reduces the scope of cataloged files by not displaying migrated files. The default of this field is N (list without migrated files).
The primary command ACT displays the file command panel
File list
The following panel is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - FILE LIST \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Criteria : INFO0.TEST*
List type : CAT
Use the command ACT or the following selection code:
A to add a file, ( F add force a file), D delete, P purge entry,
R change the compression, I declare intent, X exclude a file.
S File name Comp Mode Intention Ctlg Type
. INFOTEL.TEST1 NO CP INCLUDE PDS
. INFOTEL.TEST2 NO RP INCLUDE NO
. INFOTEL.TEST3 NO CS INC.GEN SEQ
A INFOTEL.TEST4 KSDS
. INFOTEL.TEST5 YES RP EXCLUDE MIGR
. INFOTEL.TEST6 YES CP SEQ
******************************** BOTTOM OF DATA *******************************
Commands
{wrapper="1" role="DL"}
-
ACT
displays the file command panel.
-
LOCATE or L
locates a specified file in the list.
-
SFILE
sorts the list in ascending order using the file name.
-
SCOMP
sorts the list in descending order using the compression field. The list begins with the compressed files.
-
SMODE
sorts the list in ascending order using the compression mode.
-
SINC
sorts the list in descending order using the intention. The list begins with the included files.
-
SEXC
sorts the list in descending order using the intention. The list begins with the files without intention followed by the excluded files.
-
SCAT
sorts the list in descending order using the cataloged status. The list begins with the uncataloged files.
-
STYPE
sorts the list in ascending order using the file type.
Description of selection codes
Selection code S
The value can be one of the following:
{wrapper="1" role="DL"}
-
A
adds a KSDS, ESDS or PDS to the reference cluster. The file must be empty when using CP or CS compression codes.
-
F
forces to add a KSDS, ESDS or PDS to the reference cluster.
Warning: Before using the FORCE command, refer to the chapter Add a COMPRESSED DATASET to the reference cluster for the usage restrictions.
-
D
deletes the entry from the reference cluster. The entry must be an empty KSDS, ESDS or PDS. A confirmation panel is displayed.
-
P
removes a non-cataloged entry from the reference cluster. A confirmation panel is displayed.
-
R
modifies the definition of an empty KSDS, ESDS or PDS file which is already compressed. This action code is the way to change the compression option of a file.
-
I
specifies an intent to compress a file. The compression will take place on the next reload of the file.
-
X
excludes a file from compression. If the file is already compressed, the effect of the EXCLUDE is to identify it for decompression at its next reload. Otherwise, if the cluster does not exist, the exclusion is immediate.
note
Each value of the selection code corresponds to a batch command. For more information, see the manual HP102 for VSAM, HP105 for MVS.
Description of output fields
File name
Name of the entry.
Comp
If the value is YES, this field indicates that the entry is present in the reference cluster and that it is an actual compressed entry.
If the value is NO, this entry may be an intent (INCLUDE or EXCLUDE) or may be an uncompressed entry if CAT was selected.
Mode
Compression mode. The value can be one of the following:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
CP(LZ)
Lempel-Ziv optimal compression.
-
CP(HD)
Hardware driven optimal compression.
-
RP
smart optimal compression.
-
RP(LZ)
Lempel-Ziv smart optimal compression.
-
RP(HD)
Hardware driven smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
Intention
Indicates that an intent to compress corresponds to the file (value INCLUDE) or if the file is excluded (value EXCLUDE). The value INC.GEN specifies that the file is not contained in the reference cluster but it will be compressed because a generic intention exists.
Ctlg
The value NO indicates that the file is no longer cataloged. The selection code P removes the entry from the cluster.
Type
Displays the file type (SEQ PDS KSDS ESDS MIGR).
File commands
This panel may be displayed:
-
from the selection panel or from the file list panel, by entering the ACT command.
-
from the file list panel when using one of the following selection codes: A,D,P,R,I,X . In this case, the action code and the file name can not be modified.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - FILE COMMANDS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Action ===\> A
File name ===\> INFO0.TEST4
Compression mode ===\> Option ===\> (mode CP or RP only)
Action: A - compress a file D - remove compression (empty file)
P - purge non cataloged entry R - change the compression mode
I - add a compression intent X - exclude a file from compression
F - add force a file
Mode: CP - optimal compression RP - smart optimal compression
CS - fast compression RS - smart fast compression
Option: SD - standard (default) LZ - Lempel-Ziv HD - Hardware driven
Description of input fields
Action
The value can be one of the following:
{wrapper="1" role="DL"}
-
A
adds an ESDS, KSDS, PDS to the reference cluster.
-
F
forces to add an ESDS, KSDS, PDS to the reference cluster.
-
D
deletes an empty file from the reference cluster. A confirmation panel is displayed.
-
P
removes an entry from the reference cluster for a file which is no longer cataloged. A confirmation panel is displayed.
-
R
modifies the definition of an empty compressed file.
-
I
specifies an intent to compress a file. The compression will take place on the next reload of the file.
-
X
excludes a file from compression. If the file is already compressed, the effect of the EXCLUDE is to identify it for decompression at its next reload. Otherwise, if the cluster does not exist, the exclusion is immediate.
File name
Name of the file.
Compression mode
The value can be one of the following:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
RP
smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
Option
The value can be one of the following (mode CP or RP only):
{wrapper="1" role="DL"}
-
LZ
Lempel-Ziv optimal compression.
-
HD
Hardware driven optimal compression.
-
SD
This is the default value which indicates Standard Huffman compression.
Confirmation of the suppression
The following panel is displayed:
-
by the file list panel when the code D or P is selected.
-
by the command panel for D or P commands.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION PANEL \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Confirm deletion of the entry:
File name Comp Mode Intention Ctlg Type
INFO0.TEST1 NO CP INCLUDE PDS
Press PF3 to cancel or ENTER to confirm
Type PF3 to cancel the suppression.
Type ENTER to resume processing.
Confirmation of the exclusion
The following panel is displayed:
- by the list panel when selecting a compressed file with the code X. The corresponding line will be displayed.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION PANEL \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Confirm exclusion of the entry:
File name Comp Mode Intention Ctlg Type
INFOTEL.TEST6 YES CP SEQ
Press PF3 to cancel or ENTER to confirm
Type PF3 to cancel the exclusion.
Type ENTER to resume processing.
The generic entries (Option 3)
When selecting the option 3 of the INFOPAK VSAM/MVS menu, the list of the generic entries is displayed.
Generic entry list
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - GENERIC ENTRIES \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Use the command ACT or the following selection code:
D to delete a generic entry, I add a generic intent, X add a generic exclude,
L list the corresponding files.
S Entry name Mode Intention Exclusion
. INFO0.TEST1* CP INCLUDE XK
. INFO0.TEST1.NCP* EXCLUDE
. SYST.TEST.* CS INCLUDE XE XR
******************************** BOTTOM OF DATA *******************************
Commands
{wrapper="1" role="DL"}
-
ACT
displays the generic entry command panel.
-
LOCATE or L
locates a specified generic entry in the list.
-
SFILE
sorts the list in ascending order using the generic entry name.
-
SMODE
sorts the list in ascending order using the compression mode.
-
SINC
sorts the list in descending order using the intention. The list begins with the included generic entries.
-
SEXC
sorts the list in descending order using the intention. The list begins with the excluded generic entries.
Description of input fields
Selection code S
The value can be one of the following:
{wrapper="1" role="DL"}
-
D
deletes the entry from the reference cluster. A confirmation panel is displayed.
-
I
adds an intent to compress for a generic group.
-
X
excludes a file group from compression.
-
L
lists the files matching the generic group.
note
Each value of the selection code corresponds to a batch command. For more information, see the manual HP102 for VSAM, HP105 for MVS.
Description of output fields
Name of the generic group
Name of the generic group.
Mode
Compression mode. The value can be one of the following:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
CP(LZ)
Lempel-Ziv optimal compression.
-
CP(HD)
Harware driven optimal compression.
-
RP
smart optimal compression.
-
RP(LZ)
Lempel-Ziv smart optimal compression.
-
RP(HD)
Harware driven smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
-
AU
audit.
Intention
Specifies if an intent to compress correspond to the file group(value INCLUDE) or if the file group is excluded (value EXCLUDE).
Exclusion
Specifies the file types which are ignored by the intention. The value can be XK for KSDS, XE for ESDS or XR for RRDS.
Generic group commands
This panel is displayed from the generic group list panel:
-
by entering the ACT command.
-
by selecting a generic group with the selection codes D I X. The action code and the generic group name can not be modified.
\-\-\-\-\-\-\-- INFOPAK VSAM/MVS\-\-- GENERIC ENTRY COMMANDS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Action ===\> A
Generic group name ===\> INFO0.TEST5*
Compression mode ===\> CS Option ===\> (mode CP or RP only)
Exclusion ===\> ===\> (XK ex. KSDS, or XE ex. ESDS)
Action: I - add an intent to compress . X - exclude a generic group
D - delete an intention
Mode: CP - optimal compression RP - smart optimal compression
CS - fast compression RS - smart fast compression
AU - audit
Option: SD - standard (default) LZ - Lempel-Ziv HD - Hardware driven
Description of input fields
Action
The value can be one of the following;
{wrapper="1" role="DL"}
-
I
to add an intent to compress a file group.
-
X
to exclude from compression a group file.
-
D
to delete an intention from the reference cluster. A confirmation panel is displayed.
Name of the generic group
specifies the name of the generic group.
Compression mode
The value can be one of the following:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
RP
smart optimal compression.
-
CS
fast compression.
-
RS
smart fast smart.
-
AU
audit.
Option
The value can be one of the following (mode CP or RP only):
{wrapper="1" role="DL"}
-
LZ
Lempel-Ziv optimal compression.
-
HD
Hardware driven optimal compression.
-
SD
This is the default value which indicates Standard Huffman compression.
Exclusion
Specifies the file types which are ignored by the intention. The value can be one of the following: XE to exclude ESDS, XK to exclude KSDS. The RRDS files are automatically ignored.
Confirmation of the suppression
The following panel is displayed:
-
from the generic group list panel, selecting a generic group with the code D.
-
from the generic group command panel, entering D in the action code.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION PANEL \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Confirm deletion of the entry:
Name of the generic entry: Mode Intention Exclusion
INFO0.TEST1* CP INCLUDE XK
Press PF3 to cancel or ENTER to confirm
Pressing PF3, the suppression is canceled.
Pressing ENTER, the action is processed.
The pattern-dsname (Option 4)
When selecting the option 4 of the INFOPAK VSAM/MVS menu, the list of the pattern-dsnames is displayed.
Pattern-dsname list
\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - LIST OF PATTERN-DSNAME \-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Use the command ACT or the following selection code:
D to delete
S Name of the pattern-dsname Mode
. INFO0.% CP
. SYST.INFOTEL.% CS
******************************** BOTTOM OF DATA *******************************
Commands
{wrapper="1" role="DL"}
-
ACT
displays the pattern-dsname command panel.
-
LOCATE or L
locates a specified pattern-dsname in the list.
-
SPATT
sorts the list in ascending order using the pattern-dsname.
-
SMODE
sorts the list in ascending order using the compression mode.
Description of input fields
Selection code S
The possible value is:
{wrapper="1" role="DL"}
-
D
to remove a pattern-dsname from the reference cluster. A confirmation panel is displayed.
note
Each value of the selection code corresponds to a batch command. For more information, see the manual HP102 for VSAM, HP105 for MVS.
Description of output fields
Name of the pattern-dsname
specifies the name of the pattern-dsname.
Mode
Compression mode. The possible values are:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
CP(LZ)
Lempel-Ziv optimal compression.
-
CP(HD)
Hardware driven optimal compression.
-
RP
smart optimal compression.
-
RP(LZ)
Lempel-Ziv smart optimal compression.
-
RP(HD)
Hardware driven smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
Pattern-dsname commands
This panel is displayed from the pattern-dsname list panel by entering the ACT command.
\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - PATTERN-DSNAME COMMANDS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Action ===\> A
Pattern-dsname ===\> INFO0.T%
Compression mode ===\> CS Option ===\> (mode CP or RP only)
Action: A - add a pattern-dsname D - delete a pattern-dsname
Mode: CP - optimal compression RP - smart optimal compression
CS - fast compression RS - smart fast compression
Option: SD - standard (default) LZ - Lempel-Ziv HD - Hardware driven
Description of input fields
Action
The possible values are:
{wrapper="1" role="DL"}
-
A
to add a pattern-dsname in the reference cluster.
-
D
to remove a pattern-dsname from the reference cluster. A confirmation panel is displayed.
Pattern-dsname
specifies the name of the pattern-dsname.
Compression mode
The possible values are:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
RP
smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
Option
The value can be one of the following (mode CP or RP only):
{wrapper="1" role="DL"}
-
LZ
Lempel-Ziv optimal compression.
-
HD
Hardware driven optimal compression.
-
SD
This is the default value which indicates Standard Huffman compression.
Confirmation of the suppression
The following panel is displayed:
-
from the pattern-dsname list panel, selecting a pattern-dsname with the code D.
-
from the pattern-dsname command panel, entering D in the action code.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION OF THE SUPPRESSION \-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Confirmation of the suppression from compression of the pattern-dsname:
INFO0.T%
Press PF3 to cancel or ENTER to confirm
Pressing PF3, the suppression is canceled.
Pressing ENTER, the action is processed.
List of JCL cards (Option 5)
When selecting the option 5 of the INFOPAK VSAM/MVS menu, the list of the JCL cards is displayed. Only the administrator can modify it.
JCL cards list
The following screen is displayed:
\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - JCL CARDS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Use the command CAN to cancel.
The selection codes follow the ISPF syntax.
*******************************************************************************
\.... //INFOPAKP JOB \'REFRESH\',CLASS=C,MSGCLASS=S,NOTIFY=PAKADM
\.... //STEP EXEC PGM=INFVSUT1
\.... //SYSUT1 DD DSN=INFOTEL.PROD,DISP=OLD
\.... //SYSPRINT DD SYSOUT=*
******************************** BOTTOM OF DATA *******************************
The TSO command COPY can be used to copy a JCL member of a library.
note
The command CANCEL allows to cancel the update.
The programs (Option 6)
When selecting the option 6 of the INFOPAK VSAM/MVS menu, the list of the programs is displayed.
\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - PROGRAM LIST \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Use the command ACT or the following selection code:
D to delete a program
S Program name Function code
. INPR100 IN
. GVRESTOR EX
. ADRDSSU XX
. ARCCTL XX
. JSXMAIN XX
******************************** BOTTOM OF DATA *******************************
Commands
{wrapper="1" role="DL"}
-
ACT
displays the program command panel.
-
LOCATE or L
locates a specified program in the list.
-
SPROG
sorts the list in ascending order using the program name.
-
SMODE
sorts the list in descending order using the function code.
Description of input fields
Selection code S
The possible values are:
{wrapper="1" role="DL"}
-
D
to remove a program from the reference cluster. A confirmation panel is displayed.
note
Each value of the selection code corresponds to a batch command. For more information, see the manual HP102 for VSAM, HP105 for MVS.
Description of output fields
Program name
specifies the name of the program. It can be a full or a generic name.
Function code
The possible values are:
{wrapper="1" role="DL"}
-
IN
to specify that, during the execution of the program, the access method to the compressed files will be tested.
-
XX
to specify the full bypass of the interface during the execution of the program.
-
EX
to specify the bypass of the interface during the execution of the program except for intent processing.
Program commands
This panel is displayed from the program list panel when entering the ACT command.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - PROGRAM COMMANDS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Action ===\> A
Program name ===\> PROGA
Function code ===\> IN IN inclusion (test access method),
EX exclude except for intents,
XX full exclude
Action: A - add a program D - delete a program
Description of input fields
Action
The possible values are:
{wrapper="1" role="DL"}
-
A
to add a program in the reference cluster.
-
D
to remove a program from the reference cluster. A confirmation panel is displayed.
Program name
specifies the name of the program.
Function code
The possible values are:
{wrapper="1" role="DL"}
-
IN
to specify that during the execution of the program the access method to the compressed files will be tested.
-
XX
to specify the full bypass of the interface during the execution of the program.
-
EX
to specify the bypass of the interface during the execution of the program except for intent processing.
Confirmation of the suppression
The following panel is displayed:
-
from the program list panel, selecting a program with the code D.
-
from the program command panel, entering D in the action code.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION OF THE SUPPRESSION \-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Confirmation of the suppression from compression of the program:
INFTPR
Press PF3 to cancel or ENTER to confirm
Pressing PF3, the suppression is canceled.
Pressing ENTER, the action is processed.
The dataclasses (Option 8)
When selecting option 8 of the INFOPAK VSAM/MVS menu, the list of dataclasses will be displayed.
Dataclass list
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - DATACLASS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\> SCROLL ===\> CSR
Interface : PRODUCTION
Use the command ACT or the following selection code:
D delete a dataclass entry, I add a dataclass intent, ? information
S Dataclass Mode Intention Exclusion
. DTCLASS1 CP INCLUDE XK
. DTCLASS3 CS INCLUDE XE XR
******************************** BOTTOM OF DATA *******************************
Commands
{wrapper="1" role="DL"}
-
ACT
displays the dataclass command panel.
-
LOCATE or L
locates a specified dataclass in the list.
-
SDATA
sorts the list in ascending order using the dataclass name.
-
SMODE
sorts the list in ascending order using the compression mode.
Description of input fields
Selection code S
The value can be one of the following:
{wrapper="1" role="DL"}
-
D
deletes the entry from the reference cluster. A confirmation panel will be displayed.
-
I
adds an intent to compress for a dataclass.
-
?
displays information about the dataclass.
note
Each value of the selection code corresponds to a batch command. For more information, see the manual HP102 for VSAM, HP105 for MVS.
Description of output fields
Name of the dataclass
specifies the name of the dataclass.
Mode
specifies the compression mode. The value can be one of the following:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
CP(LZ)
Lempel-Ziv optimal compression.
-
CP(HD)
Harware driven optimal compression.
-
RP
smart optimal compression.
-
RP(LZ)
Lempel-Ziv smart optimal compression.
-
RP(HD)
Harware driven smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
-
Intention
specifies that all files that match the dataclass will be compressed at the next reload.
-
Exclusion
specifies the file types which are ignored by the intention. The value can be XK for KSDS, XE for ESDS or XR for RRDS.
Dataclass commands
The following panel will be displayed when the ACT command or the selection code I have been entered on the dataclass list panel:
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - DATACLASS COMMANDS \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Action ===\> I
Name of the dataclass ===\> DTCLASS4
Compression mode ===\> CS Option ===\> (mode CP or RP only)
Key version ===\> (encryption only)
Key ===\> (encryption only)
Exclusions ===\> ===\> ( XK ex. KSDS, or XE ex. ESDS)
Action: I - add a dataclass intent
D - delete a dataclass entry
Mode: CP - optimal compression RP - smart optimal compression
CS - fast compression RS - smart fast compression
CX - external compression RX - smart external compression
Option: SD - standard (default) LZ - Lempel-Ziv HD - Hardware driven
Description of input fields
Action
The value can be one of the following;
{wrapper="1" role="DL"}
-
I
to add a dataclass intent.
-
D
to delete a dataclass entry. A confirmation panel will be displayed.
Name of the dataclass
specifies the name of the dataclass.
Compression mode
The value can be one of the following:
{wrapper="1" role="DL"}
-
CP
Huffman optimal compression.
-
RP
smart optimal compression.
-
CS
fast compression.
-
RS
smart fast compression.
Option
The value can be one of the following (mode CP or RP only):
{wrapper="1" role="DL"}
-
LZ
Lempel-Ziv optimal compression.
-
HD
Hardware driven optimal compression.
-
SD
This is the default value which indicates Standard Huffman compression.
Exclusion
specifies the file types which are ignored by the intention. The value can be one of the following: XE to exclude ESDS, XK to exclude KSDS. The RRDS files are automatically ignored.
Confirmation of the suppression
The following panel will be displayed:
-
from the dataclass list panel, selecting a dataclass with the code D.
-
from the dataclass command panel, entering D in the action code.
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-- INFOPAK VSAM/MVS - CONFIRMATION PANEL \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\--
COMMAND ===\>
Interface : PRODUCTION
Confirm deletion of the dataclass:
Dataclass Mode Intention Exclusion
DTCLASS1 CP INCLUDE XK
Press PF3 to cancel or ENTER to confirm.
Pressing PF3, the suppression is canceled.
Pressing ENTER, the action is processed.
Using INFPCOPY
INFPCOPY must be used to load the uncompressed PDS members into the compressed PDS.
You can run INFPCOPY as follows:
//jobname JOB \...\...\.....
//stepname EXEC PGM=INFPCOPY,PARM=number-of-lines
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=name-of-the-PDS-to-be-compressed,DISP=OLD
//SYSUT2 DD DSN=name-of-the-compressed-PDS,DISP=OLD
//SYSIN DD *
Member name
\...\...
Member name
/*
The parameter"PARM=number-of-lines" allows you to indicate the number of members that are specified in the SYSIN. As a default, 2000 members can be specified. Only a numeric value can be specified for the PARM parameter.
SYSUT1 refers to the PDS which contains the members to be compressed.
SYSUT2 refers to the PDS which will contain the compressed members.
These two files must have the same format.
SYSPRINT will contain the messages resulting from execution.
SYSIN is optional. Without a SYSIN card, all members will be copied in compressed form into the output PDS. With SYSIN cards, only the members indicated in SYSIN will be copied.
The command cards are coded as follows:
Member name
is the complete or generic name of members (for example: MEMB*).
note
The output PDS (SYSUT2) must not contain the members to be copied, INFPCOPY only adds members.
The list of the members which have been copied is printed on SYSPRINT.
The INFPCOPY utility replaces the standard IEBCOPY utility. IEBCOPY must NOT be used to make copies from an uncompressed PDS into a compressed PDS. However, after the initial load of the compressed PDS, IEBCOPY may be used to copy a compressed PDS into a compressed PDS with the same format.
note
The alias entries are not copied, meaning that the alias is not created in the PDS output data set.
Sample:
//jobname JOB \...\...\...\...\...\...\...
//STEP1 EXEC PGM=INFPCOPY
//STEPLIB DD DSN=name-of-the-library-containing-INFPCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=FILE1.PDS,DISP=OLD
//SYSUT2 DD DSN=FILE2.PDS,DISP=OLD
//SYSIN DD *
MEMB1*
MEMB205
MEMB6*
/*
All members with the generic names MEMB1 or MEMB6 and the member MEMB205 will be copied from FILE1.PDS into FILE2.PDS.
Using INFSORT and INFBSORT
Introduction
INFSORT or INFBSORT invoke your site's standard sort utility with the exits for compression and decompression activated.
INFSORT or INFBSORT should be used when sorting compressed files because the standard sort uses the EXCP access method which is not supported by INFOPAK.
Both module can be used with uncompressed files. In this case, they call the standard sort with XCTL using the program name ICEMAN.
INFSORT
Description
INFSORT uses the SORT extended parameter list and specifies the E15/E35 exits to decompress or compress files under the control of INFOPAK.
When INFSORT is called dynamically (with ATTACH, LINK, XCTL macros):
-
INFSORT calls the standard ICEMAN sort with XCTL,
-
No interception takes place but usually COBOL or PL/1 dynamic calls utilize INPUT or OUTPUT procedure that are fully compatible with INFOPAK.
When INFSORT or alias is invoked with JCL:
-
Determines if the input or output files are under the control of INFOPAK MVS.
-
Converts the SYSIN into an extended parameter list and requests the call of the E15, E32 and/or E35 exit contained in the INFSORT module.
The input output operations of these exits are totally compatible with INFOPAK MVS.
-
If the SYSIN already contains the E15 and/or E35 exit, INFSORT will call this exit using standard conventions.
INFSORT can be renamed to SORT or any other name. Within INFSORT is CSECT INFSDATA. CSECT INFSDATA contains two eight byte character values that can be zapped.
-
location 00 in csect INFSDATA contains the name of the sort to INVOKE, with a default of ICEMAN.
-
location 08 in csect INFSDATA should be the name assigned to INFSORT when you RENAMED it. The default is SORT.
Please call your Infotel Technical Support if you need help to rename INFSORT.
Restrictions
-
The use of a parameter in the EXEC card is not supported. INFSORT will abend (U4020) if a parameter is specified and the files are compressed.
-
The DFSPARM DD card is not supported (U4020).
-
The MERGE or COPY operations on compressed files are authorized except the operation MERGE FIELDS=COPY because it is not processed in the same way by the different sorts. This operation will cause an abend 4020.
-
The execution SYSOUT is different than the one created by the standard sort because INFSORT creates an extended parameter list.
-
Input null files are not supported (QSAM restriction).
note
When the output file is NEW and when the DCB does not contain the file format (BLKSIZE, LRECL, RECFM), these characteristics are created by INFSORT.
note
The specific error messages of INFSORT are written under the DDNAME SYSOUT. These messages are listed in the documentation HP107 (Messages and Codes).
Example
The execution of INFSORT can be requested with the following JCL:
//jobname JOB ...........
//stepname EXEC PGM=INFSORT or EXEC PGM=SORT (if renamed in SORT)
//SORTIN DD DSN=input_file_name,DISP=OLD
//SORTOUT DD DSN=output_file_name,DISP=(,CATLG)
//SORTWK01 DD SPACE=...,UNIT=...
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=.....
/*
INFBSORT
Description
INFBSORT selects the BSAM execution parameter of the SORT to force the use of the BSAM access method when processing compressed files.
When dynamically called (with ATTACH, LINK, XCTL macros):
-
INFBSORT calls the standard ICEMAN sort with XCTL,
-
No interception takes place but usually COBOL or PL/1 dynamic calls use INPUT or OUTPUT procedures that are fully compatible with INFOPAK.
INFBSORT or alias invoked with JCL:
-
Determines if the input or output files are under the control of INFOPAK MVS.
-
Add BSAM in the EXEC parameter and calls ICEMAN using XCTL.
INFBSORT can be renamed to SORT or any other name. Within INFBSORT is CSECT INFSDATA. CSECT INFSDATA contains one eight byte character value that can be zapped.
- location 00 in csect INFSDATA contains the name of the sort to INVOKE, with a default of ICEMAN.
Restrictions
-
The DCB parameter NCP cannot be overwritten. Its value is usually 5.
-
BSAM is used for both SORTIN and SORTOUT even if there is just one compressed file.
-
In a concatenation, nuls file must precedes non-nul files.
note
Before using INFBSORT, verify that the sort of your site supports the BSAM parameter in the EXEC parm.
note
INFBSORT does not issue any messages.
Example
The execution of INFBSORT can be requested with the following JCL:
//jobname JOB ...........
//stepname EXEC PGM=INFBSORT or EXEC PGM=SORT (if renamed in SORT)
//SORTIN DD DSN=input_file_name,DISP=OLD
//SORTOUT DD DSN=output_file_name,DISP=(,CATLG)
//SORTWK01 DD SPACE=...,UNIT=...
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=.....
/*
Decompressing a file with the interface deactivated
The INFVSDCP module allows decompression of VSAM, PDS or sequential files when the compression interface is deactivated. If you wish to use the program INFVSDCP when the compression interface is active, use a STEPNAME of INFAMS. The use of INFVSDCP for PDS and sequential files requires INFOPAK MVS, while the use of INFVSDCP for VSAM files requires INFOPAK VSAM and the VSAM files must be on DISK.
INFVSDCP use
To decompress a file when the INFOPAK cluster is available and contains the entry for the cluster to be decompressed, execute INFVSDCP as follows:
//jobname JOB ................
//stepname EXEC PGM=INFVSDCP
//PRINT DD SYSOUT=*
//SYSUT1 DD DSN=reference-cluster-name,DISP=OLD
//SYSUT2 DD DSN=file-to-decompress,DISP=OLD
//SYSUT3 DD DSN=output-file-name,DISP=NEW,....
************************************************************************************************************************************
* INFOTEL I N F O P A K V S A M / I N F O P A K M V S 08/15/90 : 16 H 47 PAGE : 1 *
* VERSION : *
************************************************************************************************************************************
nnnnnnn RECORDS DECOMPRESSED BY INFVSDCP
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
************************************************************************************************************************************
* INFOPAK SOFTWARE PROPERTY OF INFOTEL *
************************************************************************************************************************************
To decompress a file when the INFOPAK cluster is NOT available, execute INFVSDCP as follows:
//jobname JOB ................
//stepname EXEC PGM=INFVSDCP,PARM='p1'
//PRINT DD SYSOUT=*
//SYSUT2 DD DSN=file-to-decompress,DISP=OLD
//SYSUT3 DD DSN=output-file-name,DISP=NEW,....
The parameters are defined as follows:
{wrapper="1" role="DL"}
-
p1
Cluster compression code (CS,CP,RP,RS).
************************************************************************************************************************************
* INFOTEL I N F O P A K V S A M / I N F O P A K M V S 08/15/90 : 16 H 47 PAGE : 1 *
* VERSION : *
************************************************************************************************************************************
INPUT PARAMETER : cc
nnnnnnn RECORDS DECOMPRESSED BY INFVSDCP
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
************************************************************************************************************************************
* INFOPAK PROPERTY OF INFOTEL *
************************************************************************************************************************************
note
If the wrong compression option is selected in the above step, data will be decompressed but, of course, will be in error. If the option is used, the decompressed data should be viewed for accuracy before being used in processing.
note
The file SYSUT3 is a sequential file and will contain, after the execution, the SYSUT2 records in decompressed format.
note
If the file SYSUT2 is a sequential file (PDS) the file SYSUT3 must be a sequential file (PDS) whose characteristics must be the same as that of SYSUT2 (BLKSIZE, LRECL, RECFM).
Using INFVSQ0
INFVSQ0 is an interface which allows decompression of VSAM compressed records (MVS blocks) or creation of VSAM compressed records (MVS blocks). The purpose of this interface is the management of VSAM records containing both compressed fields (data) and uncompressed fields (key, alternate keys) or blocks compressed according to INFOPAK MVS.
For example, it may be used when working with a sequential copy of the compressed VSAM file. It may also be used when reading a compressed FAVER backup copy with a COBOL program.
INFVSQ0 includes four entry points for use by user applications:
-
ICVOPEN: creates a pointer to the description of the file (KEYs LOCATION, RECSIZE, BLKSIZE, RECFM ETC).
-
ICVGET: decompresses a record/block using the pointer created by ICVOPEN.
-
ICVPUT: compresses a record/block using the pointer created by ICVOPEN.
-
ICVCLOSE: frees the description of the file using the pointer created by IVCOPEN.
-
A user program would contain the following macros as an example: OPEN, ICVOPEN, GET, ICVGET, ICVPUT, PUT, ICVCLOSE, and CLOSE.
ICVOPEN
This is the initialization procedure of the interface. The compression/decompression requires a model in order to decompress or compress a record/block. The purpose of this procedure is the acquisition of information about the model either in the reference cluster or in the VSAM catalog (VSAM only).
Call parameters :
-
Fullword pointer to Address of description to the file (ADV).
-
DSNAME:pointer to a 44 byte dataset name. This is the dsname of the file that will be used as a model during compression or decompression of the records/blocks. Information about this dsname can be found either in the reference cluster (if an entry for the dsname is present) or in the VSAM catalog (VSAM file only).
-
WC pointer to 3 bytes:
the Working Code(3 bytes) contains one of the values listed below:
-
DDN indicates that the parameter NAME contains the ddname of the reference cluster. This parameter should be used when the reference cluster is available and when the dsname specified by the DSNAME parameter is listed as a compressed file in that cluster. In this case information about dsname is extracted from the reference cluster and NOT from the VSAM catalog.
-
DSN indicates that the parameter NAME contains the dsname of the reference cluster. The same restrictions as those for DDN apply to this option.
-
CP indicates that the high compression/decompression module will be used to process the record/block and information about the record will be extracted from the VSAM catalog (VSAM only). When decompressing a record/block, be sure that the correct compression level is specified.
-
CS indicates that the low CPU compression/decompression module will be used during the process of the records/blocks. The same restrictions as those for CP apply to this option.
-
RP indicates that the smart version of the high compression module will be used to process the records/blocks. The same restrictions as CP apply to this option.
-
RS indicates that the smart version of the low CPU compression module will be used during the process of the records/blocks. The same restrictions as CP apply to this option.
-
The smart compression modules RP and RS can differentiate between compressed and uncompressed records/blocks and invoke decompression and compression only as required. This prevents inadvertent decompression of uncompressed data and compression of compressed data. This also allows compressed and uncompressed data to exist in the same dataset. A dataset that uses the RP or RS smart compression supports gradual compression through updates or inserts.
-
-
Pointer to 8 or 44 byte ddname or dsname of the reference cluster depending on the value of the parameter WC. Irrelevant if WC= CP, CS, RP or RS
-
PARM for VSAM record: pointer to fullword containing Maximum length (uncompressed) of the records to compress or decompress.
PARM for MVS blocks, pointer to 5 bytes which contain: BLKSIZE(2 bytes)+LRECL(2 bytes)+RECFM(1 byte) of the model file
example
Assembler example :
CALL ICVOPEN,(ADV,DSNAME,NAME,LGMAX),VL
note
If WC= CP, CS, RP or RS do not code the parameter NAME.
ICVOPEN return code
-
0 --> OK
-
4 --> trial expired
-
8 -->
-
R0=0 : 3 parameter (WC) incorrect.
-
R0=4 : error during allocation of the reference cluster.
-
R0=8 : error during open of the reference cluster.
-
R0=12 : dsname not listed in the reference cluster or declared as an intent to compress.
-
R0=16 : catalog access error.
-
ICVCLOSE
This procedure ends the use of the interface for a particular file. It frees the data areas associated with the file.
Call parameter
-
Address of the description of the file.
the pointer that was assigned by ICVOPEN
example ::Assembler example:
CALL ICVCLOSE,(ADV),VL
ICVCLOSE return code
- 0 --> OK
ICVGET
This is the procedure used to decompress a record/block.
Call parameters
-
Address of the description of the file.
the pointer that was assigned by ICVOPEN
-
address of the INPUT data area to be decompressed.
-
pointer to LINPUT (1 word) length of the data area to be decompressed.
-
pointer to OUTPUT buffer that will receive the decompressed record/block.
-
pointer to fullword containing(1 word) maximum length of the output buffer.
example
Assembler example :
CALL ICVGET, (address,INPUT,LINPUT,OUTPUT,LOUTPUT),VL
ICVGET return codes
-
0 --> OK
-
8 --> Output buffer too small (truncation)
ICVPUT
This is the procedure used to compress a record/block.
Call parameters
-
Address of the description of the file.
the pointer that was assigned by ICVOPEN
-
pointer to INPUT data area to be compressed.
-
pointer to LINPUT (fullword) length of the data area to be compressed.
-
pointer to OUTPUT buffer that will receive the compressed record/block.
-
pointer to LOUTPUT (fullword) maximum length of the output buffer.
example
Assembler example :
CALL ICVPUT, (address,INPUT,LINPUT,OUTPUT,LOUTPUT),VL
ICVPUT return codes
-
0 --> OK
-
8 --> Output buffer too small (truncation)
Using INFVCFL0
This utility is used to indicate if a file is under control of INFOPAK VSAM/MVS. Under control means that the requests for writing (OUTPUT) or reading (INPUT) will be intercepted and processed according to the specifications defined in the previous chapters.
For example, if an intent to compress is defined for a cluster, this cluster:
-
is not under control during a read or an update (MODE INPUT),
-
will be under control at the next reload (MODE OUTPUT).
This program may be called using three different methods:
-
program call,
-
JCL or CLIST/REXX call or
-
Called under ISPF
Program call
All parameters are optional.
Call parameters:
TYPE (3 characters)
contains one of the following values:
{wrapper="1" role="DL"}
-
DDN
indicates that the file(s) to be tested are allocated by a ddname.
DDN is the default value.
-
DSN
indicates that a dsname of the file to be tested is specified.
NAME (8 or 44 characters)
depending on the value of the first parameter (TYPE), NAME contains a ddname or dsname.
This parameter is mandatory if TYPE=DSN was specified.
The default value is INFTST if TYPE=DDN.
MODE (1 character)
this parameter specifies the mode in which the selected file(s) will be tested. If coded, it contains one of the following values:
{wrapper="1" role="DL"}
-
I
the file(s) will be tested in the conditions of read or update access.
I is the default value.
-
O
the file(s) will be tested for pending total reload.
Assembler sample
CALL INFVCFL0,( TYPE , NAME , MODE ),VL
JCL or CLIST/REXX call
INFVCFL0 may also be called by JCL. When called without parameters, it assumes the default values as the three parameters:
-
TYPE=DDN ddname specified.
-
NAME=INFTST, a DD card for this ddname must be specified.
-
MODE=I the ddname INFTST will be tested for open input or an open for update.
The default values TYPE and NAME may be changed by using the parameter option of the JCL (REXX/CLIST). The syntax is as follows:
{wrapper="1" role="DL"}
-
PARM='DDN,ddname'
to test a ddname allocated by the JCL or CLIST/REXX program.
-
PARM='DSN,dsname'
to test a dsname.
example
Examples :
Test the ddname INFTST containing two dataset names.
//jobname JOB \...\...\...\...\...\...\...;
//stepname EXEC PGM=INFVCFL0
//STEPLIB DD DSN=library-name-containing-INFVCFL0
//INFTST DD DSN=dsname1-to-be-tested,DISP=SHR
// DD DSN=dsname2-to-be-tested,DISP=SHR
Test the ddname SYSUT1.
//jobname JOB \...\...\...\...\...\...\...;
//stepname EXEC PGM=INFVCFL0,PARM=\'DDN,SYSUT1\'
//STEPLIB DD DSN=library-name-containing-INFVCFL0
//SYSUT1 DD DSN=dsname1-to-be-tested,DISP=SHR
Test the dsname USER1.FILE1
//jobname JOB \...\...\...\...\...\...\...;
//stepname EXEC PGM=INFVCFL0,PARM=\'DSN,USER1.FILE1\'
//STEPLIB DD DSN=library-name-containing-INFVCFL0
Calling INFVCFL0 under ISPF
If the open interface is active and if INFVCFL0 is called under ISPF with a dsname as a parameter, it returns three ISPF variables: PAKCOMP, PAKTCOMP and PAKOPCP. Return codes and reason codes are also returned. The content of those variables are as follows:
{wrapper="1" role="DL"}
-
PAKCOMP=Y
the dsname is compressed.
-
PAKCOMP=N
the dsname is not compressed.
-
PAKTCOMP=CP
the compression method is CP.
-
PAKTCOMP=CS
the compression method is CS.
-
PAKTCOMP=RP
the compression method is RP.
-
PAKTCOMP=RS
the compression method is RS.
-
PAKOPCP=LZ
indicates Lempel-Ziv hardware compression (CP or RP only).
-
PAKOPCP=HD
indicates Hardware driven compression (CP or RP only).
-
PAKOPCP=blank
for other compression modes.
A sample of a REXX program using INFVCFL0 under ISPF was created at installation time in the library INFSAMP(member CFLSMP).
INFVCFL0 return codes
The return codes generated by INFVCFL0 are as follows:
0
the file will be under control of the INFOPAK open interface after the type of open specified by the MODE parameter.
{wrapper="1" role="DL"}
-
reason code = 1
Indicates CS compression.
-
reason code = 2
Indicates CP compression.
-
reason code = 5
Indicates RS compression.
-
reason code = 6
Indicates RP compression.
-
reason code = 255
Indicates mixed compression or compressed and uncompressed datasets concatenated together.
4
the file will NOT be under the control of the INFOPAK open interface after the type of open specified by the MODE parameter.
{wrapper="1" role="DL"}
-
reason code
Not relevant.
8
interface not active.
{wrapper="1" role="DL"}
-
reason code
Not relevant.
12
parameter error.
16
the specified DDNAME is not allocated.
{wrapper="1" role="DL"}
-
reason code
Not relevant.
ABEND 4002
the file specified is under control of more than one interface.
If a ddname is used with several dsnames, the ddname will be under control of the open interface if one of the dataset names is compressed or has to be compressed depending on mode.
The third parameter (MODE) has no effect on a PDS. Indeed, it is NOT possible to include or exclude a PDS.
Security recommendations
This section provides a list of recommendations to be followed when installing and using INFOPAK in MVS environments. The purpose of these recommendations is to prevent incidents which may affect the integrity of the data.
General recommendations
-
The reference cluster and program INFVSUT1 should be protected with your security system, ACF2, RACF, ETC...
-
The reference cluster should be included in your backup procedures.
-
To protect the reference cluster the reference cluster contains the list of compressed files. No programs other than INFVSUT1 should be authorized to update this cluster.
-
To protect from unauthorized use of INFVSUT1: this program provides the INFOPAK activation and deactivation mechanism. Therefore, it should be used by authorized personnel only.
-
Never inadvertently deactivate INFOPAK : when INFOPAK is in a deactivated state, the system assumes all files are uncompressed. Therefore, access to compressed files will almost always result in an abend.
In production be sure to include an activation procedure in the IPL. Never deactivate the INFOPAK OPEN interface except to apply maintenance to INFOPAK.
When using multiple systems with shared disk
-
Use only one reference cluster shared by all systems.
-
Updates to the reference cluster automatically update the system on which the update is processed. The other systems must be updated as soon as possible by executing INFVSUT1 without input (SYSIN).
How To Remove Compression from a dataset
The removal of compression for a PDS or sequential dataset requires the use of the standard program IEBGENER for sequential, IEBCOPY for PDS, and the INFOTEL INFVSUT1 product. This removal also requires that the INFOTEL MVS interface be activated.
Removing compression from a dataset
To remove compression, perform the following steps:
-
Copy the compressed dataset to a uncompressed dataset with a different name
-
Delete the compressed dataset
-
Delete the compressed dataset using INFVSUT1
-
Rename the uncompressed dataset
The dataset is now decompressed and its name has been deleted from the reference cluster.
note
If the INFOPAK interface is not active, INFVSDCP can be used to decompress the dataset.
note
See the list * command to identify dataset status, compressed, excluded, etc..
Special considerations
How and when to activate the INFOTEL OPEN INTERFACE ?
The interface may be activated at any time.
Activation at IPL time should be used for the product in production environments. The interface must be activated before the execution of any software that uses compressed files. For example, the INFOPAK interface should be activated before CICS activation.
In a test situation, the interface may be activated between IPLs.
Activation of the interface enables the compression mechanism for the files identified in the reference cluster.
Considerations with multiple systems ?
If the reference cluster is accessed by several systems, the CSA table must be identical for each system. Do as below:
-
If the INFVSUT1 program is run with PARM=REFRESH, then the refresh is automatic if your reference cluster contains the jcl necessary for the notification.
-
Execute INFVSUT1 on the reference system.
-
Execute INFVSUT1 without SYSIN on the other systems to update the contents of the tables to the contents of the reference cluster.
Note that only one reference cluster must exist for the systems.
Under certain circumstances, INFOPAK may itself initiate an update to the reference cluster on one system. For example, this can occur when a file is automatically compressed because of the presence of an INCLUDE entry when the file is reloaded. In this case, the user is not able to submit JCL. Therefore, in this case only, INFOPAK will submit JCL through the internal reader. The JCL submitted is that which has previously been entered into the reference cluster.
How to bypass compression for a program ?
Execute INFVSUT1 to bypass the referenced program.
The interface mechanism will be suspended for each compressed file accessed by the program when the program is processed by an EXECUTE statement.
If the program to exclude is IDCAMS, use INFAMS. This program corresponds to IDCAMS without compression/decompression.
How to bypass compression for a jobstep or a file ?
Compression may be suspended for the execution of an entire jobstep.
Executing a STEP whose stepname begins with the six characters 'INFAMS' will temporarily bypass the compression/decompression exit for every file being opened by the program executed.
Also, a particular file whose DDNAME begins with INFAMS will also be excluded from the compression/decompression mechanism.
How to choose between the CP or CS options ?
The CP compression option produces the maximum compression rate, but with more CPU consumption than the CS option. For ANY file, when the rate produced by the CP option and the CS option are similar, use the CS option. In the other cases, the compromise between space saved and type of access is determinant.
About programming languages
The interface is transparent for all programing languages used in the MVS world (ASM, COBOL, etc...).
About dumps
The contents of the user areas are not modified by the product use. This information is decompressed.
The OS (VSAM) buffers contain compressed records.
Performing upgrade with compression modules in LPALIB.
Reinstalled INFOPAK and an IPL with a CLPA. If the activation of the OPEN interface is not included in your IPL procedure, reactivate the interface executing INFVSUT1 without SYSIN.
Upgrade with compression modules in LINKLIST
-
Deactivate the OPEN interface with the previous (old) version of INFOPAK making sure that jobs requiring compression or decompression are not active
-
Reinstall the INFOPAK product and issue the MODIFY LLA,REFRESH command.
-
Reactivate the open interface (INFVSUT1 without SYSIN) and resume normal processing.
How to modify the definition of a compressed cluster ?
Sometimes modifying the VSAM definition of a compressed cluster (modification of the offset or length of the key, adding of an alternate key, ...) requires a modification to the reference cluster entry corresponding to this cluster. Perform the following operations:
-
Unload the cluster with REPRO IDCAMS (or other utility that decompresses the records).
-
DELETE / DEFINE the cluster and its VSAM objects (AIX and PATH)
-
Execute INFVSUT1 with one SYSIN card:
-
Reload the cluster with REPRO IDCAMS
How to allocate space for a compressed cluster ?
The primary and secondary allocation parameters should be decreased proportionally to the DASD savings shown on the TESTVPAK report.
Must the maximum record length be increased ?
Although rare, it is always possible that a record will not compress. The INFOPAK algorithm assumes any record that is at its maximum length as being uncompressed. Therefore, if the original records are known to have been of fixed length, decompression will be attempted on records which are less than maximum and this, of course, would be correct.
However, if the original records were of variable length, it is possible to be less than the maximum length and still uncompressed. If INFOPAK is unable to compress a variable length record, a one byte indicator is attached. If the maximum length parameter is increased by two bytes this logic works for all possible situations.
If you do not wish to increase the maximum record size, INFOPAK correctly assumes that any maximum length record is uncompressed. A one byte indicator is attached to uncompressed records which are two or more bytes shorter than the maximum.
It is only the record that is exactly one byte shorter than maximum length and cannot be compressed that presents an unusual situation when the maximum record size is not increased. In this case, the compression routine attaches a zero byte at the end of the record. The decompression routine, then, sees a record of maximum length and does not, and correctly so, decompress the record.
Though this would be a rare case, the application program receives a record with an extra zero byte at the end. This should not cause a problem. However, if this is considered risky for a particular application, the maximum record length should be increased by two.
Considerations with alternate keys ?
The alternate keys and the PATHs of a cluster must be defined before the cluster is compressed.
VSAM needs uncompressed alternate keys to have access to the data component of the cluster.
INFOPAK and CICS OSCOR
Version 3 of CICS allows the ACB to exist above the 16M line. INFOPAK will use this function and allocate its internal control blocks and buffers above the line also eliminating OSCOR problems.
The following information helps in calculating the memory size required for INFOPAK in OSCOR:
-
reserve (300 + n) bytes for each compressed file, where n is the record maximum length.
-
reserve (120 + m) * S bytes, where m is the length of the largest record of all compressed files and S is the maximum number of competing accesses to the files under control. An overvalue of S is the amount of the STRNO of each file under control. An adequate value of S is the number of compressed clusters.
-
reserve 30 K for each interface module (CP, CS) when these modules are not loaded in LPA.
About save utilities
The interface must be suspended to execute certain programs. For example, a save program that unloads at the CI level but restores at the logical record level should be made to bypass the compression system completely. The CI access does not use the compression mechanisme and the unloaded records stay compressed in the CI. At the time of the reload, the records are already compressed and must not be compressed again. This program must be excluded from compression.
About sort utilities
Some of the sort utilities can access to VSAM clusters with CI access. If the sort criteria are not limited to keys (primary and alternate), the result will be unpredictable, as the compressed records will not be decompressed.
To avoid this problem, it is necessary to customize the sort utility to use RECORD access instead of CI access. You can also specify this parameter directly in the job.
The parameter to use with DFSORT is NOCINV.
Open error code 100
The alternate index and PATH must be defined before the INFVSUT1 execution for the reference cluster.
An open error code of 100 when loading the compressed cluster is normal. The alternate index must be loaded with BLDINDEX or a user program after the compressed cluster loading. To suppress this error message, create the alternate index with the NOUPGRADE option, load the compressed cluster and, with the ALTER command, change the index in UPGRADE SET.
Restrictions on INFOPAK VSAM use
INFOPAK cannot be used in the following cases:
-
Access under IMS control (SHISAM,HISAM)
-
Access using CI
-
VSAM buffer modifications without the use of the PUT macro. The audit command detects clusters having records which are directly updated in the buffers (INFOPAK VSAM).
-
Use of VSAM through ISAM Interface Program (IIP).
Why would TESTVPAK show no compression ?
In the case of Fixed Blocked (FB) files, the length of the compressed block must be a multiple of the uncompressed record length. To insure this relationship, INFOPAK MVS must measure the block length after compression and zero pad to the right until the block length is equal to the next multiple. By doing this, INFOPAK MVS assures that the file may be accessed both via the compression interface and when bypassing it.
This, however, can cause a loss of compression when the number of records per block is low. For example, if there is one record per block, there will be no compression because all compression gains will be offset by zero padding to achieve a block length equal to the first multiple of the record length (what it was originally). By the same principle, the compression level must be 50% or greater to achieve a savings if there are two records per block. In general, this rule becomes less troublesome as the number of records per block increases.
Special considerations for Fixed (F) format files
There are limitations to be aware of when compressing Fixed (F) files. The F file compresses normally and behaves normally when accessed through the compression interface. However, since the information in the label is different from the information of the physical file, the compressed file may not be accessible by bypassing compression. Problems will occur with programs that attempt to process these files without decompression.
The IEBCOPY Utility
This utility does not use the standard macros of the BPAM access method and should, therefore, not be used between files when one is compressed and the other is uncompressed. However, IEBCOPY may be used to copy from one compressed file to another if they have the same format (RECFM and BLKSIZE are identical).
Using sorts with INFOPAK MVS
The standard sort uses EXCP access which is NOT supported by INFOPAK MVS. To execute a sort on compressed files, use INFSORT or INFBSORT (ref Using INFSORT and INFBSORT).
What is the I/O Savings ?
In order to benefit the most from compression, it is recommended that you increase the size of the blocks in proportion to the rates of compression.
This allows you to not only achieve space gains but, more importantly, to also reduce the number of I/Os.
ISPF/PDF and partitioned files
The BROWSE and EDIT programs (option 1 and 2) of PDF are totally transparent with respect to compression. They may be used without restriction.
The copy program (option 3.3) of PDF actually calls IEBCOPY and, therefore, this option must NOT be used to copy from uncompressed to compressed nor form compressed to uncompressed (ref The IEBCOPY Utility). However, the COPY or MOVE commands of the ISPF/PDF editor may be used to copy between any combination of compressed and uncompressed files.
May load module libraries be compressed ?
Load module libraries contain location dependent information which would be invalidated by compression of the members. Therefore, load module libraries must NOT be compressed.
INFOPAK and LBI in WRITE Mode
The "Large Bloc Interface" (LBI) can not be used to write data sets that are under control of INFOPAK. Using the LBI cancels the effect of INFOPAK as all blocks will be written at the maximal length.
INFOPAK and LBI in READ Mode
A data set compressed by InfoPak can be read without any restriction when using the LBI interface.