Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

BCHECK examples

&pagelevel(3)&pagelevel

The database CUSTOMER (see "Sample databases") appears as shown below after the restructuring operation (see the “Creation and Restructuring” manual):

Figure 9: Database CUSTOMER after restructuring

After a short period of operation with the restructured database CUSTOMER, it should be checked for consistency using BCHECK. The following states of the database exist:

  • shadow database directly after restructuring (copyname.AFTRESTR)

  • original database (earlier state than AFTRESTR)

Example 1

Complete summing check of the shadow database after restructuring (AFTRESTR):

/ADD-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=CUSTOMER.DBDIR.AFTRESTR
/SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,    VERSION=02.8A00
/START-UDS-BCHECK
***** START       BCHECK      (UDS/SQL  V2.8  0000 )     2015-06-28   11:40:26
CHECK SUMMING
SCHEMA CUSTOMER-LIST
REALM ALL
RECORD ALL
SET ALL WITH INDEX CHECK
KEY ALL WITH INDEX CHECK
END
***** FOR INDEX CHECKS A SORTING MUST BE PERFORMED EVEN FOR THE SUMMING
      PROCEDURE

***** THE INPUT IS CORRECT, THE CHECK RUN IS STARTING NOW
***** ANALYSING NEW STATE OF REALM CUSTOMER-RLM FROM FILE
     :SQL2:$XXXXXXXX.CUSTOMER.CUSTOMER-RLM.AFTRESTR
           100 NON EMPTY PAGES HAVE BEEN ANALYSED
***** ANALYSING NEW STATE OF REALM FINANCE-RLM FROM FILE
     :SQL2:$XXXXXXXX.CUSTOMER.FINANCE-RLM.AFTRESTR
             6 NON EMPTY PAGES HAVE BEEN ANALYSED
***** SORTING   STARTED      DATE AND TIME  2015-06-28  11:40:26
***** SORTING COMPLETED      DATE AND TIME  2015-06-28  11:40:26

***** DIAGNOSTIC SUMMARY OF BCHECK

              NO WARNINGS
              NO ERRORS
              NO SYSTEM-ERRORS

           11379 LOCAL CHECKS HAVE BEEN DONE
             126 RECORD/TABLE-OCCURRENCES HAVE BEEN CHECKED AGAINST DBTT
              68 CHAIN-SET-MEMBERSHIPS HAVE BEEN CHECKED
              52 REFERENCES BETWEEN TABLE-OCCURRENCES HAVE BEEN CHECKED
              72 REFERENCES FROM TABLES TO MEMBER-RECORDS HAVE BEEN CHECKED
              72 USERKEYS BETWEEN TABLES AND MEMBER-RECORDS HAVE BEEN CHECKED

              NO EASY (MINOR) LOCAL CONSISTENCY ERRORS
              NO FATAL (SERIOUS, STRUCTURAL) LOCAL CONSISTENCY ERRORS

              NO GLOBAL CONSISTENCY ERRORS
              NO GLOBAL INDEX CHECK HAS BEEN DONE

***** END OF DIAGNOSTIC SUMMARY
***** NR OF DATABASE ACCESSES  :          26
***** NORMAL END   BCHECK      (UDS/SQL  V2.8  0000 )     2015-06-28   11:40:26

Example 2

The original database is checked against the shadow database that was checked by BCHECK before restructuring and found to be error-free (AFTRESTR). While this incremental summing check is performed, BCHECK also checks both databases for coherence:

/ADD-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=CUSTOMER.DBDIR
/SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,    VERSION=02.8A00
/START-UDS-BCHECK
***** START       BCHECK      (UDS/SQL  V2.8  0000 )     2015-06-28   11:51:11
CHECK SUMMING AGAINST COPY NAME AFTRESTR
SCHEMA CUSTOMER-LIST
REALM ALL
RECORD ALL
SET ALL
KEY ALL
END

***** THE INPUT IS CORRECT, THE CHECK RUN IS STARTING NOW
***** ANALYSING NEW STATE OF REALM CUSTOMER-RLM FROM FILE
     :SQL2:$XXXXXXXX.CUSTOMER.CUSTOMER-RLM
     AGAINST OLD STATE FROM FILE :SQL2:$XXXXXXXX.CUSTOMER.CUSTOMER-RLM.AFTRESTR
            50 CHANGED PAGES HAVE BEEN ANALYSED
***** ANALYSING NEW STATE OF REALM FINANCE-RLM FROM FILE
     :SQL2:$XXXXXXXX.CUSTOMER.FINANCE-RLM
     AGAINST OLD STATE FROM FILE :SQL2:$XXXXXXXX.CUSTOMER.FINANCE-RLM.AFTRESTR
             2 CHANGED PAGES HAVE BEEN ANALYSED

+++++ GLOBAL CONSISTENCY ERRORS IN TYPE-NR :          1

+++++ GLOBAL CONSISTENCY ERRORS IN REF-NR  :          2

***** DIAGNOSTIC SUMMARY OF BCHECK

              NO WARNINGS
              NO ERRORS
              NO SYSTEM-ERRORS

           14474 LOCAL CHECKS HAVE BEEN DONE
             246 RECORD/TABLE-OCCURRENCES HAVE BEEN CHECKED AGAINST DBTT
             136 CHAIN-SET-MEMBERSHIPS HAVE BEEN CHECKED
             102 REFERENCES BETWEEN TABLE-OCCURRENCES HAVE BEEN CHECKED
             144 REFERENCES FROM TABLES TO MEMBER-RECORDS HAVE BEEN CHECKED 
             144 USERKEYS BETWEEN TABLES AND MEMBER-RECORDS HAVE BEEN CHECKED

              NO EASY (MINOR) LOCAL CONSISTENCY ERRORS
              NO FATAL (SERIOUS, STRUCTURAL) LOCAL CONSISTENCY ERRORS

