Version 7.4.4

Maintaining A Separate Test Environment

This section describes a method to set up a temporary test copy of phases updated by a program fix. The method described is intended as an example. Its relevance depends on the installation standards you use for library maintenance.

The example scenario uses MSHP in a single z/VSE machine to control both the standard production Adabas library and an additional testing library or sublibrary used to validate recently applied program fixes.

After restoring the standard Adabas library and defining it to MSHP, an additional test library or sublibrary can be defined.

Object modules can then be copied from the standard library as required, and controlled with MSHP using a different VSE system history file. Using the same component ID as for the standard environment (9001-ADA-00-vrs) ensures that the ZAP source remains common to both environments.

The test version of a phase is then invoked by placing the test library or sublibrary at the head of the LIBDEF PHASE search chain.

The setup jobs required to implement this environment are described in detail below. Note that the first three steps form part of the standard installation process.

Start of instruction setto setup the separate test environment:

  1. Define standard Adabas library.

    For a sample job, see the section Installing the Adabas Release Tape.

  2. Restore standard Adabas library.

    For a sample job, see the section Installing the Adabas Release Tape.

  3. Define standard Adabas to MSHP.

    Note:
    This job uses the history file identified by the IJSYSHF label in the VSE standard label area.

    // EXEC MSHP
    ARCHIVE ADAvrs
    COMPRISES 9001-ADA-00
    RESOLVES ’SOFTWARE AG - ADABAS Vvrs’
    ARCHIVE 9001-ADA-00-vrs
    RESIDENCE PRODUCT=ADAvrs -
    PRODUCTION=SAGLIB.adannn -
    GENERATION=SAGLIB.adannn
    /*
    —where
    vrs is the Adabas version, revision, and system maintenance (SM) level
    adannn is the sublibrary name for standard Adabas
  4. Create test sublibrary and copy object modules to it.

    // DLBL SAGLIB,’adabas.vnnn.library’
    // EXTENT SYS010
    // ASSGN SYS010,DISK,VOL=volser,SHR
    // EXEC LIBR
    DEFINE SUBLIB=SAGLIB.adatst
    CONNECT SAGLIB.adannn:SAGLIB.adatst
    COPY *.OBJ LIST=Y REPLACE=Y
    /*
    —where
    
    adabas.vnnn.library is the physical name of the standard Adabas library
    volser is the volume on which library resides
    adannn is the sublibrary name for standard Adabas
    adatst is the sublibrary name for testing Adabas
  5. Create additional system history file for test environment and define test Adabas to it.

    // ASSGN SYS020,DISK,VOL=volhis,SHR
    // EXEC MSHP
    CREATE HISTORY SYSTEM
    DEFINE HISTORY SYSTEM EXTENT=start:numtrks -
    UNIT=SYS020 -
    ID=’sag.test.system.history.file’
    ARCHIVE ADAvrs
    COMPRISES 9001-ADA-00
    RESOLVES ’SOFTWARE AG - ADABAS Vvrs’
    ARCHIVE 9001-ADA-00-vrs
    RESIDENCE PRODUCT=ADAvrs -
    PRODUCTION=SAGLIB.adatst -
    GENERATION=SAGLIB.adatst
    /*
    —where
    volhis is the volume on which test system history file resides
    start is the start of extent on which test system history file resides
    numtrks is the length of extent on which test system history file resides
    sag.test.system.history.file is the physical name of test system history file
    vrs is the Adabas version, revision, and system maintenance level
    adatst is the sublibrary name for testing Adabas
  6. Apply zap to test environment.

    // DLBL IJSYSHF,’sag.test.system.history.file’
    // EXTENT SYS020,,,,start,numtrks
    // ASSGN SYS020,DISK,VOL=volhis,SHR
    // DLBL SAGLIB,’adabas.vnnn.library’
    // EXTENT SYS010
    // ASSGN SYS010,DISK,VOL=volser,SHR
    // EXEC MSHP
    CORRECT 9001-ADA-00-vrs : ADnnnnn
    AFFECTS MODULE=modname
    ALTER offset hexold : hexnew
    INVOLVES LINK=lnkname
    /*
    —where
    sag.test.system.history.file is the physical name of test system history file
    start is the start of extent on which test system history file resides
    numtrks is the length of extent on which test system history file resides
    volhis is the volume on which test system history file resides
    adabas.vnnn.library is the physical name of the standard Adabas library
    volser is the volume on which library resides
    vrs is the Adabas version, revision, and system maintenance level
    nnnnn is the Adabas fix number
    modname is the Adabas object module to be zapped and then relinked
    offset is the hexadecimal offset to the beginning of the zap
    hexold is the verify data for the zap
    hexnew is the replace data for the zap
    lnkname is the link book for the phase affected
  7. Invoke updated test phase.

    // DLBL SAGLIB,’adabas.vnnn.library’
    // EXTENT SYS010
    // ASSGN SYS010,DISK,VOL=volser,SHR
    // LIBDEF PHASE,SEARCH=(SAGLIB.adatst,SAGLIB.adannn,...)
    ...
    —where
    adabas.vnnn.library is the physical name of the standard Adabas library
    volser is the volume on which library resides
    adatst is the sublibrary name for testing Adabas
    adannn is the sublibrary name for standard Adabas
  8. Apply zap to standard environment.

    Note:
    This job uses the history file identified by the IJSYSHF label in the VSE standard label area.

    // DLBL SAGLIB,’adabas.vnnn.library’
    // EXTENT SYS010
    // ASSGN SYS010,DISK,VOL=volser,SHR
    // EXEC MSHP
    CORRECT 9001-ADA-00-vrs : ADnnnnn
    AFFECTS MODULE=modname
    ALTER offset hexold : hexnew
    INVOLVES LINK=lnkname
    /*
    —where
    adabas.vnnn.library is the physical name of the standard Adabas library
    volser is the volume on which library resides
    vrs is the Adabas version, revision, and system maintenance (SM) level
    nnnnn is the Adabas fix number
    modname is the Adabas object module to be zapped and then relinked
    offset is the hexadecimal offset to the beginning of the zap
    hexold is the verify data for the zap
    hexnew is the replace data for the zap
    lnkname is the link book for the phase affected
  9. Invoke standard phase.

    // DLBL SAGLIB,’adabas.vnnn.library’
    // EXTENT SYS010
    // ASSGN SYS010,DISK,VOL=volser,SHR
    // LIBDEF PHASE,SEARCH=(SAGLIB.adannn,...)
    ...
    —where
    adabas.vnnn.library is the physical name of the standard Adabas library
    volser is the volume on which library resides
    adannn is the sublibrary name for standard Adabas

Top of page