Different versions of UDS/SQL can be used concurrently in the same BS2000 system. UDS/SQL uses the 7-character version identifier. Correction versions of a main version can thus also be run concurrently; this only requires the correction versions to be installed under different user IDs. This is useful, for example, if a correction version is to be installed and tested while productive operation continues with the previous version.
Multiple UDS/SQL subsystems with different (correction) versions may be loaded simultaneously.
If multiple UDS/SQL versions are installed or loaded as subsystems and none of them is specifically selected, BS2000 establishes the connection to one version by default.
With IMON-GPN you can explicitly specify in each task which UDS/SQL version is to be used by issuing the following BS2000 command in the start procedure of the master task or the application program:
SELECT-PRODUCT-VERSION PRODUCT-NAME=product,VERSION=version,SCOPE=*TASK
The version number should always be specified to include the release status and correction status (e.g. 02.9B00).
The version assignment affects versions which are entered in the Software Configuration Inventory (SCI), subsystems which are loaded concurrently or start commands of UDS/SQL which are installed concurrently.
The respective version numbers specified with SELECT-PRODUCT-VERSION do not need to be permanently assigned in each user procedure, but can be structured variably and set via a centrally kept value (e.g. for a configuration in a job variable of the associated DBH identifier or in a structured variable).
Information on which versions of UDS/SQL are available and where the product files are installed can be obtained using the following command:
SHOW-INSTALLATION-PATH INSTALLATION-UNIT=UDS-SQL(VERSION=*ALL)
With ENTER jobs you can issue the SELECT-PRODUCT-VERSION command in an ENTER file.
If IMON-GPN is used, the version set in the master task is also used in the server tasks and in the UDS-D task.
Example: Parallel use of two UDS/SQL versions
The correction version UDS-SQL V2.9B10 is to be tested while productive operation continues with UDS-SQL V2.9B00. Using job variables, it should be possible to load the desired version when the DBH is started. This involves the use of parallel subsystems and start commands.
Creating job variables
The database administrator can create job variables which are to contain the values for the respective subsystem versions. The job variable JV.SHIPPING is to receive the value 02.9B00
, and the job variable JV.TEST the value 02.9B10
. The contents of the job variables are then checked.
|
Creating DBH startup procedures
In the DBH startup procedures DBHSTART.TEST and DBHSTART.SHIPPING, the corresponding job variable name is to be used for the desired version.
DBHSTART.TEST
/SET-LOGON-PARAMETERS /ASSIGN-SYSDTA TO=*SYSCMD /SET-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=TEST /CREATE-FILE FILE-NAME=TEST.DBSTAT,SUPPRESS-ERRORS=*FILE-EXISTING /CREATE-FILE FILE-NAME=TEST.DBSTAT.SAVE,SUPPRESS-ERRORS=*FILE-EXISTING /SET-JV-LINK LINK-NAME=VERS,JV-NAME=JV.TEST ----------------------------- (1) /SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,VERSION=&(*VERS) ----------- (2) /START-UDS-DBH /ASSIGN-SYSDTA TO=*PRIMARY /EXIT-JOB
DBHSTART.SHIPPING
/SET-LOGON-PARAMETERS /ASSIGN-SYSDTA TO=*SYSCMD /SET-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=SHIPPING /CREATE-FILE FILE-NAME=SHIPPING.DBSTAT,SUPPRESS-ERRORS=*FILE-EXISTING /CREATE-FILE FILE-NAME=SHIPPING.DBSTAT.SAVE,SUPPRESS-ERRORS=*FILE-EXISTING /SET-JV-LINK LINK-NAME=VERS,JV-NAME=JV.SHIPPING ------------------------- (1) /SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,VERSION=&(*VERS) ----------- (2) /START-UDS-DBH /ASSIGN-SYSDTA TO=*PRIMARY /EXIT-JOB
As well as the DBH startup procedures, the startup procedures for application programs must also be adjusted.
Creating startup procedures for application programs
In the startup procedures of the application programs DMLTEST.TEST and DMLTEST.SHIPPING, the corresponding job variable name is to be used for the desired version.
DMLTEST.TEST
/BEGIN-PROCEDURE /SET-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=TEST /ASSIGN-SYSDTA TO=*SYSCMD /SET-JV-LINK LINK-NAME=VERS,JV-NAME=JV.TEST /ADD-FILE-LINK LINK-NAME=$UDSSSI,FILE-NAME=LMS.SSITAB /SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,VERSION=&(*VERS) /START-UDS-DMLTEST DBH IND LANG COB DISPLAY RCODE,COND=RCODE NE C‘00000‘ PROT ON DISPLAY RECA,L=80 SUBSCHEMA IS ADMIN READY SHOW SPP1 SHOW SUBS E SYS /MODIFY-TERMINAL-OPTIONS OVERFLOW-CONTROL=*TIME(TIMEOUT=*STD) /ASSIGN-SYSDTA TO=*PRIMARY /RESUME-PROGRAM /END-PROCEDURE
DMLTEST.SHIPPING
/BEGIN-PROCEDURE /SET-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=SHIPPING /ADD-FILE-LINK LINK-NAME=$UDSSSI,FILE-NAME=LMS.SSITAB /ASSIGN-SYSDTA TO=*SYSCMD /SET-JV-LINK LINK-NAME=VERS,JV-NAME=JV.SHIPPING /SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,VERSION=&(*VERS) /START-UDS-DMLTEST DBH IND LANG COB DISPLAY RCODE,COND=RCODE NE C‘00000‘ PROT ON DISPLAY RECA,L=80 SUBSCHEMA IS ADMIN READY SHOW SPP1 SHOW SUBS E SYS /MODIFY-TERMINAL-OPTIONS OVERFLOW-CONTROL=*TIME(TIMEOUT=*STD) /ASSIGN-SYSDTA TO=*PRIMARY /RESUME-PROGRAM /END-PROCEDURE
For the meanings of the procedure parameters, see the explanations of the DBH startup procedures in section "Creating DBH startup procedures".
If the test version is to be used later as a productive version, the startup procedures remain unchanged. You need only change the contents of the JV.SHIPPING job variable as follows:
/MODIFY-JV JV=JV.SHIPPING,SET-VALUE=C'02.9B10'