+++++            GLOBAL CONSISTENCY ERRORS. DO A SORTING CHECK
              NO GLOBAL INDEX CHECK HAS BEEN DONE

***** END OF DIAGNOSTIC SUMMARY
***** NR OF DATABASE ACCESSES  :           48
***** NORMAL END   BCHECK       (UDS/SQL  V2.8  0000 )     2015-06-28   11:51:11 

Extracts from the SYSLST log:

.
.
.
/REMARK   START GENERATED BCHECK-STATEMENTS
/ADD-FILE-LINK LINK-NAME=BCHECK,                                       -
/   FILE-NAME=$XXXXXXXX.UTI.1GZE.01132838.BCHECK
/ADD-FILE-LINK LINK-NAME=DATABASE,                                     -
/   FILE-NAME=$XXXXXXXX.CUSTOMER.DBDIR
/SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,VERSION=XX.XXXX
/SET-JV-LINK LINK-NAME=UDSPS01,JV-NAME=UDS-PUB-DECL
/START-UDS-BCHECK
CHECK GENERATE SORTING AGAINST COPY AFTRESTR
TYPE        IS  1
SCHEMA NAME IS CUSTOMER-LIST
REALM  NAME IS CUSTOMER-RLM
REALM  NAME IS FINANCE-RLM
RECORD NAME IS CUSTOMER                        WITH    LOCATION CHECK
SET    NAME IS APPROVED-CREDITS                WITHOUT INDEX    CHECK
KEY    REF  IS    1                            WITHOUT INDEX    CHECK
END
.
.
.

Since errors were detected in the summing check, a sort check is performed to localize them. The command sequence for the limited sort check appears after REMARK in the SYSLST output of the summing check.

Example 3

A limited sort check is performed to localize the errors more precisely. This is done by using the statements listed after REMARK.. in the log of the summing check.

/ADD-FILE-LINK  BCHECK, $XXXXX.UTI.1GZE.01132838.BCHECK
/ADD-FILE-LINK LINK-NAME=DATABASE,FILE-NAME=CUSTOMER.DBDIR
/SELECT-PRODUCT-VERSION PRODUCT-NAME=UDS-SQL,    VERSION=02.8A00
/SET-JV-LINK LINK-NAME=UDSPS01,JV-NAME=UDS-PUB-DECL
/START-UDS-BCHECK
***** START       BCHECK      (UDS/SQL  V2.8  0000 )     2015-06-28   09:54:00
CHECK GENERATE SORTING AGAINST COPY AFTRESTR
TYPE       IS  1
SCHEMA NAME IS CUSTOMER-LIST
REALM  NAME IS CUSTOMER-RLM
REALM  NAME IS FINANCE-RLM
RECORD NAME IS CUSTOMER                     WITH    LOCATION CHECK
SET    NAME IS APPROVED-CREDITS           WITHOUT INDEX    CHECK
KEY    REF  IS    1                         WITHOUT INDEX    CHECK
END

***** THE INPUT IS CORRECT, THE CHECK RUN IS STARTING NOW.
***** ANALYSING NEW STATE OF REALM CUSTOMER-RLM FROM FILE
     :SQL2:$XXXXXXXX.CUSTOMER.CUSTOMER-RLM
     AGAINST OLD STATE FROM FILE :SQL2:$XXXXXXXX.CUSTOMER.CUSTOMER-RLM.AFTRESTR
            50 CHANGED BLOCKS HAVE BEEN ANALYSED.
***** ANALYSING NEW STATE OF REALM FINANCE-RLM FROM FILE
     :SQL2:$XXXXXXXX.CUSTOMER.FINANCE-RLM
     AGAINST OLD STATE FROM FILE :SQL2:$XXXXXXXX.CUSTOMER.FINANCE-RLM.AFTRESTR
             2 CHANGED BLOCKS HAVE BEEN ANALYSED.
.
.
.
***** DIAGNOSTIC SUMMARY OF BCHECK

             NO WARNINGS
             NO ERRORS
             NO SYSTEM-ERRORS

          10062 LOCAL CHECKS HAVE BEEN DONE
           144 RECORD/TABLE-OCCURRENCES HAVE BEEN CHECKED AGAINST DBTT
             0 CHAIN-SET-MEMBERSHIPS HAVE BEEN CHECKED
             0 REFERENCES BETWEEN TABLE-OCCURRENCES HAVE BEEN CHECKED
             0 REFERENCES FROM TABLES TO MEMBER-RECORDS HAVE BEEN CHECKED

             NO EASY (MINOR) LOCAL CONSISTENCY ERRORS
             NO FATAL (SERIOUS, STRUCTURAL) LOCAL CONSISTENCY ERRORS

+++++          1 GLOBAL CONSISTENCY ERRORS

***** END OF DIAGNOSTIC SUMMARY
***** NR OF DATABASE ACCESSES  :           67
***** NORMAL END   BCHECK       (UDS/SQL  V2.8  0000 )     2015-06-28   09:54:01

Extracts from the SYSLST log:

.
.
.
***** THE FOLLOWING CHANGE OF DATABASE IS INCONSISTENT
CHECK-ELEMENT : 0002 00000021 0002 FFFF 03000066 01 00 0000 00000000
FOR OWNER-DBKEY 0002-000000000021 DBTT-COL 2
         A TABLE-OCCURRENCE AT TABLE-LEVEL MAX. WAS ADDED TO PAGE 03000066
         WITH NO CORRESPONDING CHANGE OF THE REFERENCE IN THE DBTT.
.
.
.