One of our production View databases is running against the generation limit, receiving message SARBKU08:
SARBKU08 The current generation number is going to exceed the allowable limit
Release : 14.0
To lower the number of generations used in a database, that database needs to go through a SARDBASE MERGE routine:
. Create new database:
//STEP1 EXEC PGM=SARDBASE,PARM='view_hlq2' <== Modify DB name
//SYSPRINT DD SYSOUT=X
//SYSIN DD *
ADDDS INDEX UNIT=3390 VOLSER=xxxxxx CYL=nnnn BLKSIZE=8906
ADDDS DATA UNIT=3390 VOLSER=xxxxxx CYL=nnnn BLKSIZE=13862
/*
//
. Unload the original database:
//STEP1 EXEC PGM=SARDBASE
//SYSPRINT DD SYSOUT=X
//SARUNLD DD DSN=xxxxxx.xxxxxx.SARUNLD,
// DISP=(NEW,CATLG),UNIT=3390,VOL=SER=xxxxxx
//SYSIN DD *
NAME view_hlq1
UNLOAD
/*
//
. Merge the unloaded original database into the new one:
//STEP1 EXEC PGM=SARDBASE,PARM='view_hlq2' <=== Modify DB name
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SARMERG1 DD DISP=SHR,
// DSN=xxxxxx.xxxxxx.SARUNLD
//SYSIN DD *
MERGE
/*
//
. Rename the original database:
//STEP1 EXEC PGM=SARDBASE,PARM='view_hlq1'
//SYSPRINT DD SYSOUT=X
//SYSIN DD *
RENAME view_hlq3
/*
//
. Rename the new database to the original name:
//STEP1 EXEC PGM=SARDBASE,PARM='view_hlq2' <=== Modify DB name
//SYSPRINT DD SYSOUT=X
//SYSIN DD *
RENAME view_hlq1
/*
//
. Run the SARINIT:
//INIT EXEC PGM=SARINIT
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
NAME=view_hlq1
/*
//
. Run SARPAC on database tapes:
//SARPAC EXEC PGM=SARPAC,PARM='view_hlq1'
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD DUMMY
TAPESEQ=nnnnn-nnnnn <== Perform on all tapes
/*
//