24.12.10

SAP Note 15549 - Maintaining exception table DBCHK

Symptom:

Caution: this note applies, depending on the database system,
only up to the following release statuses (including):
ORACLE: till Rel. 3.0A
INFORMIX: till Rel. 3.0C
ADABAS: till Rel. 3.0D
DB2 for AIX: till Rel. 3.0F
others: till Rel. 3.0B
Please consult note 33814 for newer release statuses.
Keyword: Maintain DBCHK, DB02, ST04, Alert Monitor
In transaction DB02, tables or indexes are displayed as missing in the database or in the ABAP/4 Dictionary.

Please also see the comment at the end of this note.

Cause and prerequisites

Incorrect entries in table DBCHK due to upgrades and renaming.
Exceptions are documented in table DBCHK.
The problem is caused by tables/indexes which due to technical reasons can or could not be created in the ABAP/4 Dictionary.

Solution

Typical candidates for apparently missing indexes are the Dictionary/
kernel tables, such as DD03L, DD04L, DD08L, D300T, D301T, D010TINF, D010INC, D010TAB. These are SAP kernel tables that should not exist in the SAP DDIC because they should not be manipulated. The correct table entries are listed individually below.

The following is an explanation of DBCHK entries:

    • Entry for index name with CHECKTYPE=7:
      Even if an index is not described in the SAP-DDIC, it MUST
      exist on the database. If index is not found in the database,
      the Alert Monitor issues an error message.
    • Entry for table name with CHECKTYPE=5:
      Table has no index on the database.
      Such tables are either non-SAP tables that the SAP software must
      access (e.g. the ORACLE $-tables), or SAP tables with only a single
      entry for which an index would be a waste of space.
    • Entry for index name with CHECKTYPE=4:
      This means that no corresponding entry is required in the SAP DDIC if
      an index is found on the database. It does NOT mean, however, that
      the index must exist on the database (see CHECKTYPE=7).
      Note: Indexes which have to exist in the database but which are not
      defined in the SAP DDIC should be entered with CHECKTYPE=7 and with
      CHECKTYPE=4 (see CHECKTYPE=7).
    • Entry for table name with CHECKTYPE=3:
      This means that table can have a primary index that does not
      correspond to the SAP standard name. These are normally tables
      that are created outside the R/3 system and therefore do not
      conform to the SAP naming conventions.
    • Entry for table name with CHECKTYPE=2:
      This means that these tables do not have to be present and active in
      R/3. However, this value does not define that the table must be
      present in the databank.
      Table LICHECK belongs to this category.
    • Entry for table name with CHECKTYPE=1:
      Table exists in the DDIC, but not in the database.
      Caution: It should only be maintained if there is an error.
      One well-known case is the matchcode pools M_DEBI, M_SAKO, M_MAT1,
      M_MAT2, M_KRED, which no longer exist as of 2.2 because of the
      transparent matchcodes. Because of an error in the Alert Monitor, the
      indexes of the tables are displayed as incorrect although the tables
      in the database have disappeared. In this case the matchcode pools
      can be entered in the DBCHK.
      The pools should be created in all other cases. The monitor
      error in the display should be corrected as of version 2.2D.
All the table and index names marked with <-3 shouldexist for Release
3.0A. The superfluous entries must be deleted for CHECKTYPE 7.

The following entries with CHECKTYPE = 2 should exist in the SAP
table DBCHK:
CHECKTYPE TABORINDEXNAME | CHECKTYPE TABORINDEXNAME
2 ARCH_HIST <-3 | 2 STATS$FILESTATS
2 ARCH_JOB <-3 | 2 STATS$LATCHES
2 CEP02 <-3 | 2 STATS$LIBRARYCACHES
2 D010L | 2 STATS$LOCKACTIVITY
2 D010LINF | 2 STATS$LOCKWAITS
2 D010Q | 2 STATS$LRUSTATS
2 D010S | 2 STATS$PARAMETER
2 D010SINF | 2 STATS$ROLLSTATS
2 D010T | 2 STATS$ROWCACHES
2 D010TAB | 2 STATS$SEQUENCES
2 D010TINF | 2 STATS$SGA
2 D010Y | 2 STATS$SGASTATS
2 D020LINF | 2 STATS$SGASTATXS
2 D020SINF | 2 STATS$SNAPSHOTS
2 D021LINF | 2 STATS$STATNAMES
2 D021S <-3 | 2 STATS$SYSSTATS
2 D022S <-3 |
2 DDLOG <-3 | 2 STATS$WAISTATS
2 DDNTF <-3 | 2 STATS$WAITSTATS
2 DDNTT <-3 | 2 TSA_COL_HIST <-3
2 FLAGS_TEXT_R3 <-3 | 2 TSA_COL_STATS <-3
2 FTMAC <-3 | 2 TSA_ROW_HIST <-3
2 INSCHK <-3 | 2 TSA_ROW_STATS <-3
2 LICHECK <-3 | 2 UH <-3
2 OCCUI <-3 | 2 VBDATA <-3
2 OCCUT <-3 | 2 SDBAS <-3
2 ONSTATOPT <-3 | 2 SAPUSER <-3
2 ONSTATOUTC <-3 |

