Support Guide
SAP DB and
LiveCache
Table of Contents
1 GUIDE OBJECTIVES..........................................................................................................1
2 INFORMATION....................................................................................................................1
3 IMPORTANT TOOLS..........................................................................................................1
3.1 XCONTROL..........................................................................................................................1
3.2 DBMGUI, DBMCLI AND WEBDBM...................................................................................1
3.3 XQUERY..............................................................................................................................2
3.4 SQLSTUDIO AND WEBSQL...............................................................................................2
3.5 IREPORT.PY.........................................................................................................................3
3.6 X_CONS..............................................................................................................................3
3.7 X_DIAG(NOSIS)...................................................................................................................3
3.8 XINSTINFO..........................................................................................................................3
4 IMPORTANT ANALYSIS FILES.......................................................................................4
4.1 KNLDIAG, KNLDIAG.OLD AND KNLDIAG.ERR......................................................................4
4.2 DBM.* BZW. CONTROL.*.....................................................................................................6
4.3 KNLTRACE..........................................................................................................................6
4.4 CORE...................................................................................................................................7
4.5 DRWTSN32.LOG.................................................................................................................7
4.6 APPLDIAG...........................................................................................................................7
4.7 LCINIT.LOG UND LCINIT.HIS................................................................................................7
5 DIFFERENT TYPES OF TRACE.......................................................................................9
5.1 VTRACE..............................................................................................................................9
5.2 SQL TRACE......................................................................................................................10
5.3 PRECOMPILER TRACE.......................................................................................................10
5.4 DEVELOPER TRACE..........................................................................................................11
6 IMPORTANT MESSAGE NUMBERS.............................................................................12
6.1 ERROR CATEGORY 1:........................................................................................................12
6.2 ERROR CATEGORY 2:........................................................................................................17
6.3 ERROR CATEGORY 3:........................................................................................................18
6.4 ERROR CATEGORY 4:........................................................................................................19
6.5 MISCELLANEOUS -9XXX ERRORS.....................................................................................20
7 DIRECTORY STRUCTURE.............................................................................................20
7.1 INSTALLATIONS USING DBROOT....................................................................................20
7.2 INSTALLATIONS NOT USING DBROOT............................................................................20
8 PROBLEMS INDEPENDENT OF INSTANCE TYPE...................................................21
8.1 DATABASE CRASH............................................................................................................21
8.2 PROBLEMS WITH DATABASE MIGRATIONS/INSTALLATIONS USING R3SETUP OR
LCSETUP........................................................................................................................23
8.3 PROBLEMS WITH THE SAPDBINSTALL TOOL OR SDBINST TOOL...............................23
8.4 UNINSTALLING.................................................................................................................23
8.4.1 Database software.....................................................................................................23
8.4.2 Database instance.....................................................................................................23
9 PROBLEMS WITH OLTP DATABASES (BC-DB-ADA*)............................................24
Support Guide SAP DB and liveCache
1 Guide Objectives
This document is intended as a guide to assist SAP employees in analyzing customer
problems (general database problems). The guide describes the initial steps that should be
taken in the event of standard errors, and provides tips on finding notes. It describes the
errors, and possible analyses for database versions 6.2 (6.2.10 in particular), 7.1, and 7.2.
Database version 6.2 has not been released for the liveCache.
2 Information
For information on the liveCache, and general SAP DB info, access the internet, and go to:
1. BIS: Database Technology -> SAP DB/LiveCache
http://bis.wdf.sap-ag.de:1080/sapdb/
2. The Open Source page
www.sapdb.org
3. The SAP Help Portal
http://help.sap.com
4. The APO Development Support page
http://pal100075.pal.sap-ag.de/
Notes and SAPNet messages can be found and accessed within the following subject areas:
BC-DB-ADA, BC-DB-LVC, KM-KW-CDB, and BW-SYS-DB-ADA.
3 Important Tools
3.1 xcontrol
This tool is the administration tool for version 6.2 databases.
Documentation on this can be found in the SAP Help Portal:
http://help.sap.com
SAP Library R/3
SAP Library Release 4.6B
HTML English or German
Basis
Database interface, database platforms (BC-DB)
R/3 database guide: SAP DB
R/3 database guide: SAP DB: SAP DB
R/3 database administration (CONTROL)
Or in
http://help.sap.com/saphelp_46b/helpdata/de/07/ab533628fbac21e10000009b38f889/frameset.htm
Page 1 of 38
Support Guide SAP DB and liveCache
3.3 xquery
The xquery tool can be used to execute SQL statements. This tool can only be used for
database version 6.2. Ensure that the function keys are working. Environment variables
DBTERM, and DBHIF can be used to establish this (note 28577). The xvttest tool can be used
to test the function keys.
The most important xquery commands, for when the function keys are not working, are listed
below:
Goto command field: Ctrl-R
Run a command: Run
Return to last screen: End
Goto input field: Enter
Page 2 of 38
Support Guide SAP DB and liveCache
3.5 ireport.py
This tool is available as of version 7.2.4. It is located in directory <INSTROOT>1/bin. It
must also be accessed in this directory, as additional files are needed from this directory. The
tool is used to execute SQL statements. The following help functions are implemented:
- Information on call options:
ireport.py –h
- Information on possible commands:
ireport.py –d <DB_NAME> -u <sqluser>,<password>
===>help
3.6 x_cons
The x_cons tool is the database console. This tool can be used to monitor the status of the
database and database activities.
Call:
x_cons <DB_NAME> <Command> [<Time>]
All possible commands:
x_cons <DB_NAME>
The <Time> option specifies the amount of seconds that should pass before the command is
executed once more.
This tool can be called without specifying a path.
3.7 x_diag(nosis)
In version 6.2 the x_diag (NT), or x_diagnosis (UNIX) tool is located in the $DBROOT/bin
(UNIX) directory or %DBROOT%\bin (NT) directory and can be called without specifying a
path.
As of version 7.2.4 the tool is located in the <INSTROOT>/bin directory. As this directory is
not in the path, a path must be specified to call the tool.
Other functions are possible if x_diag(nosis) is called with the d <DB_NAME> -u
<controluser>, and <password> options. This guide will indicate if these options need
specifying at the appropriate places.
3.8 xinstinfo
The xinstinfo tool is available as of version 7.2.05 B04, and 7.3.00 B06, to provide all the
important information on a system’s installation directories. It can be called without
specifying a path:
- Call without parameters:
xinstinfo
Example output:
IndepData : /sapdb/IndepData
IndepPrograms : /sapdb/IndepPrograms
- Call with database name:
xinstinfo <DB_NAME>
1
Refer to section 7.2
Page 3 of 38
Support Guide SAP DB and liveCache
Example output:
IndepData : /sapdb/Data
IndepPrograms : /sapdb/Programs
InstallationPath : /sapdb/MUT/db
Kernelversion : KERNEL 7.2.5 BUILD 004-000-240-291
Rundirectory : /sapdb/Data/wrk/MUT
Page 4 of 38
Support Guide SAP DB and liveCache
At the beginning of the file, the state of messages relating to the database start is COLD – this
part has a double line separating it from the rest of the file, and is not overwritten. The
following messages from the current operation are then overwritten in cyclic fashion.
Example of knldiag version 6.2.10 on NT:
--------------------------------------------------------------------------------
Date Time TID(hex) Typ MsgID Label Message-Text
--------------------------------------------------------------------------------
10-19 10:01:43 0xFC 50000 TCLUSTER
tw;al;ut;2000*sv;10*ev;ti,100*dw,sn,rc,cs;30000*us;compress
10-19 10:01:43 0xFC 50001 TCLUSTER number of ' DW': 8
10-19 10:01:43 0xFC 50001 TCLUSTER number of ' EV': 0
10-19 10:01:43 0xFC 50001 TCLUSTER number of ' US': 5
10-19 10:01:43 0xFC 50001 TCLUSTER number of ' SV': 13
10-19 10:01:43 0xFC 18313 INFO Starting SERVERDB: 'DEM'
10-19 10:01:43 0xFC 18314 INFO SERVERNODE: 'P33439'
10-19 10:01:43 0xFC 18315 INFO Process ID: 0xe4
10-19 10:01:43 0xFC 18317 INFO Date: 00-10-19
10-19 10:01:43 0xFC 18316 INFO Owner: 'SYSTEM'
10-19 10:01:43 0xFC 18319 INFO Number of Processors: 1
10-19 10:01:43 0xFC 18320 INFO Max virtual memory: 2047 MB
10-19 10:01:43 0xFC 18321 INFO Total physical memory: 159 MB
10-19 10:01:43 0xFC 18322 INFO Available physical memory: 72 MB
10-19 10:01:43 0xFC 18323 INFO Kernel shared memory size: 7 MB
10-19 10:01:43 0x112 18257 TASKING UKT started, TID:0x112
10-19 10:01:43 0x1F1 18257 TASKING UKT started, TID:0x1F1
10-19 10:01:43 0x106 18257 TASKING UKT started, TID:0x106
10-19 10:01:43 0x1FB 18257 TASKING UKT started, TID:0x1FB
10-19 10:01:43 0x130 18257 TASKING UKT started, TID:0x130
10-19 10:01:43 0x144 18257 TASKING UKT started, TID:0x144
10-19 10:01:43 0x144 54003 dynpool NUM DATAWRITER : 8
...
10-19 10:01:43 0x144 54003 DYNPOOL DYNP_B11_FBM_STRUC : 3212
10-19 10:01:43 0x144 18230 VERSION 'KERNEL 6.2.10 Build 025-000-044-836'
10-19 10:01:43 0x144 18230 VERSION 'NT/INTEL 6.2.10 Build 025-000-044-836'
10-19 10:01:43 0x144 54003 dynDATA DYND_K57_KB_PAGES : 11
...
10-19 10:01:44 0x144 53040 I/O DATAWRIT first datacache: 7
10-19 10:01:44 0x112 18245 DEVIO Attaching devspace 'knltrace'
10-19 10:01:46 0x16F 18243 DBSTATE I/O thread for 'knltrace' started
10-19 10:01:46 0x112 54003 dynDATA DYND_B12_VTRACE : 2
10-19 10:01:47 0x1C3 18231 DBSTATE SERVERDB is ready
============================= begin of write cycle =============================
10-19 10:02:26 0x106 18263 CONNECT Connect req. (T7, Node:'', PID:0x1BD)
10-19 10:02:26 0x106 18245 DEVIO Attaching devspace 'SYS_001'
10-19 10:02:26 0x110 18243 DBSTATE I/O thread for 'SYS_001' started
10-19 10:02:26 0x106 18247 DEVIO Single I/O attach, 'SYS_001', UKT:3
10-19 10:02:26 0x106 18246 DEVIO Detaching devspace 'SYS_001'
10-19 10:02:26 0x110 18244 DBSTATE I/O thread for 'SYS_001' stopped
10-19 10:02:26 0x20E 18248 DEVIO Single I/O detach, 'SYS_001', UKT:3
10-19 10:02:26 0x106 18245 DEVIO Attaching devspace 'diskl01'
10-19 10:02:26 0x113 18243 DBSTATE I/O thread for 'diskl01' started
10-19 10:02:26 0x106 18247 DEVIO Single I/O attach, 'diskl01', UKT:3
10-19 10:02:26 0x106 18246 DEVIO Detaching devspace 'diskl01'
10-19 10:02:26 0x113 18244 DBSTATE I/O thread for 'diskl01' stopped
10-19 10:02:26 0x20E 18248 DEVIO Single I/O detach, 'diskl01', UKT:3
10-19 10:02:26 0x106 18282 CONNECT Connection released, T7
10-19 11:28:25 0xFC 18241 DBSTATE SERVERDB is being stopped
10-19 11:28:25 0x112 18247 DEVIO Single I/O attach, 'knltrace', UKT:1
10-19 11:28:26 0x112 18249 TASKING Releasing tracewriter
10-19 11:28:26 0xFC 18320 TASKING Tracewriter termination timeout: 1200 sec
10-19 11:28:26 0xFC 18242 DBSTATE SERVERDB 'DEM' has stopped,
Version: 'KERNEL 6.2.10 Build 025-000-044-836'
---------------------------- current write position ----------------------------
On database restart, the name of the knldiag file is changed to knldiag.old. This means that an
older version of this diagnosis file is always available. If the database is repeatedly started, it
may be that important error messages can no longer be accessed, as the knldiag.old file has
already been overwritten with the current knldiag file on the next restart.
IMPORTANT: These files must therefore be saved after a crash, and before the next restart!
(see paragraph Error: Reference source not found for version dependencies)
Page 5 of 38
Support Guide SAP DB and liveCache
The knldiag.err file is not overwritten. All error messages are logged here. If the knldiag and
knldiag.old files no longer contain the error, you will find the error in this file. However, you
only see the original error message, the messages from the error environment are not logged.
New messages are attached to the end of the file. This can cause the file to become very large.
In NT, for every restart from COLD, the message 'Starting' is logged in the knldiag.err. In
UNIX this only occurs as of version 7.2.5.
Example of knldiag.err version 6.2.10 on NT:
09-27 14:41:22 --- Starting ---
09-27 14:43:57 --- Starting ---
09-27 14:43:58 0x175 ERR 55555 FBM BINI: to few fbm pages!
09-27 14:43:58 0x175 ERR 55555 FBM BINI:wanted:3, given:2
09-27 14:43:58 0x175 ERR 18088 DBCRASH Emergency Shutdown
09-27 14:44:09 --- Starting ---
09-27 14:44:09 0x182 ERR 55555 FBM BINI: to few fbm pages!
09-27 14:44:09 0x182 ERR 55555 FBM BINI:wanted:3, given:2
09-27 14:44:09 0x182 ERR 18088 DBCRASH Emergency Shutdown
09-27 14:44:17 --- Starting ---
09-27 14:44:18 0x1B3 ERR 55555 FBM BINI: to few fbm pages!
09-27 14:44:18 0x1B3 ERR 55555 FBM BINI:wanted:3, given:2
09-27 14:44:18 0x1B3 ERR 18088 DBCRASH Emergency Shutdown
09-27 14:48:48 --- Starting ---
09-27 14:48:52 0x1A5 ERR 53007 CONFIG ILLEGAL DATA DEV SIZES
09-27 14:48:52 0x1A5 ERR 53007 CONFIG RestartRec: Max Data Pno: 5999
09-27 14:48:52 0x1A5 ERR 53007 CONFIG XParam: Max Data Pno: 2999
09-27 14:48:52 0x1A5 ERR 18089 DBCRASH Emergency Shutdown, vbd15.c: 5660
09-27 14:51:32 --- Starting ---
10-19 10:01:43 --- Starting ---
Note 393048 describes some of the error messages that can appear in these files. The note is
currently being written.
File Contents
4.3 knltrace
This file can contain important information on the causes of crashes. It is written in binary
format, and is reinitialized on database restart. It is therefore very important to save this file
Page 6 of 38
Support Guide SAP DB and liveCache
after a crash (BEFORE the next attempt at a restart) see paragraph Error: Reference source
not found for version dependencies).
Data will still be written to this file when the VTRACE is switched on.
The file is evaluated using the x_diag(nose) or xkernprot tools (see section 5.1)
4.4 core
During crashes, a core is often written in UNIX containing the stack back trace. This is very
important for problem analysis. The core can only be used for error analysis if it has been
written in full. As the core is written in the run directory of the database, this run directory
must be large enough to include the entire core in the event of an error. The size of the core
depends on the configured cache, as its contents (amongst other things) are written in the
core.
Notes 038037 and 037282 describe how to evaluate this core. The back trace must be made
available to development support (either via sapserv or copy into the message).
4.5 DrWtsn32.log
In NT the stack back trace is logged in the DrWtsn32.log file. For information on how to
evaluate this file, see note 49776.
If Dr.Watson does not appear on a crash, you should check whether note 115059 has been
correctly followed.
4.6 appldiag
UNIX Systems: the appldiag file is stored in the $DBROOT/wrk/<username> directory
(version 6.2) or in the <INDEPDATAPATH>2/wrk/<username> (version 7.2). A specific
file is written for each user (<sid>adm, sqd<sid>, and root).
NT Systems: the file is only written if the environment variable DIAGFILE has been set to
YES. It is stored directly in %DBROOT%\wrk (version 6.2) or <INDEPDATAPATH>/wrk
(version 7.2).
Database runtime environment error messages are logged in this file. Example:
02-26 15:56:49 15480 ERR 11546 XPARAM Could not find xparam file
02-26 15:56:49 15480 ERR 11545 XPARAM Could not open xparam file:
'/sapdb/data/config/S11'
03-26 11:15:25 14961 ERR -11608 COMMUNIC sql03_request: wrong connection
state, state is 'requested'
2
refer to 7.2
Page 7 of 38
Support Guide SAP DB and liveCache
SERVERDB: LCA
registration of sapapo.dll
The file lcinit.his has the history of all these actions – every lcinit.log is copied into this file.
Like the lcinit.log file, this file is also located in directory %DBROOT% (NT, versions prior to
7.2.4) or <INDEPDATAPATH>\wrk (version 7.2.4 and above).
You can display the lcinit.his file:
- at operating system level using an editor,
- via transaction AL11, or
- via transaction SM49 -> dbmgetf:
-d <LC_NAME> -n <LC-SERVERNAME> -k LCINITHIS
Page 8 of 38
Support Guide SAP DB and liveCache
5.1 Vtrace
The database kernel can write a trace (Vtrace). Developers use the trace to see which codes
will be run. Options can be used to specify specific modules for tracing.
As Vtrace restricts system performance, it should only be used for analysis purposes. If the
problem has been reproduced the Vtrace must be switched off and flushed. During this
flushing, information is written to the file knltrace from the cache. If flushing is not done, not
all information will be available in the trace.
- Version 6.2:
• Switch on DEFAULT Vtrace:
Tool xcontrol, Menu option Options -> Kernel VTrace -> On
• Switch off DEFAULT Vtrace:
Menu option Options -> Kernel VTrace -> Off
• Flush DEFAULT Vtrace:
Menu option Options -> Kernel VTrace -> Flush
The x_diag(nosis) tool can be used to start special trace variants. These special traces are
not usually required if a developer has not explicitly requested them.
• Call the x_diag(nosis) with the parameters –d <DB-Name> -u <user>,<password>.
• At the prompt, key in ‘diagnosis’
• Switch on: 1: VTRACE ON, then choose the required options
• Switch off: 2: VTRACE OFF
• Flush: 3: VTRACE FLUSH
To evaluate the Vtrace:
• xkernprot –d <SID> akbnx
The readable file <SID>.prt appears in the current directory. The file is analyzed by
the developer responsible.
- Version 7.2:
The Vtrace can be switched on using the DBMGUI: menu option Check -> Kernel Trace.
A choice can be made here whether to switch on only the DEFAULT-Vtrace, or
additional traces. The trace can also be switched on for a specific session, and set up in
such a way that it is switched off immediately after the occurrence of a specific error (the
Advanced tab).
The knltrace file is converted into a readable file via the Protocol tab. The Vtrace must be
'flushed' beforehand (using the button with the red zigzag line – ATTENTION: do not
press the button with the red cross, as this will delete the Vtrace!)
- OLTP environment as of R/3 version 4.6B SP26 or 4.6C:
Transaction DB50 can also be used to switch on the Vtrace:
Problem Analysis -> Kernel Trace
The following can be done:
• Choose trace components
• Switch on trace
• Switch off trace
• Switch on the trace but turn it off automatically when a specific error occurs (switch
off trace when error occurs)
• Flush the trace (duplicate trace buffer)
Page 9 of 38
Support Guide SAP DB and liveCache
• Initialize trace
• Format trace and display
• Display trace
Page 10 of 38
Support Guide SAP DB and liveCache
To switch on:
• Set the variable to value '-X –F <file name>.pct'. Files containing information
on the cause of the error will then be written in the current directory *.pct.
• Another possible option is '–X –F PID'. With this option, the process ID of the
respective process is included in the file name.
To switch off:
• Reset the variables.
Page 11 of 38
Support Guide SAP DB and liveCache
-9001 e_invalid_root
-9002 e_illegal_branchlength
with index: section 6.1, 4.
-9003 e_illegal_entrylength
step, paragraph I
with table: section 6.1, 4.
-9005 e_illegal_key
step, paragraph III
-9006 e_illegal_keylength
-9008 e_illegal_record
Page 12 of 38
Support Guide SAP DB and liveCache
-9010 e_invalid_invlistpos
-9013 e_invalid_index_structure
-9014 e_invalid_leaves_structure
-9018 e_page_in_wrong_tree
-9021 e_no_statistic
-9023 e_illegal_entrypos
-9024 e_invalid_entrypos
-9025 e_illegal_invlistpos
with index: section 6.1, 4.
-9026 e_bad_datapage
step, paragraph I
with table: section 6.1, 4.
-9028 e_bad_file
Step, paragraph II
-9029 e_bad_invfile
-9041 e_file_not_accessible
With index: section 6.1, 4.
Step, paragraph I
-9044 e_inconsistent_nodetype
With table: section 6.1, 4.
Step, paragraph III
-9045 e_root_check
-9053 e_data_page_corrupt
Analysis:
Before the analysis begins, all the files in the run directory must be saved (see paragraph
Error: Reference source not found for version dependencies), as development support may
need them for the analysis.
The analysis tools and files analyze whether it is an object, index, or table error.
Page 13 of 38
Support Guide SAP DB and liveCache
- NO
The problem should be forwarded to development support (please refer to section 13).
Start database
Recheck database status (repeat step 2)
- the error could not be classified or removed during the start, the database is still
OFFLINE, or COLD
The roots table can be accessed using the root page number specified in the
knldiag/knldiag.err using xquery, SQLSTUDIO or DBMCLI with the following SELECT:
Example:
SELECT * FROM ROOTS WHERE ROOT = 978858
Result:
TABLEID │ OWNER │ TABLENAME │ INDEXNAME │ TYPE │ ROOT
─────────────────┼───────┼───────────┼────────────┼─────────────┼──────────
00000000000010F5 │ SAPR3 │ TCESYSTT │ TCESYSTT~1 │ NAMED INDEX │ 978858
│ │ │ │ │
Die Spalte TYPE bestimmt den Typ des Datenbankobjektes. Je nachdem, um welchen
Typ es sich bei dem fehlerhaften Objekt handelt, erfolgt die Lösung des Problems.
4. Step: solution
Page 14 of 38
Support Guide SAP DB and liveCache
YES
The affected index can be deleted and recreated using the data dictionary at a time of
minimal workload.
After the index has been successfully deleted and recreated, go to step 5
Example:
SELECT * FROM sysodbcindexes WHERE TABLE_NAME = 'MSEG'
Result:
INDEX_NAME | TYPE | SEQ_IN_INDEX | COLUMN_NAME
-----------+------+--------------+-------------
MSEG~M | 3 | 1 | MANDT
MSEG~M | 3 | 2 | MATNR
MSEG~M | 3 | 3 | WERKS
MSEG~M | 3 | 4 | LGORT
MSEG~M | 3 | 5 | BWART
MSEG~M | 3 | 6 | SOBKZ
MSEG~R | 3 | 1 | MANDT
MSEG~R | 3 | 2 | RSNUM
MSEG~S | 3 | 1 | SMBLN
MSEG~S | 3 | 2 | SJAHR
MSEG~S | 3 | 3 | SMBLP
Note down the results as the index structure is needed later for recreating the index.
Page 15 of 38
Support Guide SAP DB and liveCache
The index is deleted and recreated with the SQLSTUDIO, or xquery database tool.
To delete the index using SQLSTUDIO or xquery:
After the index has been successfully deleted and recreated, go to step 5
If one of these two errors has occurred in a table, you can try to remove the error using the
CHECK TABLE command. The Check Table command can be executed via the database
tools xquery, or SQLSTUDIO.
- If Check Table command runs to the end with no errors -> Go to step 5
- If the Check Table terminates due to a new error -> Go to III.
If the object with an error is a table, the table data will be lost. There are two ways of
solving this problem depending on whether:
a) the table contains data that can be generated from another table, or
b) the table contains data that can not be reconstructed from another table
Application development must be consulted to decide which of the above is true. The
individual responsible for the table should be found as quickly as possible. This
individual will then be able to decide whether data can be generated (case a).
- If data can be generated, there are application development instructions describing the
procedure to follow. Then go to step 5.
- If data can not be generated, a recovery must be made of the entire database.
- If no reply is received, a database recovery must be made.
Page 16 of 38
Support Guide SAP DB and liveCache
Deciding which of the above is true for the affected table can only be done with the help
of application development. The individual in application responsible for the table ( - the
individual who is able to decide whether data can be generated - case a)) should be found
as quickly as possible.
- If data can be generated, there are application development instructions describing the
procedure to follow. Then go to step 5.
- If data can not be generated, a recovery must be made of the entire database.
- If no reply is received, a database recovery must be made.
5. Step: Follow up
After removing the errors, you should use the system to verify that there are no other
problems in the system. When the database state is WARM, this can be done using
transaction DB13 (check database structure (all objects). If this action is not available,
verification must be made using the xcontrol tool (Backup -> Save -> Verify Devspaces),
or the DBMGUI tool (Check -> Database).
The system can only be released again for R/3 operation after verification has
completed successfully.
-9004 e_illegal_filename
-9007 e_illegal_page_no
Can error be reproduced after
-9050 e_illegal_page_address DB restart?
Generate Vtrace
-9051 e_invalid_fbm_mark Forward problem to
development support
-9052 e_multiple_converter_entry
-9111 e_move_error
Analysis:
Before the analysis begins, all the files in the run directory must be saved (see paragraph 4 for
version dependencies), as development support may need them for the analysis.
Example:
11:23:50 DIA 9 000 TEST /SAP BY2 Datenbankfehler -602 has occurred
11:23:50 DIA 9 000 Laufzeitfehler ".................." has occurred.
> short dump "010322 111907 pwdf0221 TEST " created.
Example:
Termination point information
The termination occurred in ABAP program "/SAPAPO/SAPLOM_PLANNING ",
in "/SAPAPO/OM_ORDER_CHANGE".
The main program was "/SAPAPO/SAPRRP_PT_ENTRY ".
-9020 e_init_missing
-9027 e_bad_fdir
-9034 e_bad_usmpage
-9046 e_no_converter_entry
Page 18 of 38
Support Guide SAP DB and liveCache
EXCEPTION:
Error –9046 can occur in the liveCache environment, if an ‘Init liveCache’ is terminated and a
restart then attempted. This can be checked using file lcinit.his. The liveCache must then be
reinitialized.
-9030 e_bad_logpage
Restore devspace
-9209 e_log_error
Analysis:
2. Step: troubleshooting
a) Log mode SINGLE:
In SINGLE log mode there is no mirrored log at database level. A restore Devspace can
not be made with this configuration.
Using RAID:
If the customer is using a RAID system to mirror the log, the log errors must be cleared
using RAID administration.
No mirroring of the log device:
Note: this should not occur in live operations.
In this instance, a recovery can only be made using existing backups. As yet unsaved data
is lost.
Page 19 of 38
Support Guide SAP DB and liveCache
7 Directory Structure
For documentation on directory structure, go to the internet site;
http://www.sapdb.org/solutions/technology/sapdb/pdf/directorydistrib_72eng.pdf
(www.sapdb.org -> Documentation -> Distribution of the SAP DB Directories). This chapter
is intended to provide a brief overview.
• INDEPDATAPATH:
Version-independent data (such as the RUNDIRECTORY) is located in the directory called
INDEPDATAPATH (Independent Data Path). The following dbmcli command can be used
to determine which directory has been defined as INDEPDATAPATH at the customer:
dbmcli –d <DBNAME> -u <controluser,controlpasswort> dbm_getpath INDEPDATAPATH
Example:
dbmcli –d E20 –u control,control dbm_getpath INDEPDATAPATH
Result:
OK
/sapdb/data
Page 20 of 38
Support Guide SAP DB and liveCache
• INDEPPROGPATH:
Version-independent database programs are located in the directory called
INDEPPROGPATH (Independent Program Path). The following dbmcli command can be
used to determine which directory has been defined as INDEPPROGPATH at the
customer:
dbmcli –d <DBNAME> -u <controluser,controlpasswort> dbm_getpath INDEPPROGPATH
Example:
dbmcli –d E20 –u control,control dbm_getpath INDEPPROGPATH
Result:
OK
/sapdb/programs
In this Unix system the IndepProgPath directory is in /sapdb/programs.
• The MAPFILES from the respective database state can be found in the directory
%DBROOT%\support\mapfiles (version 6.2), or <INSTROOT>\support\mapfiles
(version 7.2). The crash address is usually a function from the kernel.map file:
kernel
Page 21 of 38
Support Guide SAP DB and liveCache
Page 22 of 38
Support Guide SAP DB and liveCache
8.4 Uninstalling
3
such as the DBUPDATE.log or LCINST.log
Page 23 of 38
Support Guide SAP DB and liveCache
10.1 Administration
liveCache administration documents are available on the internet:
http://pal100075.pal.sap-ag.de/ -> liveCache -> Functionality -> LC Administration
There is also a document on liveCache recovery:
Page 24 of 38
Support Guide SAP DB and liveCache
http://pal100075.pal.sap-ag.de/ -> liveCache -> Technical Tips & Tricks -> APO 3.0 Backup
& Recovery
4
Classes and methods to be exact
Page 25 of 38
Support Guide SAP DB and liveCache
The most important data regarding the global Data Cache capacity being used can be seen in
the LC10 main screen (liveCache hit rates) by pushing the ‘liveCache performance’ button.
Page 26 of 38
Support Guide SAP DB and liveCache
The dbmcli command show pse_status determines whether or not the extended memory is too
small. This command is either executed at operating system level or from transaction SM49. If
both the ‘writes out of range’, and ‘reads out of range’ values stand at zero, it can be assumed
that the extended memory is sufficiently large. As of APO version 3.0, this information can be
displayed via transaction LC10 -> liveCache Console.
All systems
Cache capacity details can be displayed by pressing the ‘Data Cache’ button (in APO 2.0, in
the ‘liveCache detail analysis’ area). The actual user data consist primarily of OMS data, and
partly of SQL data.
All APO liveCache application data is stored in OMS pages as persistent objects. These 8KB
file pages are linked together and assigned to class containers. See ‘OMS data’ for the
number of pages located in the cache.
Information is also saved from the liveCache in B*-Tree format. Objects saved in this format
are liveCache system tables, some SQL tables required by APO, indexes on persistent objects
(simplified model), and versions stored because of memory shortage. The term ‘SQL data’ is
used to refer to all the data in B*-Trees.
The Data Cache should consist mainly of ‘OMS data’, followed by ‘OMS history’, and ‘SQL
data’. The changed data is saved in the History5 and will later be deleted by Garbage
collectors. This temporary storage of changed data is necessary as the liveCache is observes
the consistent view concept. This means that an APO application always wants to see the data,
as it was at the start of the application6 – regardless of whether the data has been changed by
another application in the mean time. The origin data must therefore be kept until no more
applications need to access it. The history consists of this (in effect) obsolete data. A high
‘OMS history’ percentage in the data cache (data cache usage) can indicate application
problems, and must be investigated.
5
For those familiar with Oracle: History corresponds approximately to the rollback segments in Oracle
6
at transaction start or at the start of a transactional simulation to be exact
Page 27 of 38
Support Guide SAP DB and liveCache
The ‘used data cache’ is a good indicator of whether the data cache is large enough as it
shows what capacity of the data cache is being used. If this value remains below 100% for a
long time, you can assume that the data cache is large enough. Single observation on the other
hand is not sufficient. Releasing the history data causes lots of space to be created in the data
cache. However this is quickly refilled with subsequent data.
You can get an approximate idea of how much application data is currently available in the
Page 29 of 38
Support Guide SAP DB and liveCache
Analysis:
In 1., the entries are displayed in the table DBCON. The liveCache Server pwdf0221, and
physical liveCache name LCA are specified in the logic liveCache connection names LCA and
LDA. If there are no entries for LCA, and LDA in 1, they must be entered using transaction
LC10, (see note 136153).
If you now look at point 4, you will see that the Xuser entries for the dbmcli tool are stored
here. In addition to the DEFAULT entry there must be an entry stating the control user. If
there is no such entry, it can be fetched using transaction SM49, choosing the dbmcli
command like this:
-d <phys. LC> -n <lc-Server> -us <controluser, controlpassword>
Example: -d LCA –n pwdf0221 –us control,control
Page 30 of 38
Support Guide SAP DB and liveCache
Xuser entries are case sensitive. In the above example, an error was made during creation of
the Xuser Control User entry, as the liveCache server name must be specified in capitals, in
contrast to the entry in the DBCON table (see 1.). This would also cause a dbmcli error. To
solve this problem, an additional entry must be made for the control user, as described above.
The incorrect entry can be deleted in transaction SM49 as follows:
-d <phys. LC> -n <incorrect lc_servername> -ud -ux SAPR3,SAP
Example: -d LCA –n PWDF0221 –ud –ux SAPR3,SAP
The cause of these errors is usually the fact that the file dbpinstall was incorrectly registered.
To determine the meaning of the error do this (if you have MS Developer Studio installed):
- Select menu option Tools -> Error Lookup
- Enter the HRESULT number (for example, 0x80040154)
- Press the Look Up button:
- In this example, the message number signifies that one of the classes has not been
registered, which means for example, that the registration of dbpinstall should be checked.
There are also some message numbers that can not be determined using Error Lookup. They
are listed in the table below:
0x80040201L GEO00D_DCOM_TOO_MANY_OUT_PARAM
0x80040202L GEO00D_DCOM_UNSUPPORTED_PARAM_TYPE
0x80040203L GEO00D_DCOM_MISSING_USERTYPE_GUID
0x80040204L GEO00D_DCOM_TOO_MANY_INTERFACES
0x80040205L GEO00D_DCOM_PROGID_NOT_FOUND
0x80040206L GEO00D_DCOM_INPROCSERVER_NOT_FOUND
0x80040207L GEO00D_DCOM_LOCALSERVER_NOT_FOUND
0x80040208L GEO00D_DCOM_METHOD_NOT_FOUND
Page 31 of 38
Support Guide SAP DB and liveCache
0x8004020AL GEO00D_DCOM_INSPEC_ROUTINE_NOT_FOUND
0x8004020BL GEO00D_DCOM_COCLASS_IN_REGISTRY_NOT_FOUND
0x8004020CL GEO00D_DCOM_ONLY_INPROC_SUPPORTED
0x8004020DL GEO00D_DCOM_LIBRARY_NOT_LOADABLE
0x8004020EL GEO00D_DCOM_DLL_MAIN_MISSING
0x8004020FL GEO00D_DCOM_DLL_MAIN_ERROR
0x80040210L GEO00D_DCOM_NO_COCLASS_OBJECT_FOUND
0x80040211L GEO00D_DCOM_DBPROC_CRASHED
0x80040212L GEO00D_DCOM_BUFFER_LIMIT
0x80040313L GEO00D_DCOM_UNEXPECTED_TYPELIB_STRUCTURE
0x80040314L GEO00D_DCOM_TRANSEND_FAILED
0x80040315L GEO00D_DCOM_INSTALLATION_PATH_NOT_FOUND
0x80040316L GEO00D_DCOM_INSTALLATION_NOT_REGISTERED
0x80040317L GEO00D_DCOM_COULD_NOT_RETRIEVE_PATH_VAL
Page 32 of 38
Support Guide SAP DB and liveCache
However, if the problem is due to consistency between the content server database, and the
R/3 system, then application development should be consulted.
Page 33 of 38
Support Guide SAP DB and liveCache
Appendix
Page 34 of 38
Support Guide SAP DB and liveCache
Character Meaning
/o<trcode> Open a new mode, and in this mode start transaction <trcode>.
/i Delete a mode
Page 35 of 38
Support Guide SAP DB and liveCache
Character Meaning
Transaction Meaning
DB50 Console
SM51 Server info. (patch level, ...) and to change application servers
Page 36 of 38
Support Guide SAP DB and liveCache
Transaction Meaning
Page 37 of 38