The following entries with CHECKTYPE = 3 should exist in the SAP
table DBCHK:
3 DD03L <-3 | 3 STATS$SGASTATXS
3 DD03L__0 | 3 SVERS <-3
3 STATS$FILESTATS | 3 SVERS__0
3 STATS$ROWCACHES | 3 Y0064 <-3
3 STATS$SGASTATS |

The following entries with CHECKTYPE = 4 should exist in the SAP
table DBCHK:
4 ARCH_HIST0 <-3 | 4 DD03L__1
4 ARCH_HIST1 <-3 | 4 DD03L__2
4 ARCH_JOB0 <-3 | 4 DD03L__3
4 D010INC1 | 4 DD03L__4
4 D010LINF_0 | 4 DD03L__5
4 D010S | 4 DD03L__6
4 D010SINF1 | 4 DD04L__1
4 D010SINF_0 | 4 DD08L__1
4 D010S__1 | 4 DDNTF__1 <-3
4 D010TAB1 | 4 DDNTT__0 <-3
4 D010TINF0 | 4 FLAGS_TEXT_R3_IX1 <-3
4 D010T__0 | 4 STATS$LATCHES_PK
4 D020LINF0 | 4 STATS$LIBRARYCACHES_PK
4 D020LINF_0 | 4 STATS$LOCKACTIVITY_PK
4 D020SINF0 | 4 STATS$LRUSTATS_PK
4 D020SINF_0 | 4 STATS$ROLLSTATS_PK
4 D021LINF0 | 4 STATS$SNAPSHOTS_PK
4 D021LINF_0 | 4 STATS$SYSSTATS_PK
4 D300T__1 <-3 | 4 STATS$WAITSTATS_PK
4 D301T__1 <-3 | 4 STATS$SYSSTATS_PRIME
4 DD01L__1 | 4 DDSTAMP1 <-3
4 DD02L__1 | 4 SNAP___S <-3
| 4 SNAP___D <-3

The following entries with CHECKTYPE = 5 should exist in the SAP
table DBCHK:
5 FTMAC <-3 | 5 STATS$SGASTATS
5 OCCUI <-3 | 5 STATS$SGASTATXS
5 OCCUT <-3 | 5 SVERS <-3
5 ONSTATOPT <-3 | 5 TSA_COL_HIST <-3
5 ONSTATOUTC <-3 | 5 TSA_COL_STATS <-3
5 STATS$FILESTATS | 5 TSA_ROW_HIST <-3
5 STATS$PARAMETER | 5 TSA_ROW_STATS <-3
5 STATS$ROWCACHES | 5 UH <-3
5 STATS$SGA |


No entries in CHECKTYPE = 6 for SAP.
The following entries with CHECKTYPE = 7 should exist in the SAP
table DBCHK:
7 D010INC1 | 7 DD03L__1
7 D010LINF_0 | 7 DD03L__2
7 D010S__1 | 7 DD03L__3
7 D010TAB1 | 7 DD03L__4
7 D010TINF0 | 7 DD03L__6
7 D010T__0 | 7 DD04L__1
7 D020LINF_0 | 7 DD08L__1
7 D020SINF_0 | 7 DDNTF__0 <-3
7 DD01L__1 | 7 DDNTT__0 <-3
7 DD02L__1 |


If R/3 runs on INFORMIX, the following entries should also
exist:
The following entries with CHECKTYPE = 4 should exist in the SAP
table DBCHK:
4 VBLOG__1

The following entries with CHECKTYPE = 7 should exist in the SAP
table DBCHK:
7 VBLOG__1

Note:
Please note that the new or changed entries only take full effect after the next run of the COLLECTOR_FOR_PERFORMANCEMONITOR job. Only this job fully recalculates the statistics that are shown in DB02. The function REFRESH here, only recalculates some of the statistics. It is quite possible that missing indices are still displayed after a REFRESH in DB02. In the named job, the program RSORATDB is executed. This generally occurs 3 times a day. This procedure is controlled by the table TCOLL.

Additional key words

Maintain DBCHK, DB02, ST04, Alert Monitor
Examples: SDBAS, LICHECK

No comments:

Post a Comment