Download as pdf or txt
Download as pdf or txt
You are on page 1of 493

1/31/2024

Application Server Infrastructure


Generated on: 2024-01-31 00:20:03 GMT+0000

Support Content | 1.0

PUBLIC

Original content: https://help.sap.com/docs/SUPPORT_CONTENT/si?locale=en-US&state=PRODUCTION&version=1.0

Warning

This document has been generated from the SAP Help Portal and is an incomplete version of the official SAP product
documentation. The information included in custom documentation may not re ect the arrangement of topics in the SAP Help
Portal, and may be missing important aspects and/or correlations to other topics. For this reason, it is not for productive use.

For more information, please visit the https://help.sap.com/docs/disclaimer.

This is custom documentation. For more information, please visit the SAP Help Portal 1
1/31/2024

Application Server Infrastructure tags


Software Product Functions:

NW ABAP Business Address Service

NW ABAP Business Rule Framework (BRFplus)

NW ABAP Data Archiving

NW ABAP Integration Technology (ALE)

NW ABAP Print and Output Management

NW ABAP Runtime Environment

NW ABAP Communication Services (former NW ABAP SAP Connect )

NW ABAP User Administration and Authorization

NW ABAP User Authentication

NW Client/Server Technology (CST)

UI SAP Interactive Forms by Adobe

UI SAP Netweaver Business Client (NWBC)

UI Web Dynpro ABAP

UI WebGUI and Internet Transaction Server (ITS)

Software Products:

ABAP Development

Internationalization and Unicode

maintenance planner

Netweaver ABAP Remote Call Function (RFC)

SAP 3D Visual Enterprise Viewer

SAP Archiving and SAP Document Access by OpenText

SAP Business Work ow

SAP Fiori for SAP Test Data Migration Server

SAP Folders Management

SAP Gateway

SAP Identity Management

SAP Landscape Management, standard edition

SAP Landscape Management, enterprise edition


This is custom documentation. For more information, please visit the SAP Help Portal 2
1/31/2024

SAP NetWeaver Application Server for ABAP

SAP NetWeaver Mobile

SAP Screen Personas

SAP Test Data Migration Server

SAP Workforce Performance Builder, enterprise edition

Software Logistics

Software Logistics - Change Control and Transport

Software Logistics - Front-End Installtion

Software Logistics - Lifecycle Management Automation

Software Logistics - System Maintenance

Software Logistics - System Provisioning

software logistics toolset

Common Products (relevant for multiple GFM areas):

SAP NetWeaver

SAP NetWeaver Application Server

Security

SAP Client-Server Technology

MUNITY

NetWeaver Technology

can post your questions on NW


nt/Server Technology (CST) DISPATCHER SLICENSE
RFC GATEWAY
munity page. ENQUEUE ICM
y also tunned to latest information!

NEL INFO

t's New in SAP NetWeaver 7.4

Kernel: Important News LOGON GROUP NETWORK


MESSAGE
MEMORY
kernel deployment strategies SERVER
MANAGEMENT

nloading SAP Kernel Patches

nel Regressions

This is custom documentation. For more information, please visit the SAP Help Portal 3
1/31/2024
LS STARTUP UPDATE SYSTEM SAP WEB
SERVICES DISPATCHER
ng guide

stack

e tools

AVAILABILITY

h Availability information

KERNEL RELEASE DETAILS

1969546 - Release Roadmap for Kernel 74x


and 75x

2556153 - Using kernel 7.53 instead of


kernel 7.40, 7.41, 7.42, 7.45, or 7.49

2608318 - SAP Support Package Stack


Kernel 7.53 Patch Level 100

2637769 - SAP Support Package Stack


Kernel 7.53 Patch Level 200

2650112 - SAP Support Package Stack


Kernel 7.53 Patch Level 201

2699298 - SAP Support Package Stack


Kernel 7.53 Patch Level 300

SAP Kernel 753

1969546 - Release Roadmap for Kernel 74x


and 75x

2556153 - Using kernel 7.53 instead of


kernel 7.40, 7.41, 7.42, 7.45, or 7.49

2608318 - SAP Support Package Stack


Kernel 7.53 Patch Level 100

2637769 - SAP Support Package Stack


Kernel 7.53 Patch Level 200

2650112 - SAP Support Package Stack


Kernel 7.53 Patch Level 201

2699298 - SAP Support Package Stack


Kernel 7.53 Patch Level 300

SAP Kernel 749

2350788 - Using kernel 7.49 instead of


kernel 7.40, 7.41, 7.42 or 7.45

This is custom documentation. For more information, please visit the SAP Help Portal 4
1/31/2024
2384355 - SAP Support Package Stack
Kernel 7.49 Patch Level 100

2407681 - SAP Support Package Stack


Kernel 7.49 Patch Level 101

2435328 - SAP Support Package Stack


Kernel 7.49 Patch Level 200

2494149 SAP Support Package Stack


Kernel 7.49 Patch Level 300

2514637 - SAP Support Package Stack


Kernel 7.49 Patch Level 301

2555639 - SAP Support Package Stack


Kernel 7.49 Patch Level 400

2573063 - SAP Support Package Stack


Kernel 7.49 Patch Level 401

2626990 - SAP Support Package Stack


Kernel 7.49 Patch Level 500

2690088 - SAP Support Package Stack


Kernel 7.49 Patch Level 600

SAP Kernel 722

1744209 - SAP Kernel 720, 721 and 722:


Versions and Kernel Patch Levels

2133909 - SAP Kernel 722 (EXT): General


Information and Usage

2115344 - Installation of Kernel 722 (EXT)

2276359 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 100

2292019 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 101

2361561 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 200

2389216 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 201

2408623 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 202

2448466 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 300

This is custom documentation. For more information, please visit the SAP Help Portal 5
1/31/2024
2513476 - SAP Support Package Stack
Kernel 7.22 (EXT) Patch Level 400

2569597 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 500

2621595 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 600

2691532 - SAP Support Package Stack


Kernel 7.22 (EXT) Patch Level 700

Identify the owner of the process holding the mutex lock

Purpose

To identify the process holding the mutex lock which will help in troubleshooting mutex related problems.

Overview

There are different processes holding the mutex lock.In order to identify which is that process and how to release that held
mutex we must rst understand how to identify the process.

Breaking down the MtxLock

Firstly what is meaning of the MtxLock function ? By de nition this means wait for a lock to become available. Mutexes can't be
recovered automatically if a process dies while still holding a lock.

The function MtxLock() is called by a process then the caller id aka client id aka CID is set as the new owner of the mutex. So the
number which you see above is actually the CID or the new owner of the mutex. To unlock a mutex we use a function
MtxUnlock().The fun part is only process which is allowed to unlock a locked mutex is the current owner himself aka the CID.

The Mutex related trace entries

In the developer traces of the work processes (dev_w*) we can nd the entries as:

example #1

*** WARNING => MtxLock <hex address> RQ_Q_WOD owner=30004 deadlock ? [mtxxx.c 641]

example #2

*** WARNING => MtxLock <hex address> MTXGLOB owner=30001 deadlock ? [mtxxx.c 2574]

Now lets break down each example one by one.

From example #1

*** WARNING => MtxLock a00010020000270 RQ_Q_WOD owner=30004 deadlock ? [mtxxx.c 641]

Now here we can see the owner is : owner=30004

This is custom documentation. For more information, please visit the SAP Help Portal 6
1/31/2024
Similarly in example #2 we can see the owner is owner=30001

Identifying the caller id aka client id aka CID

First I would like to list out the prede ned client id's in the kernel.

The Client id range starts from 30000 and is end to 32767.

By de nition it states as ( part of internal SAP coding I cant provide more detail due to security reasons ) :

30000+0 = 30000 --> Owner is dispatcher

30000+1 = 30001 --> Owner is ICM

30000+2 = 30002 --> Owner is the java control process

30000+3 = 30003 --> Owner is dpmon process

30000+4 = 30004 --> Owner is gateway

30000+5 = 30005 --> Owner is VMC process

30000+6 = 30006 --> Owner is ES (extended segment) memory area

30000+7 = 30007 --> Owner is EM (extended memmory) memory area

30000+8 = 30008 --> Owner is EM (extended global) memory area

Troubleshooting the entries

Going one step further we now know who is the owner of the mutex.Our next step is checking the related developer trace le to
rectify the issue.

From example #1

*** WARNING => MtxLock <hex address> RQ_Q_WOD owner=30004 deadlock ? [mtxxx.c 641]

Here we will check in the gateway trace (dev_rd) to see what is the issue.

From example #2

*** WARNING => MtxLock <hex address> MTXGLOB owner=30001 deadlock ? [mtxxx.c 2574]

Here we will check in the ICM (dev_icm) to see what is the issue.

This is custom documentation. For more information, please visit the SAP Help Portal 7
1/31/2024
TIP: Please also check the dev_*.old traces respectively.

Related Documents
Wiki page for Client server technology

Architecture of SAP NetWeaver Application Server ABAP

Architecture of SAP NetWeaver Application Server Java

Components of SAP NetWeaver Application Server

RFC Gateway

Each instance of an SAP System has an RFC Gateway. The RFC Gateway enables communication between work processes and
external programs, as well as communication between work processes from different instances or SAP Systems.

Wiki Documentation

Additional Access Control Lists (RFC Gateway)

Allocation of RFC Gateway Registered Programs

RFC Gateway Access Control Lists

RFC Gateway security settings - extra information regarding SAP note 1444282

Monitoring RFC Gateway Resources Using CCMS Infrastructure

Standalone RFC Gateway Monitor for ASCS instance

How to use gwmon tool?

Relevant SAP notes FAQ

47682 - Activating the CPIC trace Disabling RFC Gateway security

How to check the CPIC environment variable


63347 - List: CPIC error codes
How to disable the RFC Gateway logging
2180934 - Analysis of Workprocess in "On
Hold" RFC, or "Stopped" CPIC status How to display & reread RFC Gateway ACL
les / secinfo and reginfo les
2276924 - CPIC: trace le handling How to limit the size of a developer trace le

1989587 - GW: Interface for maintenance of How to troubleshoot RFC Gateway security
RFC Gateway security les settings (reg_info and sec_info)

This is custom documentation. For more information, please visit the SAP Help Portal 8
1/31/2024

2325191 - GW: Maintenance of RFC Gateway Identifying RFC destination with trace
enabled
ACL les
License for a standalone RFC Gateway
64016 - Using the SAP RFC Gateway monitor installation
GWMON
Reloading the reginfo - secinfo at a
Standalone RFC Gateway

Miscelaneous Info

[WEBINAR] RFC Gateway Security Features

Additional Access Control Lists (RFC Gateway)

Purpose
Help understanding the additional ACLs (Access Control Lists) available at the RFC Gateway that were not covered at the RFC
Gateway Access Control Lists.

Overview

The RFC Gateway Access Control Lists covers the most commonly used ACLs available at the RFC Gateway
(the reginfo and secinfo), as well as the Simulation Mode.

For clarity purposes, this page will cover the additional ACLs available at the RFC Gateway.

Reading the other ACL Expert Content page rst is recommended, as some of the examples from
there are used at this page as well.

gw/acl_ le

This parameter points to an ACL le that can be used to control which IP addresses are allowed to
open a TCP/IP connection to this RFC Gateway.

Each line of the le represents one rule. It can start either with "permit" or "deny", which will be the
action performed on the incoming connection.

The rules are applied from top to bottom and the rst rule that matches the incoming connection is
applied.

Lines started with a "#" sign are considered comments.

There is always an implicit "deny all" rule as the last rule, even if not present at the le.

If this ACL is active, it will be applied before the reginfo rules.


This is custom documentation. For more information, please visit the SAP Help Portal 9
1/31/2024

In other words, if the registration of the program "TAXSYS" is allowed from the host "taxserver" (IP
address 10.10.10.10, for example), there must be a "permit" rule at the gw/acl_ le allowing the IP
address from the host "taxserver" (10.10.10.10) to open a TCP/IP connection with the RFC Gateway.

Otherwise, the registration of the program will fail.

In a similar manner, if a user is allowed to start a program on demand, at a remote host (secinfo), the
remote host must be allowed to open TCP/IP connections to the RFC Gateway, as when the program
starts it will connect back to the RFC Gateway.

Example of gw/acl_ le

# This is a comment at the beginning of the file


# The next line allows the IP address 10.10.10.10 (taxserver) to connect to thi
permit 10.10.10.10

# The host 10.20.20.20 is not allowed to connect here


deny 10.20.20.20

# However, other 10.20.20.X hosts can connect


permit 10.20.20.0/24

# The whole 192.168.X.X network can connect


permit 192.168.0.0/16

gw/prxy_info

Consider the scenario where the SAP system SRC has to connect to the SAP system TRG.

However, there is no network path that would allow direct connection from SRC to TRG.

Possible common solutions would be to connect a router, a rewall, or a server running an saprouter
to both networks.

But there is another possibility. If the SAP system MID is already connected to both networks, it is
possible to use it as a "router" between the other two systems.

The "proxy info" ACL (gw/prxy_info) allows administrators to control whether this will be allowed.

As in other ACL les, each line represents a rule. It can start with either P for "permit" or D for "deny".

The rules are applied from top to bottom and the rst rule that matches the incoming connection is
applied.

Lines started with a "#" sign are considered comments.

There is always an implicit "deny all" rule as the last rule, even if not present at the le.

This is custom documentation. For more information, please visit the SAP Help Portal 10
1/31/2024

Example of gw/prxy_info

# This is a comment at the beginning of the file

# This file should be present at the servers of the MID system


# The servers from system SRC are allowed to connect to the system TRG through
P SOURCE=src-host1,src-host2 DEST=trg-host1,trg-host2

# All servers from the domain "example.com" are NOT allowed to connect to TRG
D SOURCE=*.example.com DEST=trg-host1,trg-host2

# IP addresses can be used. 10.10.10.10 can connect to any remote server throug
P SOURCE=10.10.10.10 DEST=*

# Any server can connect to any host of the domain "example.com"


P SOURCE=* DEST=*.example.com

Related Content

Related Documents
RFC Gateway Access Control Lists

Related SAP Notes/KBAs

SAP note 910918: GW: Parameter gw/prxy_info

Allocation of Gateway Registered Programs

Purpose

Help you to understand the allocation of the external programs registered to the Gateway of an SAP instance.

Overview

This page contains information about the allocation of external programs in the Gateway of an SAP instance, aiming to
demonstrate the analysis behind their usage and common errors.

RFC Error "Timeout during allocate"

The most common error related to the allocation of Gateway registered programs is the error "timeout during allocate". This
error is described in the SAP Note 1333483 in details. One of the possible causes mentioned is the fact that the affected
program is not registered multiple times in the Gateway and the only registration performed is already in use, causing the
below timeout if the program is attempted to start more than once. The analysis behind this aspect of the "timeout during
allocate" error will be explained in details in the next chapters of this Expert Content page.

This is custom documentation. For more information, please visit the SAP Help Portal 11
1/31/2024

Analyzing the RFC Destination Con guration

In order to check how exactly the RFC destination for this program is con gured, you will need to access transaction SM59 and
open the RFC destination responsible for starting the TP you want to analyze (as per the above image). After selecting the RFC
destination, in the Technical Settings tab as per the image below, one speci c Gateway to communicate with the External
Server can be de ned in box "Gateway Options".

This is custom documentation. For more information, please visit the SAP Help Portal 12
1/31/2024

Gateway Options is Speci ed in the RFC Destination

If the Gateway Host and Gateway Service are speci ed in the Gateway Options box as per the below image, it means the
communication with this External Server where this External Program is started will only be performed by the de ned Gateway
(sapgw00 running in the host hostexample1).

This is custom documentation. For more information, please visit the SAP Help Portal 13
1/31/2024

Gateway Options is Not Speci ed in the RFC Destination

If the Gateway Host and Gateway Service are not speci ed in the Gateway Options box as per the image below, the local
Gateway will communicate with the External Program (E.g. Application Server where the user is currently logged on or where
the job is running). In this scenario, the External Program has to be registered in all the instances of this SAP system, otherwise
the error "program not registered" will be triggered as per the SAP Note 1893014.

Gateway Registrations of the External Program


The next step of this analysis which follows the analysis of the RFC destination is the analysis of the Gateway registrations of
this External Program. For this, you must access the transaction SMGW and use the meny GoTo, selecting the option "Logged
on Clients". This is shown in the below image. The SMGW transaction should be accessed in the instance de ned in the Gateway
Options box, in case it was de ned, or all the instances of the SAP system should be analyzed, in case the elds were not
de ned.

In the Logged-On Clients screen of the SMGW transaction, you can order the "TP Name" column in Descending or Ascending
order in order to make it easier to visualize all the registrations for the External Program you are analyzing. After this you can
search for the External Program name and you will nd them as shown in the below image.

This is custom documentation. For more information, please visit the SAP Help Portal 14
1/31/2024
You can count now the number of lines reporting the TP Name which corresponds to the External Program you are analyzing
and this is indicating the maximum number of simultaneous communications that can be started with this External Program
from this Gateway.

Gateway External Program Current Connections


In the initial screen of the SMGW transaction, you can order the column called "Sym. Destination" in ascending or descending
order and after this search for the name of the External Program you are analyzing. After you nd the connections started with
this program as per the below image, you can check the number of active connections which are performed with this External
Server. The maximum number of connections possible is equal to the number of registrations this program has with this
Gateway, as per the previous step of this analysis. In the below image, you can see the last line of this External Program
reporting the Status "connecting". This connection can time out with the error "timeout during allocate" since all the
registrations of this External Program are already in use (status Connected).

In summary, you have to make sure the External Program is registered enough times to the Gateway (in case it is possible to
register this program more than once, since this is de ned by the program designers itself). In case the program is started for
more times than it was registered in the Gateway, the error "timeout during allocate" can happen, depending on the value of
the time out parameter gw/reg_timeout (as mentioned in SAP Note 1333483), since a connection can be freed before the time
out period is reached, allowing the connection under "connecting" status to be established and changed to "Connected" status,
consequently avoinding the error.

It is important to note that you can see this dump when the external program is hanging or does not respond fast enough as
well. You can identify this behavior if you can see the "Timeout during allocate of a registered program" occurring without any
active connection to the external program or if just a few active connections are reported when you have a greater number of
registrations performed for this external program in the Logged On Clients screen.

Related Content

Related Documents

RFC Gateway Access Control Lists

Related SAP Notes/KBAs

SAP Note 1333483 - Timeout during allocate of a registered program

SAP KBA 2104408 - Checklist for "program <program ID> not registered" errors

FAQ RFC Gateway


This is custom documentation. For more information, please visit the SAP Help Portal 15
1/31/2024

Client-Server Technology - RFC Gateway FAQ

Disabling RFC Gateway security

How to check the CPIC environment variable

How to disable the RFC Gateway logging

How to display & reread RFC Gateway ACL les / secinfo and reginfo les

How to limit the size of a developer trace le

How to troubleshoot RFC Gateway security settings (reg_info and sec_info)

Identifying RFC destination with trace enabled

License for a standalone RFC Gateway installation

Reloading the reginfo - secinfo at a Standalone RFC Gateway

This is custom documentation. For more information, please visit the SAP Help Portal 16
1/31/2024

Disabling RFC Gateway security

Disabling RFC Gateway security

Removing the les de ned at the gw/reg_info and gw/sec_info parameters will remove the security rules from the RFC
Gateway.

If these les do not exist, the RFC Gateway reads the de nition of the gw/acl_mode parameter. If it is set to, 1 only internal rules
are enabled. Until your own RFC Gateway security rules are not correctly setup, it is possible to remove
the reginfo and secinfo les and also set the parameter gw/acl_mode to 0 (zero) in order to avoid the security control (in such
way, the parameter gw/reg_no_conn_info should not include the bitmask 16, see the SAP note 1444282) .

The combination of the above settings means that everything is allowed when starting external servers and registered servers.
See the SAP note 1480644.

In summary, follow these steps in the same order as below:

1. Move/Rename the reginfo and secinfo les;

2. Ensure that the parameter gw/reg_no_conn_info does not include the bitmask value 16 (setting this parameter to zero
achieves this);

3. Set the parameter gw/acl_mode to zero.

Read this WIKI for assistance with reloading the security les at a Standalone RFC Gateway (like a RFC Gateway running at an
SCS instance from a Java stack) without having to restart the RFC Gateway/instance.

OBSERVATION: If the parameter gw/acl_mode was changed before the les were moved, or if it was already set to zero, you
need to trigger a manual reload of the security rules (transaction SMGW, menu Goto -> Expert functions -> External security ->
read again) after moving/renaming the les.

OBSERVATION 2: If the program was already registered before the security features were disabled, it is necessary to restart
the registered program (de-register and re-register it).
This is required because the RFC Gateway copies the related rule to the memory area of the program registration.
Thus, changes to the security settings only take effect after the registered program is restarted / re-registered.

IMPORTANT : It is not recommended to keep the RFC Gateway security disabled in production systems. Use this as an
emergency workaround.
In order to implement the appropriate RFC Gateway security, read this WIKI.

How to check the CPIC environment variable

How to check the CPIC environment variable?

To check the current value of an environment variable loaded by a speci c process you can use some Operating System tools
and list all environment variables to a speci c process ID (PID).
For ABAP stack you should check the PID of the dispatcher process (disp+work). It is possible to check the PID in the dev_disp
trace le or checking from OS level. For JAVA stack you should check the jlauch or jstart process.
Following some commands for each speci c Operating System:

Windows

This is custom documentation. For more information, please visit the SAP Help Portal 17
1/31/2024
It is possible to check the enviroments of a process any time using the Process Explorer Tool. This is a freeware tool
at http://www.sysinternals.com.
Select the process, goto properties in the popup menu and then choose the Environment tab:

Linux

The command "ps eww <PID>" show the environment variable of the process. It is also possible to use "cat
/proc/<PID>/environ":

Solaris

Ther are the following ways for Solaris: "/usr/ucb/ps eww <PID>" or "pargs -e <PID>":

AIX

With the same way of Linux you can use the "ps eww <PID>".

How to disable the RFC Gateway logging

The RFC Gateway logging feature is explained in the SAP note 2527689 - GW: Setting up gateway logging (new). It is
automatically enables in the Netweaver systems. To disable this feature it is possible to set the parameter gw/logging without

This is custom documentation. For more information, please visit the SAP Help Portal 18
1/31/2024
value in pro le and restart the system:

"gw/logging = "

Another possible way is using the SMGW transaction, removing all settings and remove le name.

How to display & reread RFC Gateway ACL les / secinfo and reginfo les
Navigate SMGW and perform the steps as follow:
Click on menu tab Goto->Expert Functions->External Security->Maintenance of ACL Files

Steps to reread RFC Gateway ACL les:

SMGW->goto->Expert Functions->External Security->Maintenance of ACL les. (here you will be able to see RFC Gateway ACL
les) ->goto ->reread/reread(global)

If you have done the changes in ACL les you will see the following prompt

You can click ok/cancel to close the popup. Perform the above mentioned steps in popup to reread the ACL les.

This is custom documentation. For more information, please visit the SAP Help Portal 19
1/31/2024

You can also check the following help link:

https://help.sap.com/doc/62b4de4187cb43668d15dac48fc00732/7.5.8/en-US/5872aed2b8cc4b0387374cbf5f4adcf6.html

How to troubleshoot RFC Gateway security settings (reg_info and sec_info)

How to troubleshoot RFC Gateway security settings (reg_info and sec_info)?


Firstly review what is the security level enabled in the instance as per the con guration of parameter gw/reg_no_conn_info. This
parameter will enable special settings that should be controlled in the con guration of reginfo le. Further information about
this parameter is also available in the following link:

RFC Gateway security settings - extra information regarding SAP note 1444282

The SAP documentation in the following link explain how to create the le rules:

RFC Gateway Security Files secinfo and reginfo

The notes 1408081 explain and provide with examples of reginfo and secinfo les. In order to gure out the reason that the RFC
Gateway is not allowing the registered program, following some basics steps that should be managed during the creation of the
rules:

1) The rules in the les are read by the RFC Gateway from the TOP to the BOTTOM hence it is important to check the previous
rules in order to check if the speci c problem does not t some previously rule. See the examples in the note 1592493;

2) It is possible to change the rules in the les and reload its con guration without restart the RFC Gateway: open the
transaction SMGW -> Goto -> expert functions -> external security -> reload However, in such situation, it is mandatory to de-
register the registered program involved and reregister it again because programs already registered will continue following
the old rules;

3) The rules in the secinfo and reginfo le do not always use the same syntax, it depends of the VERSION de ned in the le.
Check the above mentioned SAP documentation about the particular of each version;

4) It is possible to enable the RFC Gateway logging in order to reproduce the issue. The parameter is gw/logging, see note
910919. This parameter will allow you to reproduce the RFC Gateway access and see the TP and HOST that the access is using

This is custom documentation. For more information, please visit the SAP Help Portal 20
1/31/2024
hence create the rules in the reginfo or secinfo le;

5) The rules de ned in the reginfo or secinfo le can be reviewed in colored syntactic correctness. open transaction SMGW ->
Goto -> expert functions -> Display secinfo/reginfo Green means OK, yellow warning, red incorrect. See note 1503858;

Identifying RFC destination with trace enabled

Identifying RFC destination with trace enabled

It is possible to enable a RFC trace in the SM59 destination using the following con guration.

In order to check if there are any RFC destination with the trace option enable, it is possible to search in the table RFCDES in a
simple way.

Go to SE16 -> list content of table RFCDES -> search in column RFCOPTIONS by "T=Y".

If the "T=Y" option is enable, this means that this RFC destination has the trace option enabled.

This is custom documentation. For more information, please visit the SAP Help Portal 21
1/31/2024

License for a standalone RFC Gateway installation

License for a standalone RFC Gateway installation


No license is required for a standalone RFC Gateway installation.

Just perform the installation per the SAP Installation Guides.

Reloading the reginfo - secinfo at a Standalone RFC Gateway

Reloading the reginfo/secinfo at a Standalone RFC Gateway


If you have a Standalone RFC Gateway installation, or an RFC Gateway running at the ASCS or SCS (Java) instance, you can
reload the security les (reginfo and secinfo) without having to restart the RFC Gateway or the (A)SCS instance.

Logon to the server where the Standalone RFC Gateway is executing as "<sid>adm", and then execute the command:

gwmon pf=<path to instance pro le>

Once at the gwmon tool, access the menu "m" -> "9" -> "4".

How to use gwmon tool?

Purpose
When using a Java system, or a Standalone Gateway running on Central Services application server (ASCS/SCS), you may need
to use 'gwmon' tool in order to monitor and perform actions over Gateway functionality (similar which what can be done with
SMGW transaction).

This process has different names:


UNIX: gwmon
Windows: gwmon.exe

How to check if there's a Standalone Gateway running on an application server?


Executing command:
sapcontrol -nr $$ -function GetProcessList
where $$ corresponds to instance number.

hostname:sidadm > sapcontrol -nr $$ -function GetProcessList

name, description, dispstatus, textstatus, starttime, elapsedtime, pid


disp+work, Dispatcher, GREEN, Running, <date> <time>, …, DISP_pid
igswd_mt, IGS Watchdog, GREEN, Running, <date> <time>, …, IGS_pid
gwrd, Gateway, GREEN, Running, <date> <time>, …, GW_pid

This is custom documentation. For more information, please visit the SAP Help Portal 22
1/31/2024
If the Standalone GW is running on ASCS/SCS, output will show something similar to:

hostname:sidadm > sapcontrol -nr $$ -function GetProcessList

name, description, dispstatus, textstatus, starttime, elapsedtime, pid


msg_server, MessageServer, GREEN, Running, <date> <time>, …, MS_pid
enserver, EnqueueServer, GREEN, Running, <date> <time>, …, ENQ_pid
gwrd, Gateway, GREEN, Running, <date> <time>, …, GW_pid

How to use ʻgwmon’ tool to monitor Standalone Gateway?


Command to start this tool is:
>> gwmon pf=<path_to_GW_pro le>

for instance, it should be:


gwmon pf=/usr/sap/<SID>/SYS/pro le/<SID>_ASCS$$_<hostname>

You will get main output, showing Gateway monitor, connected to hostname /sapgw$$

You generally exit the gateway monitor with q, and use m to go to the (next higher) menu.
If you enter option m (menu) and press Enter, it will display “Main menu”, where different options can be selected:

1. display connection table


You can display Active CPI-C Connections, similar to output from SMGW transaction.
The header speci es the size of the connections table and the current number of entries.
Attributes displayed for each active connection are explained on Expert Content page "Displaying Active CPI-C
Connections".

2. display work process table

3. display client table


Here, we can display Logged On Clients (same information that we could extract with SMGW, Goto > Logged On Clients).
Values displayed for each client logged on to the gateway, detailed on "Displaying Logged On Clients" online help.

This is custom documentation. For more information, please visit the SAP Help Portal 23
1/31/2024
When we want to identify
if a program has been successfully registered on this Gateway,

option 3 will show us program registered (TYPE = REGISTER_TP) with TP name that was used for the registration.

4. display remote gw table


Remote Gateways table is shown, with similar values displayed for each remote Gateway (like on clients table). In this
case TYPE will be REMOTE_GATEWAY.Inputs 5 and 6 lead to submenus that provide functions for the relevant areas.

5. connection attributes
It provides deeper options regarding connection attributes. In this submenu you can display details of the CPI-C
connections from the basic list:

Each submenu option is detailed on "Connection Attributes" Expert Content page.

6. statistics menu
Allows you to check the performance of the Gateway. You can activate and deactivate these statistics dynamically. The
statistics display covers the areas, general statistics, gateway reader statistics, and TCP statistics.

7. gateway parameters and attributes


This option can be used to display parameters and attributes of the Gateway, as well as their values. Typically, those
parameters start with ʻgw/…’. Use option e to scroll to end of the list.

8. gateway release info

9. security information
This option should be used in order to handle Gateway security les, reginfo and secinfo, that are used to allow/deny
programs to register or be executed on this Gateway.

Reginfo le is used for external programs that register in the GW, while secinfo le is used to start external programs
which do not register.
Whenever those les are changed, they need to be reloaded (option 4 : refresh security), so that new rules are used. This
allows the security information to be modi ed during the runtime.

This is custom documentation. For more information, please visit the SAP Help Portal 24
1/31/2024
10. expert functions
Option 10 gives us much more functionality, all of them explained here.

- Gateway trace le can be reset with option 7. This may be useful when we need to remove previous information and
start tracing any error we may need to analyze.
Note that Gateway trace (called dev_rd, and normally located under work folder) can be increased and reduced using
options from Main menu:
+ : increase gateway trace
- : decrease gateway trace

- You can dump current information about connection table, client table, WPs table or remote Gateways. This allows to
get deeper information on each option.

- Option 23, should be used to de-register (cancel) a registered program.

This way, whenever program is registered again, new rules from reginfo will be used.

This is custom documentation. For more information, please visit the SAP Help Portal 25
1/31/2024

Related Content

Documents related to gwmon

Using the Gateway Monitor Outside the SAP System

Standalone Gateway Monitor for ASCS instance

SAP Note 2061464 - GW: Several minor xes in Gateway

KBA 1988220 - Gateway was shown as “Monitor deactivated” in report RSMONREL_ALV

SAP Note 1529849 - Gateway security setting in an SCS instance, AS Java

Related documentation for Gateway security

RFC Gateway Access Control Lists

KBA 2075799 - ERROR: Error (Msg EGW 748 not found) [VIDEO]

KBA 2104408 - Checklist for "program <program ID> not registered" errors

KBA 2132535 - RFC Destination fails “No storage allocation available” [VIDEO]

KBA 2145145 - User is not authorized to start an external program [VIDEO]

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Monitoring Gateway Resources Using CCMS Infrastructure

Purpose
The purpose of this page is to explain how the gateway of an SAP instance can be monitored through the CCMS infrastructure.

Overview

This is custom documentation. For more information, please visit the SAP Help Portal 26
1/31/2024
This page provides details about the CCMS monitoring infrastructure, speci cally focused in the gateway resources monitoring,
providing details about how to nd the monitoring functions and how to con gure them accordingly.

CCMS Transaction RZ20


The CCMS monitoring infrastructure, a solution within SAP NetWeaver, centrally monitors any IT environments - from individual
systems through networked SAP NetWeaver solutions, to complex IT landscapes incorporating several hundred systems. In this
section, you learn about the Alert Monitor (transaction RZ20) and its monitoring functionalities.

Most of the gateway monitoring functionalities can be found in transaction RZ20, by following the below path.

RZ20 transaction → SAP CCMS Monitor Templates → Communication → Gateway Service → <Instance Name> →
Gateway_Reader

Monitoring Gateway Resources


The CCMS Infrastructure allows you to monitor the gateway resources available in the SAP instance by using the transaction
RZ20. The below MTEs are available in order to monitor different gateway resources, they are:

Gateway_Clients - Used percentage of the maximum gateway clients con gured in the instance.
Gateway_Connections - Usage percentage of the maximum gateway connections con gured in the instance.
Gateway_RemGateways - Usage percentage of the maximum number of connected gateways.

For the above mentioned MTEs, you can see their correspondent usage and consumption also in transaction SMGW, in the
header of the transaction.

This is custom documentation. For more information, please visit the SAP Help Portal 27
1/31/2024

Gateway_CommAdmEnty - Usage percentage of the maximum number of gateway comm_adm entries.


Gateway_Workprocess - Usage of gateway work processes. This is an old concept used in SNA gateways.
Gateway_MallocFailed - Errors with the gateway malloc.
Gateway_Over owUsage - Percentage of the gateway over ow usage. This is de ned by the parameter gw/max_over ow_size
Gateway_Over owExceeded - Gateway errors when accessing the over ow area.

For more information regarding the gateway parameters and their respective objective, please refer to the Gateway
Parameters SAP online help where they are all listed and described in details, with their correspondent default values.

Monitoring Scenarios Examples


1. Using the Gateway_Clients MTE, you can set up a monitoring scenario to raise an alert when you have a small
percentage left of the total number of allowed clients connected to the gateway of this instance. With this, you can
prevent the error "Maximum number of gateway clients exceeded" described in the SAP Note 894100, therefore
preventing the failure of RFCs that might impact the business operations.

2. Using the Gateway_Connections MTE, you can set up a monitoring scenario to raise an alert when you have a small
percentage left of the total number of allowed connections to the gateway of this instance. With this, you can prevent
the error "Maximum number of gateway connections exceeded" described in the SAP Note 887909, therefore
preventing the failure of RFCs that might impact the business operations.

3. Using the Gateway_RemGateways MTE you can set up a monitoring scenario to raise an alert when you have a small
percentage left of the total number of allowed remote gateways of the gateway of this instance. With this, you can
prevent the error "Maximum number of gateways reached" described in the SAP Note 978078, therefore preventing the
failure of RFCs that might impact the business operations.

CCMS Auto-Reaction Methods


In the CCMS monitoring infrastructure, you can set up any MTE available in transaction RZ20 to automatically trigger email
alerts in case the values reported by them meet the threshold values de ned. The next chapters will explain more details about
the con guration process to achieve this.

De ning Threshold Values for the Monitored MTEs

The rst step is to de ne which MTEs you want to monitor in transaction RZ20, with this, you can start to set up their
thresholds accordingly, so you are alerted in the correct scenario. Follow the Adjusting the Threshold Values chapter from
the Con guring Alert Triggering and Alert Reactions SAP online help documentation for a detailed step by step on how to
achieve this.

This is custom documentation. For more information, please visit the SAP Help Portal 28
1/31/2024

De ning and Assigning Auto-Reaction Methods for the Monitored MTEs

The second step to achieve this con guration is to de ne and assign the auto-reaction methods to the desired MTEs in the
CCMS monitoring infrastructure. In order to perform this con guration, follow the steps mentioned in the De ning an
Automatic Alert Noti cation SAP online help documentation.

Alternatively, you can choose to de ne Central auto-reaction methods, which will trigger the email alert from the central system
instead of the local system. For this con guration, refer to the SAP online help Setting Up Central Auto-Reaction Methods for
more details.

This is custom documentation. For more information, please visit the SAP Help Portal 29
1/31/2024

Displaying MTE Performance Information Graphically

Withing the CCMS transaction RZ20, you can display the performance values shown by an speci c MTE as a graphic, allowing
you to make faster and more accurate analysis based on the reported data. In order to display the MTE values as a graphic,
follow the below steps.

1. Select the Performance MTE in RZ20.

2. Click in the Display Details button.

3. Select whether you want to display the last 30 minutes or 24 hour value.

4. Click in the "Display performance values graphically" button.

5. The graphic is nally shown in the below format.

This is custom documentation. For more information, please visit the SAP Help Portal 30
1/31/2024

Related Content

Related Documents
Gateway Parameters

De ning an Automatic Alert Noti cation

Con guring Alert Triggering and Alert Reactions

Setting Up Central Auto-Reaction Methods

Related SAP Notes/KBAs

SAP Note 894100 - Maximum number of gateway clients exceeded

SAP Note 887909 - Maximum number of gateway connections exceeded

SAP Note 978078 - Maximum number of gateways reached

SAP Note 939616 - CCMS auto-reactions: Help with troubleshooting

SAP Note 176492 - Automatic email when an alert occurs (RZ20)

RFC Gateway Access Control Lists


This is custom documentation. For more information, please visit the SAP Help Portal 31
1/31/2024

Purpose

Help with the understanding of the RFC Gateway ACLs (Access Control Lists) and the Simulation
Mode, in order to help prepare production systems to have these security features enabled without
disruptions.

Overview

This page contains information about the RFC Gateway ACLs (reginfo and secinfo les), the
Simulation Mode, as well as the work ow showing how the RFC Gateway works with regards to the
ACLs versus the Simulation Mode.

Additional ACLs are discussed at Additional Access Control Lists (RFC Gateway). This is for clarity purposes.

Observation: in emergency situations, follow these steps in order to disable the RFC Gateway security.

RFC Gateway ACLs (reginfo and secinfo)

This section contains information about the RFC Gateway ACLs, and examples of landscapes and
rules.

The reginfo le have ACLs (rules) related to the registration of external programs (systems) to the
local SAP instance. For example: an SAP SLD system registering the SLD_UC and SLD_NUC
programs at an ABAP system.

The secinfo le has rules related to the start of programs by the local SAP instance. In other words,
the SAP instance would run an operating system level command. For example: the RFC destination
(transaction SM59) “CALL_TP_<operating system>” starts the “tp” program, which is used by the
SAP Transport System (transaction STMS).

Before jumping to the ACLs themselves, here are a few general tips:

The very rst line of the reginfo/secinfo le must be "#VERSION=2";

Each line must be a complete rule (you cannot break the rule into two or more lines);

The RFC Gateway will apply the rules in the same order as they appear in the le, and only the
rst matching rule will be used (similar to the behavior of a network rewall). All subsequent
rules are not even checked. This means that the order of the rules is very important, especially
when general de nitions are being used (“TP=*”);

Each instance should have its own security les, with their own rules, as the rules are applied by
the RFC Gateway process of the local instance. However, if in your scenario the same rules apply
to all instances of the system, you can use a central le (see the SAP note 1425765);

The rst letter of the rule can be either P (for Permit) or D (for Deny). You don’t need to de ne a
“deny all” rule at the end, as this is already implicit (if there is no matching Permit rule, and the
RFC Gateway already checked all the rules, the result will be Deny – except when the Simulation
Mode is active, see below).

This is custom documentation. For more information, please visit the SAP Help Portal 32
1/31/2024

The syntax of the rules is documented at the SAP note 1408081. There are other SAP notes that
help to understand the syntax (refer to the “Related notes” section below).

A general reginfo rule de nition would be (note that the rule was split into multiple lines for
explanation purposes, so it is more easily understood):

P TP=<program name>
HOST=<comma separated list of hosts that can register the program>
ACCESS=<comma separated list of hosts that can communicate with the program>
CANCEL=<comma separated list of hosts that can cancel this registration>

Usually, ACCESS is a list with at least all SAP servers from this SAP system. This can be replaced by
the keyword "internal" (see examples below, at the "reginfo" section). It might be needed to add
additional servers from other systems (for an SLD program – SLD_UC, SLD_NUC, for example).

CANCEL is usually a list with all SAP servers from this system (or the keyword "internal"), and also
the same servers as in HOSTS (as you must allow the program to de-register itself).

A general secinfo rule de nition would be (note that the rule was split into multiple lines for
explanation purposes, so it is more easily understood):

P USER=<username that is allowed to start the program>


/* read the explanation for USER at the SAP note 614971 for more details */
USER-HOST=<comma separated list of hosts from where the users can start the p
HOST=<comma separated list of hosts where the program can be started>
TP=<program name>

Go to Secinfo section

Go to Simulation Mode section

Reginfo – Landscape and Example

You have a Solution Manager system (dual-stack) that you will use as the SLD system. The Solution
Manager (“SolMan”) system has only one instance, running at the host “sapsmci”.

You have con gured the SLD at the Java-stack of the SolMan system, using the RFC Gateway of the
SolMan’s ABAP-stack.
This is custom documentation. For more information, please visit the SAP Help Portal 33
1/31/2024

There is an SAP PI system that needs to communicate with the SLD. The PI system has one Central
Instance (CI) running at the server “sappici”, and one application instance (running at the server
“sappiapp1”). The RFC destination “SLD_UC” looks like the following, at the PI system:

This is custom documentation. For more information, please visit the SAP Help Portal 34
1/31/2024

This is custom documentation. For more information, please visit the SAP Help Portal 35
1/31/2024

No reginfo le from the PI system is relevant. Since the SLD programs are being registered at the
SolMan’s CI, only the reginfo le from the SolMan’s CI is relevant, and it would look like the following:

#VERSION=2
P TP=SLD_UC HOST=local ACCESS=internal,sappici,sappiapp1 CANCEL=local
(…OTHER REGINFO RULES…)
# This must always be the last rule on the file – see SAP note 1408081
P TP=* HOST=internal,local CANCEL=internal,local ACCESS=internal,local

The keyword “local” means “the local server”. The keyword “internal” means “all servers that are part
of this SAP system” (in this case, the SolMan system). Notice that the keyword "internal" is available
at a Standalone RFC Gateway (like the RFC Gateway process that runs at an SCS or ASCS instance)
only after a certain SAP kernel version. Refer to the SAP Notes 2379350 and 2575406 for the details.

Another example: you have a non-SAP tax system that will register a program at the CI of an SAP ECC
system. The name of the registered program will be “TAXSYS”. The tax system is running on the server
“taxserver”. The reginfo rule from the ECC’s CI would be:

P TP=TAXSYS HOST=taxserver ACCESS=internal CANCEL=local,taxserver

The rule above allows any instance from the ECC system to communicate with the tax system. If
other SAP systems also need to communicate with it, using the ECC system, the rule need to be
adjusted, adding the hostnames from the other systems to the ACCESS option. For example:

P TP=TAXSYS HOST=taxserver ACCESS=internal,host1,host2 CANCEL=local,taxserver

The SAP KBAs 1850230 and 2075799 might be helpful. They also have a video (the same video on both
KBAs) illustrating how the reginfo rules work.

Changes to the reginfo rules

Changes to the reginfo rules are not immediately effective, even after having reloaded the le
(transaction SMGW, menu Goto -> Expert functions -> External security -> Reread / Read again).

This is custom documentation. For more information, please visit the SAP Help Portal 36
1/31/2024

After reloading the le, it is necessary to de-register all registrations of the affected program, and re-
register it again. This is required because the RFC Gateway copies the related rule to the memory area
of the speci c registration. If you have a program registered twice, and you restart only one of the
registrations, one of the registrations will continue to run with the old rule (the one that was not
restarted after the changes), and another will be running with the current rule (the recently restarted
registration). This would cause "odd behaviors" with regards to the particular RFC destination.

For example: you have changed to the rule related to the SLD_UC program, allowing a new server to
communicate with it (you added the new server to the ACCESS option). You have already reloaded the
reginfo le. However, you still receive the "Access to registered program denied" / "return code 748"
error. The solution is to stop the SLD program, and start it again (in other words, de-register the
program, and re-register it).

Go to the top of the page

Secinfo – Landscape and Example

You have a non-SAP tax system that needs to be integrated with SAP. Such third party system is to be
started on demand by the SAP system.

Only the (SAP level) user IDs “BOB” and “JOHN” can start this program, and they will be logged on to
one of the instances from this SAP system.

You have an RFC destination named “TAX_SYSTEM”. It is con gured to start the tax calculation
program at the CI of the SAP system, as the tax system is installed only there. The RFC destination
would look like:

This is custom documentation. For more information, please visit the SAP Help Portal 37
1/31/2024

This is custom documentation. For more information, please visit the SAP Help Portal 38
1/31/2024

The secinfo les from the application instances are not relevant. Only the secinfo from the CI is
applicable, as it is the RFC Gateway from the CI that will be used to start the program (check the
“Gateway Options” at the screenshot above).

Note: depending on the system’s settings, it will not be the RFC Gateway itself that will start the
program. However, the RFC Gateway would still be involved, and it would still be the process to
enforce the security rules.

The secinfo le from the CI would look like the below:

#VERSION=2
P USER=BOB USER-HOST=internal HOST=local TP=/usr/taxsys/taxcalc
P USER=JOHN USER-HOST=internal HOST=local TP=/usr/taxsys/taxcalc
(…OTHER SECINFO RULES…)
# This must always be the last rule on the file – see SAP note 1408081
P USER=* USER-HOST=internal,local HOST=internal,local TP=*

In case you don’t want to use the keywords “local” and “internal”, you’ll have to manually specify the
hostnames. For example: the system has the CI (hostname “sapci”) and two application instances
(hostnames “appsrv1” and “appsrv2”). The rules would be:

P USER=BOB USER-HOST=sapci,appsrv1,appsrv2 HOST=sapci TP=/usr/taxsys/taxcalc


P USER=JOHN USER-HOST=sapci,appsrv1,appsrv2 HOST=sapci TP=/usr/taxsys/taxcalc

Another example: let’s say that the tax system is installed / available on all servers from this SAP
system, the RFC destination is set to “Start on application server”, and the “Gateway options” are
blank. This way, each instance will use the locally available tax system.

In this case, the secinfo from all instances is relevant as the system will use the local RFC Gateway of
the instance the user is logged on to start the tax program. The secinfo le would look like:

#VERSION=2
P USER=BOB USER-HOST=local HOST=local TP=/usr/taxsys/taxcalc
P USER=JOHN USER-HOST=local HOST=local TP=/usr/taxsys/taxcalc
(…OTHER SECINFO RULES…)
# This must always be the last rule on the file – see SAP note 1408081
P USER=* USER-HOST=internal,local HOST=internal,local TP=*
This is custom documentation. For more information, please visit the SAP Help Portal 39
1/31/2024

The usage of the keyword “local” helps to copy the rule to all secinfo les, as it means “the local
server”. In case you don’t want to use the keyword, each instance would need a speci c rule. Here are
some examples:

At the application server #1, with hostname “appsrv1”:

P USER=BOB USER-HOST=appsrv1 HOST= appsrv1 TP=/usr/taxsys/taxcalc


P USER=JOHN USER-HOST=appsrv1 HOST= appsrv1 TP=/usr/taxsys/taxcalc

At the application server #2, with hostname “appsrv2”:

P USER=BOB USER-HOST=appsrv2 HOST= appsrv2 TP=/usr/taxsys/taxcalc


P USER=JOHN USER-HOST=appsrv2 HOST= appsrv2 TP=/usr/taxsys/taxcalc

The SAP KBA 2145145 has a video illustrating how the secinfo rules work.

Go to the top of the page

Simulation Mode

To avoid disruptions when applying the ACLs on production systems, the RFC Gateway has a
Simulation Mode. The SAP note 1689663 has the information about this topic.

In summary, if the Simulation Mode is deactivated (parameter “gw/sim_mode = 0”; default value), the
last implicit rule from the RFC Gateway will be “Deny all” as mentioned above, at the “RFC Gateway
ACLs (reginfo and secinfo)” section.

If the Simulation Mode is active (parameter “gw/sim_mode = 1”), the last implicit rule will be changed
to “Allow all”. In addition, the RFC Gateway logging (see the SAP note 910919) can be used to log that
an external program was registered, but no “Permit” rule existed.

It is important to mention that the Simulation Mode applies to the registration action only. After the
external program was registered, the ACCESS and CANCEL options will be followed as de ned in the
rule, if a rule existed.

In addition, the existing rules on the reginfo/secinfo le will be applied, even on Simulation Mode.
Thus, if an explicit Deny rule exists and it matches the request being analyzed by the RFC Gateway,
the RFC Gateway will deny the request.

This is custom documentation. For more information, please visit the SAP Help Portal 40
1/31/2024

RFC Gateway behavior versus RFC Gateway parameters

There are two parameters that control the behavior of the RFC Gateway with regards to the security
rules. They are:

gw/acl_mode: this parameter controls the value of the default internal rules that the RFC
Gateway will use, in case the reginfo/secinfo le is not maintained. In case the les are
maintained, the value of this parameter is irrelevant;

gw/sim_mode: activates/deactivates the simulation mode (see the previous section of this
Expert Content page).

The diagram below shows the work ow of how the RFC Gateway works with the security rules and the
involved parameters, like the Simulation Mode.

Related Content

Related Documents

SAP Gateway Security Files secinfo and reginfo

Con guring Connections between Gateway and External Programs Securely

This is custom documentation. For more information, please visit the SAP Help Portal 41
1/31/2024

Gateway security settings - extra information regarding SAP note 1444282

Additional Access Control Lists (Gateway)

Disabling gateway security

Reloading the reginfo - secinfo at a Standalone Gateway

Related Notes

SAP note 1689663: GW: Simulation mode for reg_info and sec_info

SAP note 1444282: gw/reg_no_conn_info settings

SAP note 1408081: Basic settings for reg_info and sec_info

SAP note 1425765: Generating sec_info reg_info

SAP note 1069911: GW: Changes to the ACL list of the gateway (reginfo)

SAP note 614971: GW: Changes to the ACL list of the gateway (secinfo)

SAP note 910919: Setting up Gateway logging

SAP KBA 1850230: GW: "Registration of tp <program ID> not allowed"

SAP KBA 2075799: ERROR: Error (Msg EGW 748 not found)

SAP KBA 2145145: User is not authorized to start an external program

SAP KBA 2605523: [WEBINAR] Gateway Security Features

SAP Note 2379350: Support keyword internal for standalone gateway

SAP Note 2575406: GW: keyword internal on gwrd 749

SAP Note 2375682: GW: keyword internal lacks localhost as of 740

RFC Gateway security settings - extra information regarding SAP note 1444282

Purpose

The purpose of this page is to clarify the RFC Gateway security features described at SAP Note 1444282, and its related notes.

This is custom documentation. For more information, please visit the SAP Help Portal 42
1/31/2024

Overview
This page explains how the parameter gw/reg_no_conn_info works, and how to set it to the desired value. Each security feature
is also brie y discussed.

Clari cation on how the parameter gw/reg_no_conn_info works


The parameter gw/reg_no_conn_info is interpreted as a bitmask value by the RFC Gateway. A similar technique is also used at
linux/UNIX lesystems, to set the le/folder permissions using numbers that represent the desired permission.

The RFC Gateway reads the number de ned at the parameter at the binary format, and identi es which bits are set to 1, which
will de ne that the associated security feature is to be activated.

Decimal | Security feature to be activated


Value | (Note Number - Short Text)
--------------------------------------------------------------------------
0 | No additional security active
1 | SAP Note 1298433 - Bypassing security in reginfo & secinfo
2 | SAP Note 1434117 - Bypassing sec_info without reg_info
4 | SAP Note 1465129 - CANCEL registered programs
8 | SAP Note 1473017 - Uppercase/lowercase in the les reg_info and sec_info
16 | SAP Note 1480644 - gw/acl_mode versus gw/reg_no_conn_info
32 | SAP Note 1633982 - ACCESS option in the le reginfo
64 | SAP Note 1697971 - GW: Enhancement when starting external programs
128 | SAP Note 1848930 - GW: Strong gw/prxy_info check

Example 1:

If the parameter is set to 5, we will have only the security features "1" and "4" activated. That's because looking at the number 5
in the binary format, we will have "1010".

To convert a binary number to the equivalent in decimal numbers, we can perform a sum of numbers based on powers of 2:

4|2|1|0 <--- series of numbers based on powers of 2


1|0|1|0 <--- binary representation of the decimal number "5", the 1’s de ne which of the numbers are part of the sum

Example 2:

You have read the notes that describe the security features, and you have decided to activate the following features:
4 SAP Note 1465129 - CANCEL registered programs
8 SAP Note 1473017 - Uppercase/lowercase in the les reg_info and sec_info

You just have to sum "4" and "8", and set the parameter gw/reg_no_conn_info to the obtained result (4 + 8 = 12, then
"gw/reg_no_conn_info = 12").

Clari cation on the security features


Setting the parameter gw/reg_no_conn_info to 0 (zero) deactivates all security features controlled by this parameter.

We strongly recommend that you carefully review each note to completely understand the behavior changes. The below
information is just a super cial summary.

1 (SAP Note 1298433 - Bypassing security in reginfo & secinfo)

This is custom documentation. For more information, please visit the SAP Help Portal 43
1/31/2024
This security feature changes the behavior of the RFC Gateway preventing that malicious users bypass the settings of the
reginfo and secinfo les.

For security reasons, no further details can be informed.

2 (SAP Note 1434117 - Bypassing sec_info without reg_info)

In the past, the RFC Gateway used the secinfo le for two distinct set of rules, if the reginfo le was not de ned:
- rules for registration of external programs at the RFC Gateway;
- rules for allowing users to start external programs on demand.

Activating the security feature "2" will change the behavior of the RFC Gateway making the rules of secinfo to be considered
only for allowing users to start external programs.

The rules for registration of external programs at the RFC Gateway must, therefore, be maintained at the reginfo le.

4 (SAP Note 1465129 - CANCEL registered programs)

This security feature changes the behavior of the RFC Gateway preventing that malicious users bypass the settings of the
secinfo le, allowing such users to cancel the registration of programs for which they were not authorized.

For security reasons, no further details can be informed.

8 (SAP Note 1473017 - Uppercase/lowercase in the les reg_info and sec_info)

The options for the reginfo and secinfo rules are considered "case sensitive", so they must be written in upper case letters only.

Writing an option with lower case letters (or with "mixed cases", like "Host"), would cause the option to be considered invalid.

Since invalid options are ignored, this may cause the rule to behave differently from the expected.

Activating this security feature makes the reginfo and secinfo options to be considered "case insensitive", and invalid options
are not ignored anymore (they will generate an error and the entire rule will be ignored).

16 (SAP Note 1480644 - gw/acl_mode versus gw/reg_no_conn_info)

As of Kernel Release 720, you can use the parameter "gw/acl_mode = 1" to set an initial security environment with regard to
starting and registering external programs.

Activating the security feature "16" will cause the same behavior of the RFC Gateway as the parameter "gw/acl_mode = 1", thus
you can continue to use only the gw/reg_no_conn_info parameter to control which RFC Gateway security features are active.

Note that the same behavior is controlled by the two parameters. Thus, if you want to deactivate this feature you have to set
"gw/acl_mode = 0" and remove the security feature "16" from the gw/reg_no_conn_info bit mask value, although it is
recommended that you keep this feature active.

32 (SAP Note 1633982 - ACCESS option in the le reginfo)

This security feature changes the behavior of the RFC Gateway preventing that malicious users bypass the settings of the
reginfo le, allowing such users to access programs for which they were not authorized.

For security reasons, no further details can be informed.

64 (SAP Note 1697971 - GW: Enhancement when starting external programs)


This is custom documentation. For more information, please visit the SAP Help Portal 44
1/31/2024
This feature checks whether tabulators are being used at the command line to start external programs, either in transaction
SM59 or at the "saprfc.ini" le.

Tabulators are not allowed at the command line to start external programs. Review the SAP Note 1697971 for more details.

128 (SAP Note 1848930 - GW: Strong gw/prxy_info check)

Enhanced the "proxy security" feature of the RFC Gateway, enabling it to cover more scenarios.

For more details, read the SAP note 1848930 and the description of the parameter "gw/prxy_info" at this Expert Content page.

Parameter gw/reg_no_conn_info as of SAP kernel 740


As of the SAP kernel 740, only the options below are available (SAP note 2269642).

Decimal | Security feature to be activated


Value | (Note Number - Short Text)
--------------------------------------------------------------------------
0 | No additional security active
1 | SAP Note 1298433 - Bypassing security in reginfo & secinfo
64 | SAP Note 1697971 - GW: Enhancement when starting external programs
128 | SAP Note 1848930 - GW: Strong gw/prxy_info check

Related Content

Related Documents
RFC Gateway Access Control Lists

Additional Access Control Lists (RFC Gateway)

Related Notes
SAP Note 1444282 - gw/reg_no_conn_info settings
SAP Note 1298433 - Bypassing security in reginfo & secinfo
SAP Note 1434117 - Bypassing sec_info without reg_info
SAP Note 1465129 - CANCEL registered programs
SAP Note 1473017 - Uppercase/lowercase in the les reg_info and sec_info
SAP Note 1480644 - gw/acl_mode versus gw/reg_no_conn_info
SAP Note 1697971 - GW: Enhancement when starting external programs
SAP note 2269642 - GW: Validity of parameter gw/reg_no_conn_info
SAP Note 1848930 - GW: Strong gw/prxy_info check

RFC resources control to process Asynchronous RFC

Purpose
To process Asynchronous RFC using destination on group, the SAP kernel runs a resource analysis before trigger the RFC
request to an Application Servers target. This wiki aims to clarify the steps and resources analysis on each target Application
Server made by SAP Kernel.

Overview

This is custom documentation. For more information, please visit the SAP Help Portal 45
1/31/2024
A range of resources are required when starting or running RFC calls. These resources belongs to many and distinct areas of
gateway, dispatcher and taskhandler hence the analysis is required before trigger and RFC to a destination Application Server.
Besides of the limited resources on each component, the RFC also have limits to consume the resource areas. The following
table describes all checks done, the areas involved and the respective limits to RFC connections.

Resources check ow

Check The analysis made Parameters Involved on the rource Return if resource is denied
order

1 Is the quota activated? The feature is enable with parameter rdisp/rfc_use_quotas. If Function deactivated
this parameter is disabled, no resources are controled on the
remote Application Server

2 Is the queue overloaded? Evaluate if still DIA WPs available on the server (not all busy). Server resources are
exhausted

3 Is the system under high Evaluate if the server is in high load. This control is made by the Server resources are
load situation? Load Control of dispatcher. <REFERENCE ABOUT LOAD exhausted
CONTROL>

4 Is there enough WP to This quota is based on the parameters Too few free dialog work
process request? rdisp/scheduler/prio_normal/max_quota and processes
rdisp/scheduler/prio_low/max_quota

5 Is the Application Server in Server is being stopped


a shutdown status?

6 Still slots availalbe on The comunicatino table is sized by rdisp/max_comm_entries. Local quota for
communication table? The quota allowed to the RFC call is determined by the % of rdisp/rfc_max_comm_entries
rdisp/rfc_max_comm_entries. used up

7 Does the local Work Process A single WP can create the number of tasks setup by Local quota for
that triggers the call I still rdisp/task_limit RFC and the quota for RFC requests is rdisp/rfc_max_open_tasks is
have quota for tasks? determined by rdisp/rfc_max_open_tasks. This resource is reached
controlled on the source Application Server at this time

8 Is there avaialble slots on The size of the queue is determined by Quota for
the queue? rdisp/elem_per_queue RFC and the quota is determined by rdisp/rfc_max_queue is too
rdisp/rfc_max_queue. small

9 Is there enough terminals to The number of terminals is setup by rdisp/tm_max_no. The Quota for
a new login? RFC quota is determined by rdisp/rfc_max_login rdisp/rfc_max_login used up

10 Is there terminals to my own The number of terminals is setup by rdisp/tm_max_no and the Quota for
user? quota to the user that trigger the RFC is rdisp/rfc_max_own_login
rdisp/rfc_max_own_login used up

If no resource is denied, the caller will receive resources to trigger the RFC request.

Related Content

Related Documents

This is custom documentation. For more information, please visit the SAP Help Portal 46
1/31/2024

RFC Resources on the Application Server

Monitoring RFC Resources on the Application Server

Related SAP Notes/KBAs

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Standalone Gateway Monitor for ASCS instance

Purpose

This Expert Content explains about an ABAP program to manage a standalone gateway running in an
ASCS instance.

Overview

It is possible to use a standalone gateway in an ASCS instance

1708600 - Inst. Gateway SAP Systems NetWeaver 7.1 and Higher

However, there was no standard ABAP program to manage the standalone gateway.
In order to manage the service like read traces, stop and start the gateway it was required to perform
action over the Operating System level. There is a new program as from 740 system called
RSGWMON_ASCS to manage the instance in ABAP level.

Running the program

1) calling the program RSGWMON_ASCS in SE38;


2) In transaction SMGW call ASCS in the opcode eld;

If no gateway is running in the ASCS instance or if the web method call fail, a message that no
gateway active is triggered.

Requirement

This program use the sapstartsrv Web Methods to manage the standalone gateway.
All of these actions goes over SSL cryptography, therefore, it is required to have and HTTPS service
enable in ICM.

Available Options

This is custom documentation. For more information, please visit the SAP Help Portal 47
1/31/2024

Related Content

Related Documents

Related SAP Notes/KBAs

1708600 - Inst. Gateway SAP Systems NetWeaver 7.1 and Higher

2287916 - Message "No gateway is running in the ASCS instance" from RSGWMON_ASCS
2323862 - Message "No gateway is running in the ASCS instance" from RSGWMON_ASCS

SAP Dispatcher and Taskhandler

SAP Dispatcher and Taskhandler


Management Troubleshooting

SAP Kernel Update on Unix and Linux SAPLTHFB Report Appearing in SM66
Transaction
SAP Kernel Update on Windows
What do the semaphores mean
Parameters based in hardware resources
What do the semaphores mean - higher
Dynamic parameters change in SAP system
releases

Application Server load information control


Kernel incompatible to already connected

Changing the number of work processes: instances

topics to consider 7.4X parameter check feature

Dynamic work processes con guration Analysis of Workprocess in "On Hold" RFC on
a hanging system
Server Snapshots in the SAP System

This is custom documentation. For more information, please visit the SAP Help Portal 48
1/31/2024

Monitoring Work Processes in the CCMS


Infrastructure

Work process termination cases

Dispatcher Security

Top relevant SAP notes Miscelaneous Info

39412 - How many work processes should Architecture of SAP NetWeaver Application
be con gured? Server ABAP

2129291 - Session Priority and Work Process


Quota in SAP Kernel 7.4x - SAP ONE Support
Launchpad

2190597 - Work Process Con guration - Best


Practices

9942 - Maximum number of work processes

2181592 - CST: Mini-trace layer for request


ow

1370207 - Creating work process trace les

Useful Tools F.A.Q.

DPMON Dispatcher Monitor How to check the work process status from
Operating System Level

How can remove activity on a single


application server

How do I nd out, which kernel patch level


xes a problem described in a note

How do I install a kernel patch

How to limit the size of a developer trace le

What does "passive state" actually means?"

7.4X parameter check feature

dp_new.png

This is custom documentation. For more information, please visit the SAP Help Portal 49
1/31/2024

Purpose

Clari cation about the check parameters feature made by SAP kernel.

Overview

As of 7.40 SP2 a feature to check parameters was improved. This feature create syslog messages
(SM21) and messages in the developer traces. The goal of this wiki is to explain how to identify wrong
parameters with the information available in this feature.

How to nd a wrong parameter setting?

During the startup of SAP system the SAP kernel perform a routine to validate pro le parameters.
This routing will print an invalid pro le parameter value in syslog and developer trace.

Dispatcher trace

The dev_disp trace is available in the instance work folder and the parameter check feature print a
WARNING about the invalid parameter value:

*** WARNING => DpCheckParams: invalid value for <parameter name> = <value set> [dpInit.c XXXX

It is possible to search by all wrong parameters using shell scripts like

grep “invalid value for” dev_disp

Or also searching over SM51 -> select instance -> Goto -> Information -> Trace Search -> search by
“invalid value for”

Syslog

The syslog is accessible over transaction SM21. The SAP kernel record syslog with messages
ID Q30, Q31 and Q32.
Go to transaction SM21, chose from date before the last start up, in Message ID chose Q30 to Q32.
The messages displayed should be like following in case wrong parameters:

SAPPFPAR

This is custom documentation. For more information, please visit the SAP Help Portal 50
1/31/2024

It is possible to use the standalone tool to check the formula based parameters or even possible
errors in parameters de nitions. See the following Wiki page:

sappfpar to analyse formula de ned parameters and additional features

SAPSTARTSRV

In the most recent kernel releases, as from 749, new web methods were created to Check Parameters.

SAPMMC

As from 749, inside of SAPMMC, selecting the system, All tasks, it is possible to use the option Check
Parameters to evaluate all de ned pro le parameters. The tools will show you a list of issues found
and the reason that there is a problem inside of pro le with the current parameter settings:

RZ10

Selecting the pro le, it is possible to use the menu Pro le → Detailed Check that list all the problem
with the current parameters settings.

Conclusion

With this improvement in the parameter check made by the SAP Kernel it is better possible to
manage SAP systems to easily identifying wrong parameters settings.
This is custom documentation. For more information, please visit the SAP Help Portal 51
1/31/2024

Related Content

Analysis of Workprocess in "On Hold" RFC on a hanging system

Purpose
This document is intended to provide an alternative for the analysis of KBA "2180934 - Analysis of Workprocess in "On Hold"
RFC, or Stopped CPIC status" in case the system is not accessible through SAP GUI.
In this situation it could be possible to check the remote RFC side of the communication through OS tools and developer traces.

Getting the conversation ID

If a snapshot was written over the dispatcher trace le (dev_disp) at that time, we can check the information of the Work
process

and RFC-Connection Table.

If this snapshot is not available, this information can be triggered at run-time:

1st option - write a snapshot on the dispatcher trace le with dpmon tool:

dpmon pf=<path to pro le/pro le name of the instance>

-->m ( m - menue )
-->p ( p - work-process-admin-table )

-->e ( e - create snapshot )

2nd option - Display the information from those tables

dpmon pf=<path to pro le/pro le name of the instance>

-->m ( m - menue )
-->l ( l - work-process-admin-table (long) )

-->c ( c - RFC connections / Comm adm blocks)

The information from the session table could also be useful in some cases:

dpmon pf=<path to pro le/pro le name of the instance>

-->m ( m - menue )
-->v ( v - session table )

The important point for the analysis of this problem, is to link the request holding the WP being analyzed with its conversation
ID:

This is custom documentation. For more information, please visit the SAP Help Portal 52
1/31/2024

Getting the information from the partner of the communication


Once we have the conversation ID, the remote RFC side of the communication can be checked:

Start gwmon tool on the application server affected by the problem and take the information of following options.

Connection table

gwmon pf=<path to pro le/pro le name of the instance>

-->m ( m - menue )
-->1 ( 1 : display connection table )

In this example, we can see the conversation ID 10819513 is linked to connection number 0

Connection attributes
With the conversation ID, we can check the details of the RFC server partner

-->5 ( 5 : connection attribute )


->6 (6: display partner attr ) -> enter the conversation ID

This is custom documentation. For more information, please visit the SAP Help Portal 53
1/31/2024

With the connection number , we could display more information of the connection if needed:

-->5 ( 5 : connection attribute )


--> 1 (1: display connection ) -> enter number of connection

Each RFC connection is identi ed with the unique number (8 digits), called convID. This conversation ID is the same on the RFC
client and the RFC server.

Now that we have the details of the RFC server partner, we can continue with the analysis as explained as of point 5 of KBA
2180934 - Analysis of Workprocess in "On Hold" RFC, or Stopped CPIC status

Related Content

Related Documents

2180934 - Analysis of Workprocess in "On Hold" RFC, or Stopped CPIC status

DPMON Dispatcher Monitor

This is custom documentation. For more information, please visit the SAP Help Portal 54
1/31/2024

How to use gwmon tool?

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Application Server load information control


Purpose

This Expert Content explain about SAP load info messages feature.

Overview

As from kernel 740 the SAP system has a feature to avoid overload situations in the request
processing. This feature uses load info messages to keep the entire SAP system (all remote
Application Servers) aware of its application server load situation.

How it works

The load calculation is designed to avoid overload of dispatcher queues. An example of an overload
situation is about the update requests. If, for example, an application server is handling long update
requests and further requests began to increase the update queue, this application server should no
longer receive update requests before return to normal load situation.

The load calculation is able to identify such situation and inform the update mechanism to stop to
send update requests to this application server deactivating its update processing.

Note that the deactivation of update mechanism in this Application Server is temporary. This occurs
until it is overload and this deactivation does not occurs if no other update server available to process
updates.

The parameter rdisp/high_load_quota controls the trigger to send the load info message and its
default de nition is "load=90, queue=5"

The "load" and "queue" are thresholds used to determine when to trigger the load info message. Every
second the dispatcher calculate the % length of dispatcher queue and compare with "queue" and the
% of Work Process utilization of this Work Process type and compare with "load".
See further information about this parameter in the RZ11 documentation.

In SM50 it is possible to see the average load values in the last 1,5 and 15 minutes:

This is custom documentation. For more information, please visit the SAP Help Portal 55
1/31/2024

In case of reach these both thresholds, the service of this worker type is overload and dispatcher
inform all others servers by sending a load info message.

In case of an overload in UPD and UP2 worker type, the dispatcher will log the following information in
the dev_disp trace.

DpSendLoadInfo: quota for load / queue ll level = 11.700000 / 5.000000


DpSendLoadInfo: queue UPD now with high load, load / queue ll level = 11.704559 / 0.000000

This will deactivate the update mechanism in this speci c server, in case of others servers available to
process update requests, and in SM14 (servers tab) it is possible to notice such situation. At the
moment load fall below the threshold values a load info message is send again and the update is
activated.

DpSendLoadInfo: queue UPD no longer with high load

Conclusion

Currently, the update mechanism use the load information to control the dispatching of request,
however, it is expected that others dispatches mechanisms also implement this feature.
This feature is powerful to improve the stability of SAP Application Servers.

Related Content

Related Documents

Related SAP Notes/KBAs

2187985 Update server randomly gets deactivated

This is custom documentation. For more information, please visit the SAP Help Portal 56
1/31/2024

Changing the number of work processes: topics to consider


Purpose

Cover topics that are relevant when changing the number of work processes (increase or decrease) of
an instance, also considering Operation Modes (transaction RZ04).

Overview

This Expert Content page will list topics that should be considered when the number of work
processes of an instance would be changed.

Example scenario

The system has an application server with the following work processes con gured:

Type Number of processes

Dialog (DIA) 20

Update (UPD) 5

Update V2 (UP2) 2

Spool (SPO) 2

Background (BTC) 2

TOTAL 31

The "day" operation mode has the same work process distribution as the table above.

The "night" operation mode switches 5 dialog work processes to background processes.

The number of spool work processes has to be increased to 4 and both operation modes will have 4
spool work processes.

Procedure

Following the example above, you would edit the instance pro le of the related application server and
would change the parameter "rdisp/wp_no_spo" from 2 to 4.

You would then restart the SAP instance and adjust the operation modes accordingly.

This is custom documentation. For more information, please visit the SAP Help Portal 57
1/31/2024

Issues can occur if the operation modes are not adjusted right after the instance was restarted (e.g.,
before the rst operation mode switch should occur).

Other considerations

1. DYNAMIC WORK PROCESSES

As of the SAP NetWeaver 7.0 EHP2 and the SAP kernel release 720, the system can have Dynamic Work
processes.

The SAP kernel 72x is downward compatible to previous NetWeaver releases and customers are
encouraged to upgrade the kernel to 72x, since previous kernel releases are not supported anymore
(see the SAP notes listed at the "Related Content" section, below).

Therefore, the parameter "rdisp/wp_max_no" has to be manually adjusted whenever the number of
work process will change, if the kernel 72x is being used as downward compatible kernel (e.g.,
NetWeaver releases prior to 7.0 EHP2).

2. APPC AND WP BLOCKS

There are memory blocks required by the work process and other processes (like the Dispatcher and
the Gateway) in order to operate.

Whenever the number of work processes is changed, the parameters mentioned at the SAP note 3223
have to be adjusted as well.

As of the SAP kernel 740, the parameter "rdisp/appc_ca_blk_no" does not exist anymore.

In addition, the kernel 74x has a new functionality of using formulas to de ne the parameters' values.

Thus, if the parameter "rdisp/wp_ca_blk_no" is not set, it is not required to set it manually as the
default value (formula) will calculate the appropriate value when the system starts.

3. STANDALONE ENQUEUE

If the system has a Standalone Enqueue ("ENSA") running (at an ASCS instance), consider revising
the parameter "enque/server/max_clients" (SAP note 1002075, SAP KBA 2196513) and the parameters
mentioned at the SAP note 920979.

Related Content

Related Documents

Operation Modes

This is custom documentation. For more information, please visit the SAP Help Portal 58
1/31/2024

Pro le Parameters for Con guring Work Processes

Standby and Dynamic Work Processes

Dynamic work processes con guration

Related SAP Notes/KBAs

SAP note 1716826: Usage of the downward compatible kernel 721 (EXT)

SAP note 1713986: Installation of kernel 721 (EXT)

SAP note 2133909: Usage of kernel 722 (EXT)

SAP note 2115344: Installation of Kernel 722 (EXT)

SAP note 3223: Number of WP and APPC blocks

SAP note 920979: Out of memory in the standalone enqueue server

SAP note 1002075: Too many enqueue clients in standalone enqueue server

SAP KBA 2196513: WARNING => NiICreateHandle: no more free handles (XXXX)

DPMON Dispatcher Monitor

dp_new.png

Purpose
Help you to understand the DPMON tool functionalities, in order to help efficiently monitoring the system without access to
transactions like SM50 or SM66.

Overview
This page contains information about the DPMON and the functinalities available in this tool, aiming to explain the purpose of
each one of them.

The DPMON Tool


All the crucial SAP kernel processes like dispatcher, gateway, message server, ICM, enqueue have their correspondent monitor
tool. The DPMON stands for dispatcher monitor, meaning that it can access the main dispatcher monitoring
functionalities through OS level.

In order to use DPMON, you must be logged with the <sid>adm user in the OS level and run the below command.

This is custom documentation. For more information, please visit the SAP Help Portal 59
1/31/2024

dpmon pf=<path to profile/profile name of the instance>

You will be taken to the DPMON initial screen and access the main menu by entering the option m. In the image below you can
see the dispatcher monitor main menu for a 740 system.

Functionalities
This chapter is going to abord each functionality listed in the DPMON main menu, divided into one subchapter for each of them.

Dispatcher Queue Statistics

By using the options d or e in the DPMON main menu you'll have access to the dispatcher queue statistics. For more
information details about the dispatcher queue and the work processes refer to Dispatcher Queue Info.

Depending on the kernel version you are using, the DPMON output for this function will be different. As you can see in the below
image the queue information for DISP, GW, ICM and LWP are displayed meaning this is a 740 or newer kernel release.

This is custom documentation. For more information, please visit the SAP Help Portal 60
1/31/2024

In case you are using the option e in the DPMON main menu, the dispatcher sessions details will also be displayed. This concept
was introduced as from kernel 740 and is not present in older releases.

The dispatcher queue statistics are very useful to detect dispatcher queue over ow situations and also bottlnecks in the work
processes of an speci c instance. The SAP Note 15606 provides more details about the dispatcher queue over ow situation.

Work Process Admin Table

The work process admin table can be accessed by using the options p or l in the DPMON main menu. The option p will display
the standard view of the work process table and the option l will display the long version of the work process table which
includes the columns Action and Action-Info.

This is one of the most useful functionalities provided by DPMON for analysis since you can easily detect system hanging
situations where no work processes are free to process new requests. The columns Sem will clearly display semaphores
requested or hold by the work processes. The column State will display the work process status where you can see whether it is
free, processing or waiting for some action. The column Action will inform the current action of the work process and Action Info
will provide more details about this current action (e.g. Sequential Read in table SWNCMONI).

From this sub menu, option "e - create snapshot" can be used for writing a SERVER SNAPSHOT on the dispatcher trace le.

This is custom documentation. For more information, please visit the SAP Help Portal 61
1/31/2024

Trace Level/Components for WP

This functionality can be accessed by using option t in the DPMON main menu. It displays work processes details like number,
type, PID, current trace level and components. For more details about the SAP processes traces and trace level, including the
different components, refer to the SAP Note 112.

By using the option t in the menu that will be available inside this functionality you can change the trace level for an speci c
work process and also specify the components you want to trace as you can see in the below image. You can perform the same
trace level change for the work processes by using transaction SM50 from inside the SAP system.

Communication Blocks

This functionality can be accessed by using option w in the DPMON main menu. It displays all the communication blocks used by
work processes of an speci c instance, matching the ID of the block occupied with the PID of the correspondent work process.

This is custom documentation. For more information, please visit the SAP Help Portal 62
1/31/2024
The work process communication blocks are used for internal server communication. Communication blocks are required for all
the requests with associated data. The number of blocks is de ned by the parameter rdisp/wp_ca_blk_no as per the SAP Note
3223.

In systems running kernels released before the kernel 740 you will nd this option shown as wp_ca blocks in the DPMON main
menu.

Dump Binary Content of Shared Memory Blocks

This functionality aims to provide dump information for memory areas for developer, used in special cases of analysis. You can
see in the image below the areas for which this information can be obtained.

Comm Adm Blocks

This functionality can be accessed by using the option c in the DPMON main menu. It displays the communication table of an
speci c instance. The communication table shows the active RFC connections to the application server. Both connections where
the local dispatcher is the client and connections where the local dispatcher is the server are displayed (the connections that
were made externally to the server). For more details refer to Communication Table.

This table can be reached from inside the SAP system by accessing transaction SM51, highlighting an speci c instance and
going to GoTo -> Information -> Communication and selecting RFC Connection.

The communication table helps you keep track of the RFC connections when monitoring the system or analyzing problems.

This is custom documentation. For more information, please visit the SAP Help Portal 63
1/31/2024
APPC_CA Blocks

This functionality can be accessed by using the option a in the DPMON main menu only in systems with kernel older than kernel
740. The appc_ca blocks are used when requests are transported from an work process to or from the Gateway. app_ca and
appc_ca_adm stands for advanced program-to-program communication. These blocks contains additional request data.

The output of this functionality is similar to the WP_CA (Comm Adm Blocks) in the previous subchapter.

The number of blocks is de ned by the parameter rdisp/appc_ca_blk_no as per the SAP Note 3223.

J2EE Adm Area

This functionality can be accessed by using the option j in the DPMON main menu. It is mainly used in dual-stack systems
(J2EE+ABAP) where you can see if the J2EE Engine is started and also a summary of the J2EE engine status with the number of
errors, path of the jcontrol executable, state and others.

MBUF Status

This functionality can be accessed by using option m in the DPMON main menu. It displays the Message Server status
correspondent to the system. The same status displayed in this functionality is also shown in the dispatcher trace dev_disp. The
hardware ID is shown which can be used for software licensing purposes.

The total number of instances and their respective names are listed by the message server additionally to its status and
operation mode.

This functionality can be used for the analysis of the connection between the instances and the message server and to check
whether message server reports correctly all the instances which are currently up and running in the system.

Service Buffer Status

The dispatcher contains mechanisms to buffer the message server list, message server hardware ID and the ICM service list.
This functionality displays the active services in the dispatcher buffer related to the ICM and allows this buffering to be

This is custom documentation. For more information, please visit the SAP Help Portal 64
1/31/2024
deactivated.

Session Table

This option displays the dispatcher session table. The information displayed is similar to the one obtained in transaction SM04
where you can see user name, client, session name, terminal, with its correspondent priority, between other important details.

The output can be used for the analysis of sessions currently active in the instance, however accessed from the operating
system layer. In case the limit of session in the instance is reached for some reason, this situation can easily be identi ed using
this functionality.

Sys_ad Dump

This functionality can be accessed by using the option z in the DPMON main menu. Its objective is to display the content of the
sys_adm structure of the dispatcher, where you can see the current kernel details, instance name, state of some of the critical
processes, number of contexts used in ICM, between others.

Create Assertion Ticked

This functionality can be accessed by using the option a in the main DPMON menu. It allows an Assertion Ticket to be created
for authentication purposes.

This is custom documentation. For more information, please visit the SAP Help Portal 65
1/31/2024

Show Suspend Info

This functionality can be accessed by using the option f in the DPMON main menu. It allows you to check the dispatcher current
state, suspend a server, resume the server status, suspend the entire system and also resume the entire system. The function
also displays information regarding the number sessions, messages and calls in the total or the current waiting ones.

The suspend option is used in order to stop the instance from operating. The work processes of this instance will be occupied
until the suspend request is removed with the options "resume server" or "resume system".

Maintain Pro le Parameters

This functionality is available only in systems running kernel older than kernel 740 and can be reached by using the option e in
the DPMON main menu.

By using this option you can change the value of any pro le parameter in the mentioned pro le passed as parameter in the
dpmon command you have initially run. As you can see below, the DPMON will display the current value of the parameter and
request a new value to be inserted.

Tm_adm Dump

This functionality available only in systems running kernel older than kernel 740 and can be reached by using the option v in the
DPMON main menu.

This is custom documentation. For more information, please visit the SAP Help Portal 66
1/31/2024
Similar for the wp_adm area to the Work Process, the tm_adm area is a structured memory cell to store information regarding
SAPgui (tm stands for "terminal"). A cell of tm_adm contains information about which user is connected via a SAPgui, and
information about all main modes of this user.

DPMON Useful Scripts


There are many useful scripts that can use the DPMON output in order to continuously monitor the usage of a speci c resource
(e.g. Work Process actions) for analysis.

The below script will take the output of the work process table long version and direct it to a text le called dpmon.log every 30
seconds. With this kind of log le you can have a clear view of the consumption of the work process during an speci c task you
are performing in the system, for example.

echo start > dpmon.log


i=1
while (i=1)
do
echo q | dpmon pf=<Path to Profile>/<Instance-Profile> l >> dpmon.log
date >> dpmon.log
sleep 30
done

The below script has the same mechanism than the one to collect the work process information above mentioned, however,
instead of collecting the work process information, it will collect the dispatcher queue information where you can analyze
possible bottleneck situations in a determined period when the script is running.

echo start > dpmon.log


i=1
while (i=1)
do
echo q | dpmon pf=<Path to Profile>/<Instance-Profile> d >> dpmon.log
date >> dpmon.log
sleep 30
done

Execute dpmon without user interaction

When you run dpmon commands it waits for the user input. It is possible to run wihtout an interactive way:

Resolution 1, using pipe in command line

Some examples are listed as below. In these examples, the echo command is used as an input for dpmon command.

echo q | dpmon pf=<pro le> l command to show "l - work-process-admin-table (long)" directly.

echo q | dpmon pf=<pro le> d command to show "d - dispatcher queue statistics" directly.

This is custom documentation. For more information, please visit the SAP Help Portal 67
1/31/2024
echo q | dpmon pf=<pro le> l >result.txt Show "l - work-process-admin-table (long)" directly, and ouput the result to result.txt

Resolution 2, using an OS le as an input to dpmon

Ceated a OS le named input_for_dpmon.txt. Let the le contains only one character q which is used as quit for dpmon. Then
you can run the examples below. In this examples, the full path of input_for_dpmon.txt is D:\input_for_dpmon.txt. In your
environment, this may be different.

dpmon pf=<pro le> l <D:\input_for_dpmon.txt command to show "l - work-process-admin-table (long)" directly.

dpmon pf=<pro le> d <D:\input_for_dpmon.txt command to show "d - dispatcher queue statistics" directly.

dpmon pf=<pro le> l <D:\input_for_dpmon.txt Show "l - work-process-admin-table (long)" directly, and ouput the result to
>result.txt result.txt

Related Documents
Dispatcher Queue Info

Communication Table

Assertion Ticket

Related SAP Notes/KBAs


SAP Note 15606 - Over ow of dispatcher request queue

SAP Note 112 - Trace and error information in the "dev_" les

SAP Note 3223 - Number of WP and APPC blocks

SAP Note 675778- Analysis after system downtime

Dispatcher security

Purpose

Cover security related topics of the Dispatcher process of the NetWeaver ABAP instance.

Overview

This Expert Content page will list security related topics of the Dispatcher, providing assistance to
secure the Dispatcher.

Restricting network connections

The parameter "rdisp/acl_ le" can be used to specify a le containing an Access Control List (ACL).
This is custom documentation. For more information, please visit the SAP Help Portal 68
1/31/2024

With such list, it is possible to restrict the access (network connection) to the Dispatcher port.

This help.sap.com page has detailed documentation about this topic.

Network encryption

The communication between the SAP Logon / SAP GUI to the Dispatcher can be encrypted by
activating the SNC.

This is possible even if no SSO (Single Sign-On) solution is used, as the SAP GUI has the option "SNC
logon with user/password (no Single Sign-On)" under the "Network" tab, which can be seen when
editing a system or at the "Chose network settings" screen when adding a system through the SAP
GUI wizard.

This will ensure that the data exchanged between the end users' computers and the SAP servers is
secure.

Read the following SAP Help pages for more information.

Secure Network Communications (SNC)

Using the SAP Cryptographic Library for SNC

Using SNC Client Encryption for Password Logon

Traffic Control

The parameter "rdisp/traffic_control" can be used as a DoS protection mechanism.

The Dispatcher will close "wild" TCP connections that did not complete the connection setup as a SAP
GUI client after this timeout has been reached.

The parameter must be set as "rdisp/traffic_control = LOGIN_TIME=X", where "X" is the number of
seconds (valid range: 1 - 1000).

The transaction RZ11 can be used to read the parameter's documentation.

Related Content

Related Documents

Setting Up Access Control Lists (ACL)

Secure Network Communications (SNC)

Using the SAP Cryptographic Library for SNC

This is custom documentation. For more information, please visit the SAP Help Portal 69
1/31/2024

Using SNC Client Encryption for Password Logon

Related SAP Notes/KBAs


Dynamic parameters change in SAP system

Purpose

Clari cation about dynamic parameters change in SAP ABAP system.

Overview

There are dynamic parameter that can be changed without restart of application server. This Expert
Content intend to explain the possible ways to change the parameters and also follow up these
changes.

Change options

There are some ways to change a parameter, the standard way is using the RZ11 transaction and, if
the parameter is dynamic, change directly saving the new value.

There is the standard function module TH_CHANGE_PARAMETER to change parameters.

There are also the following reports that belongs to each service:

RSMON000_CHANGE_PARAMETER taskhandler/dispatcher parameters


RSM51000_CHANGE_PARAMETER Message Server parameters
RSMONGWY_CHANGE_PARAMETER Gateway parameters
RSMONICM_CHANGE_PARAMETER ICM parameters
RSMON000_CHANGE_ALL_PARAMETER aIl parameters
(These reports will use the FM TH_CHANGE_PARAMETER to perform the change)

Tracking the responsible by the change

If you want to know who changed or when it was changed the RZ11 record the last change details:

Directly in RZ11

Parameter Name
rdisp/TRACE
Short Description (Engl.) Set developer trace level
Application Area Dispatcher and Task Handler
Parameter Type Integer value
Changes allowed Change permitted

This is custom documentation. For more information, please visit the SAP Help Portal 70
1/31/2024
Valid for Operating Sys. All operating systems
Minimum 0
Maximum 3
Default Value 1
Profile Value 1
Current Value 1
Switched From <NAME> 13.08.2015 21:21:19

<NAME> show you the responsible by the change, however, this will store only the last change.

Syslog

Another way to verify who dynamically change the parameter is over syslog in SM21 transaction.
Every time a change occurs, the following is the log created:

13.08.2015 18:58:42 <INSTANCE> DIA 004 001 <USER> Q19 The profile parameter rdi
13.08.2015 18:58:42 <INSTANCE> DIA 004 001 <USER> Q1A >>> Old/New value : 1/2

The only problem with the syslog is that it usually store few entries of information because it is round
le.

"Dynamic Change" feature in RZ11 (as from 740 system)

As from SP13 in 740 (or with note 2201397) the RZ11 will store the last 10 changes of dynamic
parameter.

At the end of RZ11 there is the following option:

Origin of Current Value: Kernel Default

If the parameter was dynamic changed, this will show:

Origin of Current Value: Dynamic Switching (änderungshistorie)

This link will change to the change history window:

This is custom documentation. For more information, please visit the SAP Help Portal 71
1/31/2024

Related Content

2201397 - Transaction RZ11: Neither name of changer nor change time displayed after a dynamic change

Dynamic work processes con guration


Purpose
This Expert Content describes the general operation process of the dynamic work processes.

Overview
Dynamic work processes can be used to modify (increase) the amount of de ned work processes, based on application server
load requirements. This includes restarting new work processes and closing them when no longer needed.

Dynamic work processes can be created from types DIA and UPD (also UP2 in kernel versions 7.4x) during runtime, depending
on the resources needs of the application server. This enables a kind of adaptive computing. These work processes will be
started if the dispatcher notices that queue is under high load; or to solve deadlocks situations or bottlenecks.
In general, the Taskhandler tries to start a dynamic WP if the following conditions are ful lled:

- all WPs of a certain type are in HOLD state (inactive standby DIA WPs do not count) or
- all priority queues for DIA WPs with prio normal/low are in use by DIA WPs in HOLD state.

Afterwards, once queue is no longer under high load or the bottleneck has been resolved, these dynamic work processes are not
needed anymore. Therefore, they are ended by the dispatcher. Work processes can also be stopped after the maximum alive
time for idle dynamic workproesses (rdisp/max_dynamic_wp_alive_time) has passed.

On the dispatcher trace le(dev_disp), we can track this scenario (different entries can be found depending on NW release):

DpWpDynCreate: created new work process W<nr>-12345 or


create new work process W<nr> (PID:12345 HANDLE:6789)

This is custom documentation. For more information, please visit the SAP Help Portal 72
1/31/2024
DpSendLoadInfo: queue XXX now with high load, load/queue ll level = 84.184870 / 1.300000
DpUpdateStatusFile: state=YELLOW, reason=Length of high priority queue exceeds limit

DpSendLoadInfo: queue UPD no longer with high load


DpWpCheck: dyn W<nr>, pid 12345 no longer needed, terminate now
DpHdlDeadWp: W<nr> (pid=12345) terminated automatically

This WP stoppage causes the SystemLog (transaction SM21) entries “Stop Workp” to be written:
<Date> <Time> <server> Q02 Stop Workp. <nr>, PID 12345

This's not an error, but an 'Information’ entry. So, this is a normal behavior with the dynamic work process start feature.

All the work processes that are currently running on a system can be checked in the Process Overview (transaction SM50). In
the Header Area, you can nd how many work processes per each type are de ned/being used at that moment.

How to analyze
A level 2 trace from the dispatcher will also show WPs status at the moment of the creation of the dynamic work processes,
giving further reason for the root cause of its creation:

DpHandleProcess: start dynamic W<nr>


DpIWpSetNewStat: switched W<nr> from WP_SLOT_FREE to WP_NEW
DpIWpSetNewStat: info for DIA: new/wait/run/hold/standby/killed = 1/5/0/20/0/0 wps
dwpath: C:\usr\sap\<SID>\<instance>\exe\disp+work.EXE
create new work process W<nr> (PID:12345 HANDLE:6789)
DpWpStartWp: created W<nr>

For troubleshooting purpose, you can use SAP performance monitoring -transaction /SDF/MON-, which allows to collect
different types of system performance snapshots, providing information from CPU, memory, processes, users… It can be
speci ed frequency and time-window when the snapshot should be collected.

It can be helpful to maintain /SDF/MON scheduled, to match with the information coming from the Dispatcher trace le. See:
Display Snapshot Monitoring

Related Content

Related Documents
Dynamic work processes

Con gure Dynamic Work Processes

Related SAP Notes/KBAs


The 720 and 721 kernel versions support the dynamic increase of the number of work processes at runtime. However, this
function is not fully compatible with NW 7.00 and NW 7.01.
See section ʻ5.6 Dynamic work processes’ from Notes:
1636252 - Installing a 7.20 kernel in SAP Web AS 7.00/7.01/7.10/7.11
1713986 - Installation of kernel 721 (EXT)

See also:
2001276 - Changed con guration as of 7.40 SP2

This is custom documentation. For more information, please visit the SAP Help Portal 73
1/31/2024
1962145 - Dynamic work process starts and stop frequently
2190597 - Work Process Con guration - Best Practices

FAQ Dispatcher

Client-Server Technology - Dispatcher FAQ

Checking the work process status from Operating System Level

How can remove activity on a single application server

How do I nd out, which kernel patch level xes a problem described in a note

How do I install a kernel patch

How to limit the size of a developer trace le

What does means passive state

Will the parameter rdisp/gui_auto_logout work in case the work process is in PRIV mode ?

This is custom documentation. For more information, please visit the SAP Help Portal 74
1/31/2024

Checking the work process status from Operating System Level

Checking the work process status from Operating System Level


There are some ways to review the work process status from OS level without require a direct R/3 connection with the
application server. It is required to perform the following options using the <sid>adm user.

1) Using the dpmon tool:

SYNTAX: dpmon pf=<instance pro le> l

2) Using the sapcontrol tool:

SYNTAX: sapcontrol -nr <instance number> -function ABAPGetWPTable

This is custom documentation. For more information, please visit the SAP Help Portal 75
1/31/2024

How can remove activity on a single application server

How can remove activity on a single application server?


To start an application server in "passive" state, set pro le parameter rdisp/start_in_maintenance_mode = 1
Another way to set an application server to "passive" is over SM51:

Goto -> Administration -> State -> Deactivate.

To change the server state back to "active", chose Activate.


You can check the server state using transaction SM51 (right column).

How do I nd out, which kernel patch level xes a problem described in a note

How do I nd out, which kernel patch level xes a problem described in a note?
You nd this information in section "SP Patchlevel" of the note, column "SP Patch Level". If there are several patch numbers
mentioned in this section for the same release, the highest one xes the problem. Kernel patches are always cumulative. So you
can always install a kernel with a higher patch number than the one mentioned in the note.

How do I install a kernel patch

How do I install a kernel patch?


Unless otherwise mentioned, the content of a kernel patch is contained in an SAPCAR archive named dw_<nnn>-<xxx>.sar,
where <nnn> is the patchlevel and <xxx> is some number. Installing a kernel patch simply means replacing les in the
executable directory by their corresponding versions from the archive. It is important that all les contained in the archive are
copied to the executable directory. Having different versions from different kernel patches in the executable directory might
lead to serious runtime errors. It is important that subdirectories are replaced as well along with their corresponding content. It
is recommended to make a backup of all les that are going to be replaced, as you may simply revert the kernel patch by
installing the old les again later on.

How to limit the size of a developer trace le


It is possible to limit the size of trace les using the parameter rdisp/TRACE_LOGGING.
Details about how to setup this parameter in SAP note 112.

112 Trace and error information in the "dev_" les

With SAP kernel 72X the traces are rotated by speci c triggers that occurs in speci c time intervals, however, these time
intervals may vary depends of the component or even the action a work process is doing. In some speci c situations the trace
can increase further than the size set in the parameter.

With 74X kernel the rotation are much more precise avoiding the traces to grow much more than the speci ed.

See also:

This is custom documentation. For more information, please visit the SAP Help Portal 76
1/31/2024
1370207 - Creating work process trace les
2020096 - How to increase sapstartsrv trace level and limit the trace le size

What does means passive state

What does means "passive" state?

An application server in "passive" will not receive requests.

The application server is removed from logon groups and not visible over SAPGUI.

No new logins occur on a passive application server, but existing login sessions are not affected.

Batch jobs are not started on a "passive" application server by unless explicitly requested.
Already running jobs are not affected.

It still possible to login directly to the application server explicitly setting the the application
server name in the logon process, however, the automatic distribution of activities will not be
dispatched to this application server.

Will the parameter rdisp/gui_auto_logout work in case the work process is in PRIV
mode ?
Yes, it will work and details are provided in the below section.

De nition of Private mode is provided in the link :

https://help.sap.com/viewer/f146e75588924fa4987b6c8f1a7a8c7e/7.5.9/en-US/4932f2b4e92e3504e10000000a421937.html

When the work process enters into PRIV mode, the work process is reserved for processing the current user context until the
context releases the work process again when the request has ended. Up to this time point no other user context can be
mapped to the work process . The parameter de nition of rdisp/gui_auto_logout can be found from RZ11 transaction and it
means that a user context gets logged off if it is inactive, per de nition an user context is active if it occupies a work process i.e,
the parameter rdisp/gui_auto_logout does not count if a work process is allocated by a user. Indeed, it does not matter if this is
a PRIV mode or any other status.

Scenario 1:

If the user context has released the work process i.e user has ended the running transaction and user context is idle,
rdisp/gui_auto_logout begins.

Scenario 2:

If a user has executed a report or program and it has nished execution and fetched output ( however user didn't end the
running transaction ) i.e user context still holds the work process, then the dispatcher checks if a user context is active and in

This is custom documentation. For more information, please visit the SAP Help Portal 77
1/31/2024
this case the user context is connected to a work process and so it is considered as active which means the user cannot be
logged off.

If you need to control this behaviour of logging off user in case execution is nished but user holds the work process in PRIV , you
can set the parameter rdisp/max_priv_time to reset the PRIV mode. After this reset , the time for rdisp/gui_auto_logout
begins.

More information about PRIV management is given in the note 2098461 - PRIV process management

Note :

Changing parameter rdisp/max_priv_time is your organisation decision as we never know the time a program needs to nish its
execution. If there is not enough Extended memory, the work process goes into PRIV mode (this is not an error) , it may take a
long time to process and if the parameter is set too low, this will cancel the processing of the Work process. Such setting may
cause more problems than the long process on PRIV mode.

Kernel incompatible to already connected instances

Purpose
To help with troubleshooting.

Overview
An SAP instance does not start. Here are some steps which could be helpful in such cases.

Symptom
An error appears in dev_disp:

ERROR => Kernel incompatible to already connected instances (see dev_ms for details)

Reason and prerequisites

'source id' of msg_server on central (DVEBMGS) or central services (ASCS) instance and disp+work of the affected instance
must be the same otherwise instance won't start.

How to check

To check the 'source id'

1. Logon to central | ASCS instance and execute

sappfpar pf=<path_to_instance_pro le> DIR_EXECUTABLE

<DIR_EXECUTABLE>/msg_server | grep source

2. Logon to application server and execute

sappfpar pf=<DI's pro le> DIR_EXECUTABLE

<DIR_EXECUTABLE>/disp+work | grep source

Solution
This is custom documentation. For more information, please visit the SAP Help Portal 78
1/31/2024
If 'source id' is different, change the kernel in <DIR_EXECUTABLE> of affected instance.

Related Content

Related Documents

Related SAP Notes/KBAs

SAP KBA 3066548: SAP kernel update with RKS procedure fails

Monitoring Work Processes in the CCMS Infrastructure

Purpose
The purpose of this page is to explain how the work processes of an SAP instance can be monitored through the CCMS
infrastructure.

Overview
This page provides details about the CCMS monitoring infrastructure, speci cally focused in the work process monitoring,
providing details about how to nd the monitoring functions and how to con gure them accordingly.

CCMS Transaction RZ20


The CCMS monitoring infrastructure, a solution within SAP NetWeaver, centrally monitors any IT environments - from individual
systems through networked SAP NetWeaver solutions, to complex IT landscapes incorporating several hundred systems. In this
section, you learn about the Alert Monitor (transaction RZ20) and its monitoring functionalities.

Most of the work process monitoring functionalities can be found in transaction RZ20, by following the below path.

RZ20 transaction → SAP CCMS Monitor Templates → Entire System → <SID> → Application Server → R3Services.

Monitoring Dialog Work Process Resources

By expanding the Dialog box under the R/3 Services monitoring tree, as per the iniital image, you will have accessed to the
dialog work process monitoring structure, as you can see below.

This is custom documentation. For more information, please visit the SAP Help Portal 79
1/31/2024

The MTEs for dialog work process monitoring shown above, can monitor the following resources.

Utilisation - Average usage of dialog work processes of an application server


PrivMode Utilisation - Percentage of dialog work processes in PRIV mode
NumberOfWpDIA - Number of dialog work processes
ErrorsInWPDIA - Number of errors in dialog work processes
ErrorFreqInWpDIA - Number of errors in dialog work processes per minute
EndedWpDIA - Number of completed dialog work processes
QueueLength - Average usage of dispatcher wait queue for dialog work processes
LongRunners - Average time for long-running dialog work processes

Monitoring Background Work Process Resources

By expanding the Background box under the R/3 Services monitoring tree, as per the initial image, you will have accessed to the
background work process monitoring structure, as you can see below.

The MTEs for background work process monitoring shown above, can monitor the following resources.

Utilisation - Average usage of background work processes of an application server


NumberOfWpBTC - Number of background work processes
ErrorsInWPBTC - Number of errors in background work processes
ErrorFreqInWpBTC - Number of errors in background work processes per minute
EndedWpBTC - Number of completed background work processes
ProgramErrors - Program error when executing background jobs
ServerSpeci cQueueLength - Number of released jobs that are waiting to be executed
AbortedJobs - Terminated jobs on an application server

Monitoring Spool Work Process Resources

By expanding the Spool box under the R/3 Services monitoring tree, as per the initial image, you will have accessed to the spool
work process monitoring structure, as you can see below.

This is custom documentation. For more information, please visit the SAP Help Portal 80
1/31/2024

The MTEs for spool work process monitoring shown above, can monitor the following resources.

Utilisation - Spool work process load percentage


NumberOfWpSPO - Number of spool work processes
ErrorsInWpSPO - Number of errors in spool work processes
ErrorFreqInWpSPO - Number of errors in spool work processes
EndedWpSPO - Number of completed spool work processes
QueueLength - Utilized area of dispatcher queue (percentage)
ServiceQueue - Utilized area of spool service queue (percentage)
ServiceQueuePriv - Utilized area of spool request queue for processing in order (in %)
ServiceQueuePages - Number of pages to be output in spool request queue
DeviceCacheUsed - Utilized area of entire device cache (percentage)
DeviceCacheFixed - Utilized area of xed device cache (percentage)
HostspoolListUsed - Utilized area of host spool request list (percentage)

Monitoring Update and Update 2 Work Process Resources

By expanding the Update box under the R/3 Services monitoring tree, as per the iniital image, you will have accessed to the
update V1 and V2 work process monitoring structure, as you can see below.

The MTEs for update V1 and V2 work process monitoring shown above, can monitor the following resources.

Update V1
QueueTime - SAP update task V1: Average wait time in dispatcher queue
Utilisation - SAP Update Task V1: Percentage load for update task work process
NumberOfWpUD1 - Number of update1 work processes
ErrorsInWpUD1 - Number of errors in update 1 work processes

This is custom documentation. For more information, please visit the SAP Help Portal 81
1/31/2024
ErrorFreqInWpUD1 - Number of errors in update 1 work processes per minute
EndedWpUD1 - Number of completed update 1 work processes

Update V2
QueueTime - SAP update task V2: Average wait time in dispatcher queue
Utilisation - SAP Update Task V2: Percentage load for update task work process
NumberOfWpUD2 - Number of update 2 work processes
ErrorsInWpUD2 - Number of errors in update 2 work processes
ErrorFreqInWpUD2 - Number of errors in update 2 work processes per minute
EndedWpUD2 - Number of completed update 2 work processes

Monitoring Enqueue Work Process Resources

By expanding the Enqueue box under the R/3 Services monitoring tree, as per the initial image, you will have accessed to the
enqueue work process monitoring structure, as you can see below.

The MTEs for enqueue work process monitoring shown above, can monitor the following resources.

QueueLength - Monitoring object enqueue server: Percentage length of the queue


ErrorsInWpENQ - Number of errors in enqueue work processes
ErrorFreqInWpENQ - Number of errors in enqueue work processes per minute
EndedWpENQ - Number of completed enqueue work processes

Monitoring Scenarios Examples


1. Using the MTEs called QueueLength, monitor the percentage of the dispatcher queue utilisation for that speci c work
process type. With this, you can proactively detect system bottleneck situations soon enough to prevent a system
outage. SAP Note 15606 provides more details about the dispatcher queue over ow situations.

This is custom documentation. For more information, please visit the SAP Help Portal 82
1/31/2024
2. Using the MTEs called Utilisation, you can proactively monitor whether all the work processes of an speci c type are
simultaneously occupied in the system, therefore, detecting speci c scenarios where a bottleneck situation might occur,
leading to requests waiting in the dispatcher queue.

3. Using the MTEs called ErrorsInWp<type> you can proactively monitor whether errors occur in the work processes. These
errors might point to other undesired known system misbehaviors, bringing them to your knowledge and allowing you to
correct them.

CCMS Auto-Reaction Methods


In the CCMS monitoring infrastructure, you can set up any MTE available in transaction RZ20 to automatically trigger email
alerts in case the values reported by them meet the threshould values de ned. The next chapters will explain more details
about the con guration process to achieve this.

De ning Threshold Values for the Monitored MTEs

The rst step is to de ne which MTEs you want to monitor in transaction RZ20, with this, you can start to set up their
thresholds accordingly, so you are alerted in the correct scenario. Follow the Adjusting the Threshold Values chapter from
the Con guring Alert Triggering and Alert Reactions SAP online help documentation for a detailed step by step on how to
achieve this.

De ning and Assigning Auto-Reaction Methods for the Monitored MTEs

The second step to achieve this con guration is to de ne and assign the auto-reaction methods to the desired MTEs in the
CCMS monitoring infrastructure. In order to perform this con guration, follow the steps mentioned in the De ning an
Automatic Alert Noti cation SAP online help documentation.

This is custom documentation. For more information, please visit the SAP Help Portal 83
1/31/2024

Alternatively, you can choose to de ne Central auto-reaction methods, which will trigger the email alert from the central system
instead of the local system. For this con guration, refer to the SAP online help Setting Up Central Auto-Reaction Methods for
more details.

Displaying MTE Performance Information Graphically


Withing the CCMS transaction RZ20, you can display the performance values shown by an speci c MTE as a graphic, allowing
you to make faster and more accurate analysis based on the reported data. In order to display the MTE values as a graphic,
follow the below steps.

1. Select the Performance MTE in RZ20.

2. Click in the Display Details button.

3. Select whether you want to display the last 30 minutes or 24 hour value.

4. Click in the "Display performance values graphically" button.

This is custom documentation. For more information, please visit the SAP Help Portal 84
1/31/2024

5. The graphic is nally shown in the below format.

Related Content

Related Documents
De ning an Automatic Alert Noti cation

Con guring Alert Triggering and Alert Reactions

Setting Up Central Auto-Reaction Methods

Related SAP Notes/KBAs


SAP Note 939616 - CCMS auto-reactions: Help with troubleshooting

SAP Note 176492 - Automatic email when an alert occurs (RZ20)

SAP Note 15606 - Over ow of dispatcher request queue

This is custom documentation. For more information, please visit the SAP Help Portal 85
1/31/2024

Parameters based in hardware resources

Purpose

List of arithmetical parameters based in hardware resource.

Overview

SAP systems are con gured by using pro le parameters that consist in a simple parameter name
with a value.

Some parameters are related to hardware resources, therefore, these are arithmetical formulas based.
This Expert content intent to maintain a relation of parameters that are hardware based size.

Machine resources

Machine resources that are available for the SAP Application Server are determined by the
parameters PHYS_MEMSIZE and CPU_CORES.

Further information about how to setup these parameters see following documentation.

Formula based parameters

Arithmetic formulas can be used in parameter values. further information about formulas usage see
this documentation.

Current parameter sized by hardware resources

Parameter name Default

abap/heap_area_total (max($(PHYS_MEMSIZE)*1024*1024 * 0.1, $(abap/heap_area_dia) * 2 ))

em/initial_size_MB min(512000, $(PHYS_MEMSIZE) * 0.7))

EM/TOTAL_SIZE_MB ($(PHYS_MEMSIZE) * 0.7)

j2ee/phys_memsize $(PHYS_MEMSIZE)

rdisp/PG_SHM (max(min(1000+40*max(5, oor(($(PHYS_MEMSIZE)-128)*25/128)),16384),1024))

rsdb/obj/buffersize (max(4096,$(PHYS_MEMSIZE)*1024 * 0.01))

j2ee/cpu_count $(CPU_CORES)

If the parameter is set in the instance pro le or even default pro le, the default value is ignored and
the pro le speci c is used.

Conclusion
This is custom documentation. For more information, please visit the SAP Help Portal 86
1/31/2024

Using the default de ned formulas in SAP parameters facilitate the con guration of an Application
Server because less parameters control is required.
With the de nition of PHYS_MEMSIZE and CPU_CORES, parameter value can be derived from
hardware resources making the Application Server more reliable as per the available resources.

Related Content

1926986 - Best practice formulas in pro le maintenance

Unable to render {include} The included page could not be found.

SAP Kernel Update on Unix and Linux


Purpose

To offer some help with kernel update.

Overview

CHECK BEFORE

DOWNLOAD

EXTRACTION, UPDATE

CHECK AFTER

CHECK BEFORE

Check the current kernel version:

1. System > Status:

This is custom documentation. For more information, please visit the SAP Help Portal 87
1/31/2024

2. Operating system level:

DOWNLOAD

Download kernel from Support packages and patches ---> By Alphabetical Index (A-Z) ---> K ---> SAP kernel
<bit> <uc> ---> SAP kernel <release> (...) ---> There choose <operating system> ---> both #Database
independent and <database speci c> archives

Example:

EXTRACTION, UPDATE

1. Change to pro le folder:

2. Find the instance pro le

This is custom documentation. For more information, please visit the SAP Help Portal 88
1/31/2024

3. Find DIR_CT_RUN by "sappfpar pf=<instance pf with full path>"

4. Copy SAR les one level above, in this case to "/usr/sap/<SID>/SYS/exe/uc":

5. Copy kernel folder, in this case copy linuxx86_64 as linuxx86_64.bak:

6. Copy SAPCAR to the current folder:

7. Stop SAP at this point. Also stop sapstartsrv processes of this SAP system. Refer to Starting and
Stopping SAP Systems Based on SAP NetWeaver

8. Extract kernel archives by "sapcar -x <SAR archive> -R <destination folder>". First


extract SAPEXE and SAPEXEDB SAR les and then the rest (dw sar, lib_dbsl sar, etc):

This is custom documentation. For more information, please visit the SAP Help Portal 89
1/31/2024

9. Change permission and owner of kernel les as root by "chmod -R 755 <kernel folder>/*" and
"chown -R <sid>adm:sapsys <kernel folder>/*":

10. Run saproot.sh "<kernel folder>/saproot.sh <SID>" as root:

11. Start SAP by "startsap r3" as <sid>adm (deprecated) or by sapcontrol; refer to Starting and
Stopping SAP Systems Based on SAP NetWeaver

CHECK AFTER

Check the new kernel version:

1. System > Status:

2. Operating system level:

Related Content

Starting and Stopping SAP Systems Based on SAP NetWeaver

Related Documents

This is custom documentation. For more information, please visit the SAP Help Portal 90
1/31/2024

Relate SAP Notes/KBAs

SAP Note 19466 : Downloading SAP kernel patches


SAP Note 2576697 : SAP Web DIspatcher in SCS instance: system start after kernel switch fails

SAP Kernel Update on Windows

Purpose

To offer some help with kernel update.

Overview

CHECK BEFORE

DOWNLOAD

EXTRACTION, UPDATE

CHECK AFTER

CHECK BEFORE

Check the current kernel version:

1. System > Status:

2. Operating system level:

This is custom documentation. For more information, please visit the SAP Help Portal 91
1/31/2024

DOWNLOAD

Download kernel from Support packages and patches ---> By Alphabetical Index (A-Z) ---> K ---> SAP kernel
<bit> <uc> ---> SAP kernel <release> (...) ---> There choose <operating system> ---> both #Database
independent and <database speci c> archives

Example:

EXTRACTION, UPDATE

1. Change to pro le folder:

2. Find the instance pro le

3. Find DIR_CT_RUN by "sappfpar check pf=<instance pf with full path> DIR_CT_RUN"

4. Copy kernel folder, in this case NTAMD64 as NTAMD64.bak

This is custom documentation. For more information, please visit the SAP Help Portal 92
1/31/2024

5. Copy SAR les one level above, in this case to "<drive>:\usr\sap\<SID>\SYS\exe\uc":

6. Stop SAP at this point. Also stop sapstartsrv processes of this SAP system. Refer to Starting and
Stopping SAP Systems Based on SAP NetWeaver

7. Extract kernel archives by "sapcar -x <SAR archive> -R <destination folder>". First


extract SAPEXE and SAPEXEDB SAR les and then the rest (dw sar, lib_dbsl sar, etc):

8. Start SAP start service SAP<SID>_<instance nr> from Windows service manager or by
sapcontrol -nr <instance nr> -function StartService <SID> command

9. Restart SAP:

This is custom documentation. For more information, please visit the SAP Help Portal 93
1/31/2024

10. Restart SAP Start Service:

CHECK AFTER

Check the new kernel version:

1. System > Status:

2. Operating system level:

Related Content

Starting and Stopping SAP Systems Based on SAP NetWeaver

Related Documents

Related SAP Notes/KBAs

This is custom documentation. For more information, please visit the SAP Help Portal 94
1/31/2024

SAP Note 19466 : Downloading SAP kernel patches


SAP Note 2576697 : SAP Web Dispatcher in SCS instance: system start after kernel switch fails

SAP Semaphore Locks and Waits Analysis

Purpose

This wiki aims to help the analysis of semaphore lock or waits situations due to deadlocks or even slow operations inside of
operations protected by semaphores.

It cannot be and does not aim to be a complete documentation describing all possible semaphores issue scenarios.The main
idea is to show you the traditional troubleshooting process in a semaphore lock and wait situation.

Overview
The most frequent problems involving SAP semaphores could be classi ed as:

1) semaphore deadlock or stuck lock situation;


2) slow operations blocked by semaphore;

The rst situation will stuck the system and users cannot even login to the system. Usually, such situation may affect a single
Application Server but it is also possible that the entire system is affected.
The second issue is a similar situation, however, the system is not really stuck. The operations can take long time, but the work
process status change time to time and the semaphore locker change as well.

The content here is separated in the following sections:

1. Identifying the semaphore locker

2. Solving a semaphore lock and wait situation

3. Root cause analysis

4. How to analyse the c-stack

5. How to prevent the situation

Identifying the semaphore locker

The work process locker (semaphore locker) is the responsible to stuck the system, it may lock the semaphore forever or during
a speci c time span.

If the locker does not release the semaphore the system stuck and we have the rst situation (usually caused by a deadlock).
However, if the locker hold the semaphore and release after a while, changing the work process locker, we have the second

This is custom documentation. For more information, please visit the SAP Help Portal 95
1/31/2024
situation.

The rst step is to identify the locker. There are few ways to identify the semaphore locker:

SM50 transaction (not always possible to use during the standstill situation);

Using the standalone tool DPMON (see further):

This is custom documentation. For more information, please visit the SAP Help Portal 96
1/31/2024

Using the SAPMMC tool:

This is custom documentation. For more information, please visit the SAP Help Portal 97
1/31/2024

Using the SAPCONTROL client connecting to sapstartsrv service:

sapcontrol -nr <NR> -function ABAPGetWPTable

Using the snapshot feature created by dispatcher (see further):

If the column time that belongs to the semaphore locker keep increasing or already running reached a long time, it has a big
possibility to be a semaphore
deadlock situation. However, if the column time is close to zero or just few seconds, may be just a slow situation.

There are situation where the semaphore locker cannot be identi ed, for these cases you can use the semd tool as explained in
the note 2027885.

2027885 - External semaphore monitoring

Solving a semaphore lock and wait situation

The rst thing to do is de ne if it is situation is the case 1 or case 2 based in the behavior's analysis..

In case of a semaphore deadlock or stuck lock, it is possible to restart the work process locker and, that may solve the issue. If
the issue is a stuck lock situation,
the WP restart may solved the hanging situation. It is possible that a new WP stuck the same semaphore again, therefore, just
the restart will solve.
However, if for some reason, the semaphore cannot be properly released, the only solution is the restart of applicator server.

This is custom documentation. For more information, please visit the SAP Help Portal 98
1/31/2024
In case of the second situation, it is need to identify the reason that the work process are holding for too long the semaphore.
This issue may belongs to distinct situation
like problems in the le system, a long runner operation from OS level, shortage of resources at OS level, etc.

Root cause analysis


There are multiple reasons that may lead to a semaphore deadlock, stuck semaphore or even slow down lock situation.

The deadlock or stuck semaphore usually is related to an error, basically, if a WP is accidentally interrupt and it is at a point
when the process hold a semaphore, the release may not occurs as expected:

1. In certain error situations, some resources are not always released as expected and an unlock is missing for a
semaphore. For example, a crash of WP trigger a clean up process where all allocated resources should be released,
however, if the clean up also fails, some resource may never be released and stuck the system.

2. Crashes during the critical section, where the processing is running over a semaphore protection, are also the most
critical situations if the clean up does not occurs as expected.

3. A classical deadlock situation, when the system is performing some operation protected by a semaphore and, at the
exact time, the operation is interrupted and the same operation is trigger again requesting the same lock (before it be
released).

4. The clean up of resources occurs during the start up of the process, if this action also crash for whatever reason, some
resources will not be identi ed in the next clean up process and keep blocking the system.

In the other side, situation of slow operation protected by a semaphore, the error does not exactly occurs with the semaphore
manipulation. But the operations between the lock and unlock the semaphore are taking a long time.

In both cases, the analysis should be done collecting the C-stack of the work process during the occurrence of the problem.

To do that SAP deliver a tool called sapstack explained in the SAP note 1964673
1964673 - C-Call stack analysis

Calling "sapstack <PID>" during the occurrence of the issue will print the c-stack of the process. Another possible way to do
that is using a signal USR2 to the process ID: "kill -USR2 <PID>" will print in the work process trace (dev_w*) the c-stack. There
is no "kill" command on windows, therefore, it is possible to use "sapntkill -USR2 <PID>". After send the signal USR2, it is
required to send a signal USR1: "kill -USR1 <PID>".

How to analyse the c-stack

The call stack should be analysed from bottom to top. To nd out the root cause the most relevant calls are the last ones before
the signal. See the following example:

1. This stack we should search by errors in calls like BackupFile -> IndDeleteOldest calls.

M ------------------ C-STACK ----------------------


[0] SunDoStack2, at 0x127ec69

This is custom documentation. For more information, please visit the SAP Help Portal 99
1/31/2024
[1] CTrcStack2, at 0x127e8b3
[2] CTrcStack, at 0x127e85c
[3] __1cOThStackHandler6F_v_, at 0x10a504d
[4] __1cKDpTrcOnOff6Fi_v_, at 0xfbd04f
[5] __sighndlr, at 0xfffffd7ff6d775b6
[6] call_user_handler, at 0xfffffd7ff6d6be52
[7] sigacthandler, at 0xfffffd7ff6d6c07e
[8] ????????, at 0xffffffffffffffff
[9] __1cSPfHIndDeleteOldest6FpnJPF_HYPIND_CpH_i_, at 0x33f9624
[10] __1cMPfBackupFile6F_v_, at 0x33eeb70
[11] PfStatWrite, at 0x33cbd49
[12] __1cLPfWriteStat6F_i_, at 0x33eddeb
[13] __1cLThCallHooks6FnOSOS_HOOK_EVENT_pnTSOS_HOOK_EVENT_INFO_Cpi_i_, at 0x1077304
[14] __1cTThPerformTaskSwitch6FnKDP_WP_STAT_pnLTH_STRATEGY_CC_i_, at 0x106608a
[15] __1cUThITriggerTaskSwitch6Fpv_i_, at 0x1063588
[16] __1cITskhLoop6F_v_, at 0x10a8590
[17] __1cHThStart6F_v_, at 0x10a58df
[18] DpMain, at 0xf6d7b1
M -------------------------------------------------

2. This second example, the is about RqQAddRequest -> std::deque -> std::_Deque_base

------------------ C-STACK ----------------------


dw.sapPNR_D00[S](LinStackBacktrace+0x8c)[0x662179]
dw.sapPNR_D00[S](LinStack+0x35)[0x6661c0]
dw.sapPNR_D00[S](CTrcStack2+0x4e)[0x661f2e]
dw.sapPNR_D00[S](SigIGenAction+0x288)[0x2300e28]
<signal handler called> [0x7ffff198f850]
libc.so.6[S](__GI_raise+0x35)[0x7ffff1636875]
libc.so.6[S](__GI_abort+0x181)[0x7ffff1637e51]
libc.so.6[S](__libc_message+0x38f)[0x7ffff16778bf]
libc.so.6[S](malloc_printerr+0xb8)[0x7ffff167d0c8]
libc.so.6[S](_int_malloc+0x7af)[0x7ffff168007f]
libc.so.6[S](__GI___libc_malloc+0x77)[0x7ffff16821f7]
libstdc++.so.6[S](operator new(unsigned long)+0x1d)[0x7ffff209008d]
dw.sapPNR_D00[S](std::_Deque_base<RQ_Q_NOTIFY_ELEM, std::allocator<RQ_Q_NOTIFY_ELEM>
>::_M_initialize_map(unsigned long)+0x7c)[0x1de879c]
dw.sapPNR_D00[S](std::deque<RQ_Q_NOTIFY_ELEM, std::allocator<RQ_Q_NOTIFY_ELEM> >::deque()+0x5a)[0x1de88ea]
dw.sapPNR_D00[S](RqQAddRequest(unsigned int, REQUEST_BUF*, unsigned char (*)(REQUEST_BUF*, void*), void*, unsigned
char)+0x359)[0x1de3cf9]
dw.sapPNR_D00[S](DpRqPutIntoQueue(REQUEST_BUF*, unsigned char (*)(REQUEST_BUF*, void*), void*, unsigned char,
unsigned char)+0x16e)[0x1df93de]
dw.sapPNR_D00[S](DpRqSendRequest(REQUEST_BUF*, unsigned char, unsigned char)+0x3d)[0x1df9c4d]
dw.sapPNR_D00[S](DpWpHandShake(DP_SESSION_INFO, unsigned int)+0x9f)[0x48b827]
dw.sapPNR_D00[S](DpTmSend(int, int, int, unsigned char, unsigned int)+0x3c3)[0x44f8d5]
dw.sapPNR_D00[S](DpHandleGuiResponse(REQUEST_BUF*)+0x45)[0x468641]
dw.sapPNR_D00[S](DpRqServiceQueue()+0x1450)[0x1df53f0]
dw.sapPNR_D00[S](DpLoopExec()+0x195)[0x1df5655]
dw.sapPNR_D00[S](DpMain+0x3bd)[0x1ddc5cd]
libc.so.6[S](__libc_start_main+0xe6)[0x7ffff1622c36]
-------------------------------------------------

This is custom documentation. For more information, please visit the SAP Help Portal 100
1/31/2024
3. This example, the current call is SemTimedOp. However, this functions means that the respective work process is doing
a semaphore operation, see details about this OS call here. This means that probably this is not the work process locker,
but probably a work process waiting by a semaphore.

M ------------------ C-STACK ----------------------


dw.sapPE3_D03[S](LinStackBacktrace+0x8c)[0x65a0f9]
dw.sapPE3_D03[S](LinStack+0x35)[0x65e140]
dw.sapPE3_D03[S](CTrcStack2+0x4e)[0x659eb1]
dw.sapPE3_D03[S](ThStackHandler()+0x102)[0x4e9a63]
dw.sapPE3_D03[S](DpTrcOnOff(int)+0x212)[0x45f7a9]
<signal handler called> [0x7f6a1a3327e0]
libc.so.6[S](__GI_semtimedop+0xa)[0x7f6a1a07a16a]
dw.sapPE3_D03[S](SemTimedOp+0xc1)[0x1b58831]
dw.sapPE3_D03[S](EvtWtRst+0x72)[0x1d4c882]
dw.sapPE3_D03[S](RqQWorkerWaitForRequests(unsigned int, unsigned char, RQ_Q_PRIO, unsigned int*, int)+0x2fb)[0x1b4b0cb]
dw.sapPE3_D03[S](ThRqCheckQueues(int, REQUEST_BUF**)+0x795)[0x1b5dcb5]
dw.sapPE3_D03[S](ThRqGetNextRequest(int, REQUEST_BUF**)+0x37)[0x1b5fd37]
dw.sapPE3_D03[S](ThRqWaitFor(int, REQUEST_BUF**)+0x42)[0x1b5fee2]
dw.sapPE3_D03[S](ThRqAcceptImpl(unsigned char, int, REQUEST_BUF**)+0xe4)[0x1b5e8e4]
dw.sapPE3_D03[S](ThRqAcceptInlineReply(int, REQUEST_BUF**)+0x32)[0x1d5af52]
dw.sapPE3_D03[S](ThCPIC(REQUEST_BUF*, unsigned char, unsigned char*, TH_CPIC_EXEC_TYPE, unsigned char, char16_t*,
char16_t*, int, unsigned char, int, TH_SECURITY_INFO*, char16_t*, int*, REQUEST_BUF**)+0x11a3)[0x1d68a03]
dw.sapPE3_D03[S](ThSAPICMRCV(unsigned char*, int, int, TH_CPIC_EXEC_TYPE, unsigned char, unsigned char, unsigned char,
unsigned char, unsigned char, unsigned char, int*, REQUEST_BUF**)+0x4ad)[0x1d6d87d]
dw.sapPE3_D03[S](ThSAPCMRCV+0x88)[0x1d6ddd8]
dw.sapPE3_D03[S](comread(void*, unsigned char*, unsigned int, unsigned int*, int)+0xfe)[0x203365e]
dw.sapPE3_D03[S](ab_rfcread+0x2fc)[0x1c48cec]
dw.sapPE3_D03[S](rfcget_gethead+0x3b)[0x1c4532b]
dw.sapPE3_D03[S](ab_rfcget_error_exception+0x121)[0x2029c41]
dw.sapPE3_D03[S](ab_rfcimport+0x34c)[0x202629c]
dw.sapPE3_D03[S](ab_jcaly()+0x119)[0x1be5f79]
dw.sapPE3_D03[S](ab_extri()+0x197)[0x1b78427]
dw.sapPE3_D03[S](ab_xevent(char16_t const*)+0x32)[0x1bb87e2]
dw.sapPE3_D03[S](ab_dstep+0x36)[0x1b75936]
dw.sapPE3_D03[S](dynpmcal(DINFDUMY*, STPDUMMY*)+0x2d1)[0x1de0831]
dw.sapPE3_D03[S](dynppbo0(DINFDUMY*)+0xb6)[0x1de26c6]
dw.sapPE3_D03[S](dynprctl(DINFDUMY*)+0x189)[0x1de2dc9]
dw.sapPE3_D03[S](dynpen00+0x407)[0x1dd3d77]
dw.sapPE3_D03[S](ThrtCallAbapVm+0xc0)[0x1daf1d0]
dw.sapPE3_D03[S](RfcHandler::handleRequest(REQUEST_BUF*, bool)+0x173)[0x1dbce13]
dw.sapPE3_D03[S](ThHandleRequest(REQUEST_BUF*, unsigned char, unsigned char)+0x1a3)[0x1d72b23]
dw.sapPE3_D03[S](TskhLoop()+0xa2)[0x1b62072]
dw.sapPE3_D03[S](ThStart()+0x26e)[0x4e95c0]
dw.sapPE3_D03[S](DpMain+0x36c)[0x1d09d2c]
libc.so.6[S](__libc_start_main+0xfd)[0x7f6a19fadd1d]

4. Here we have another example where the stack goes to OS calls like name resolution and wins resolution calls:
gethostbyname2 -> _nss_wins_gethostbyname2_r.
Note that in this example the issue probably exists in the OS side and not really in the SAP layer as the wins resolutions
is a OS responsibility.

__lll_lock_wait () from /lib64/libpthread.so.0


pthread_mutex_lock () from /lib64/libpthread.so.0
_nss_wins_gethostbyname_r () from /lib64/libnss_wins.so.2
_nss_wins_gethostbyname2_r () from /lib64/libnss_wins.so.2
gaih_inet () from /lib64/libc.so.6

This is custom documentation. For more information, please visit the SAP Help Portal 101
1/31/2024
getaddrinfo () from /lib64/libc.so.6
interpret_string_addr_internal () from /lib64/libnss_wins.so.2
interpret_addr () from /lib64/libnss_wins.so.2
interpret_addr2 () from /lib64/libnss_wins.so.2
?? () from /lib64/libnss_wins.so.2
wins_srv_tags () from /lib64/libnss_wins.so.2
resolve_wins () from /lib64/libnss_wins.so.2
_nss_wins_gethostbyname_r () from /lib64/libnss_wins.so.2
_nss_wins_gethostbyname2_r () from /lib64/libnss_wins.so.2
gethostbyname2_r@@GLIBC_2.2 () from /lib64/libc.so.6
gaih_inet () from /lib64/libc.so.6
getaddrinfo () from /lib64/libc.so.6
NiPGetHostByName(char16_t const*, unsigned char, unsigned char, NI_NODEADDR*, unsigned int*, char16_t*, unsigned int,
_IO_FILE**) ()
NIHIMPL_LINEAR::getNodeAddr(char16_t const*, NI_NODEADDR*, unsigned int, int, _IO_FILE**) ()
NiIGetNodeAddr(char16_t const*, int, NI_NODEADDR*, unsigned int, _IO_FILE**) ()
NiHostToAddr ()
DpNetCheck ()
DpSapEnvInit ()
DpMain ()
__libc_start_main () from /lib64/libc.so.6
_start ()

You probably are wondering what to do with these call stacks. The most important thing is to use these stacks to nd out in the
SAP knowledge repository about a known issue involved the same or most similar call stack. You can search the most relevant
calls inside of SAP knowledge repository by some known issue involved the respective calls in order to check if your system is
affected by the issue or not.

INCLUDE WHERE TO SEARCH

It not possible to provide you with an speci c solutions about problems regarding semaphores because the root cause may have
distinct reasons, therefore the analysis process is the most relevant item in such kind of cases.

How to prevent the situation

There are some speci c situations, with kernel 72X, where the semaphore can be automatically recovered with the feature of
note 1890657.

1890657 - Semaphore recovery

.... UNDER CONSTRUCTION...

This is custom documentation. For more information, please visit the SAP Help Portal 102
1/31/2024

Related Content

Related Documents

Related SAP Notes/KBAs


2007484 - Semaphore 42
1754001 - DP: Work processes cause block on semaphore 5
1795711 - DP: Work processes block on semaphore 42
981088 - System crash due to semaphore 5 deadlock
1875389 - DeaGo to linkdlock on semaphore 5
1704898 - Instance hangs on Semaphore 7
2101988 - MM:AIX detect loop in ES layer
1548895 - Work processes cause block with semaphore 7
2171151 - ST: All work processes wait for semaphore 42

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAPLTHFB Report Appearing in SM66 Transaction

dp_new.png

Purpose

Help you to understand the transaction SM66 and how does it obtain the information it displays as an standard behavior.

Overview

This page contains information about the SM66 transaction and the SAPLTHFB report it displays.

SM66 Transaction
The SM66 transaction shows the global work process overview as its main screen, where you can see the work processes for all
the instances of the system with details like current action, status and all information also provided in the SM50 transaction.

SAPLTHFB Report

This is custom documentation. For more information, please visit the SAP Help Portal 103
1/31/2024
The report SAPLTHFB is used to obtain the work process information from all the instances of a system when transaction SM66
is accessed. It is expected to see one entry in a dialog work process in transaction SM66 with your user in each instance of the
system, since the work process information has to be rst collected via RFC before SM66 can display it.

In older releases you can use the button Settings in order to hide the work processes allocated with your own user with the
report SAPLTHFB in order to avoid misunderstandings. With this option active as you can see below, the only work processes
shown will be the ones relevant for analysis.

This is custom documentation. For more information, please visit the SAP Help Portal 104
1/31/2024

Depending on the kernel version the report used to collect the work process information in the instances can have a different
name. In newer releases the name will appear as CL_SERVER_INFO==============CP instead of SAPLTHFB, however, in
these releases the option to hide these work processes does not exist. Please check the SAP Note 2143496 for more details
about the different versions of SM66.

Related Content

Related Documents
SM66 - Global Work Process Overview

Related SAP Notes/KBAs


SAP Note 2143496 : SM66/SM50 new layout in EHP7

Server Snapshots in the SAP System

Purpose

This is custom documentation. For more information, please visit the SAP Help Portal 105
1/31/2024

Help you to understand the snapshot functionality the SAP system.

Overview

This page contains information regarding the snapshot functionality delivered as from the kernel 740,
aiming to explain its purpose, content and related parameters.

Snapshots in the ABAP Server

The snapshots in the ABAP server aim to display important information about the current situation of
the server, automatically by some error situations like a work processes unexpectedly nished or
manually created by using DPMON or SM51 itself.

The snapshot will rst dump all the essential information into the developer trace, mainly the
dispatcher trace (dev_disp) and second creates a snapshot by using sapcontrol.

You can manually trigger the snapshot creation by using transaction SM51 -> GoTo -> Administration
-> Snapshot -> Create.

Automatic Creation of Snapshots

There are several situations where the snapshot is automatically triggered by the server in order to
display important information for analysis in the developer traces. These situations are:

In case a hard shutdown occurs

In case of exhausted resources.

In case of a deadlock handling.

In case a crash occurs in a work process, ICM or gateway.

In case the eyecatcher of an internal table has been destroyed.

In case the request processing stops for more than 30 seconds.

This is custom documentation. For more information, please visit the SAP Help Portal 106
1/31/2024

Snapshot Section in the Developer Traces

When the ABAP server triggers the snapshot creation, there will be an snapshot section inside the
dispatcher trace le. Additionally, the work process developer trace itself will write a special section in
its trace le.

In the dispatcher trace le, the snapshot will be displayed in the below format.

1. Starts with the trace entry ****** SERVER SNAPSHOT <id> (Reason: <reason>) - begin
********.

2. The content of the request queue.

3. The content of the session table.

4. The conent of the process table

5. Ends with the trace entry ****** SERVER SNAPSHOT <id> (Reason: <reason>) - end ********.

In the work process trace le, the snapshot wil be displayed in the below format.

1. Starts with the trace entry ****** SERVER SNAPSHOT <id> - begin ********.

2. The current C-STACK.

3. The current ABAP stack.

4. Details about critical sections.

5. Ends with the trace entry ****** SERVER SNAPSHOT <id> - end ********.

In the below image you can see an example of the snapshot functionality displayed in the dispatcher
trace.

This is custom documentation. For more information, please visit the SAP Help Portal 107
1/31/2024

Every snapshot has a server unique id which is a increasing number. If the extended info area of SM50
has been activated, SM50 shows the number of snapshots created by this server. You can nd this
information by using transaction SM51 -> GoTo -> Administration -> Snapshot -> Administration.

This is custom documentation. For more information, please visit the SAP Help Portal 108
1/31/2024

The snapshot list will be displayed in the following format.

Viewing Snapshots

Snapshots can be displayed using SAP MC. To enable this, the snapshots must rst be downloaded to
the local PC by using the following:

Transaction SM50 (Administration -> Snapshot -> Administration), comes with 7.40 SP8.

Transaction SM51 (Goto -> Administration -> Snapshot -> Administer), comes with 7.40 SP8

Transaction SNAPSHOTS, comes with 7.40 SP7.

Report RS_DOWNLOAD_SNAPSHOTS, comes with 7.40 SP7.

After downloading the le, a snapshot can be opened with SAP MC (right click -> open with ->
Microsoft Management Console).

Analyzing Snapshots

Server Snapshot can be easily analyzed by using kernel snapshot analyzer tool.
This is an standalone tool to systematically analyze issues from snapshot les or developer trace les
and create analysis reports.
It highly simpli es the root cause analysis for SAP NetWeaver ABAP relevant issues and makes the
troubleshooting experience easier and more user-friendly.

KBA 3110588 - Kernel Snapshot Analyzer: Central KBA, provides the information to download the tool
and how to generate the analysis report.

Con guring the Snapshots

The following parameters can be used to con gure Snapshots.

This is custom documentation. For more information, please visit the SAP Help Portal 109
1/31/2024

1. service/max_snapshots - de nes the maximum number of snapshots per server

2. rdisp/snapshot - con gure the creation of snapshots by the ABAP server with the following
sections

creation: should the server create snapshots due to high load of / exhausted resource?

period: limitate the number of snapshots for a given time interval

lines: maximal number of trace le lines included in a snapshot

For more details on the possible values and syntax of the above parameters, refer to the parameter
documentation in transaction RZ11.

Related Content

Related Documents

SAP MC

DPMON

Creating a Snapshot of an SAP System or Instance with SAP MMC

KBA 3122914 - The step-by-step guide to collect a server snapshot and analyze it with kernel snapshot
analyzer

What do the semaphores mean

dp_new.png

Purpose

Clari cation about SAP semaphores representation.

Overview

In trace les or in transaction SM50 (process overview), semaphores are mentioned. How do you
determine which semaphores control what?
see the following list dependent of the Kernel release

List

This is custom documentation. For more information, please visit the SAP Help Portal 110
1/31/2024
KERNEL RELEASE: 640

1 SEM_PXA_KEY PXA-Semaphore
2 SEM_REQ_QUEUE_DIA_KEY disp. dia queue key
3 SEM_REQ_QUEUE_READ_KEY disp. queue read key
4 SEM_TM_ADM_KEY workprozess tm_adm-table
5 SEM_COMM_ADM_KEY workprozess comm_adm-table
6 SEM_ROLL_ADM_KEY roll administration
7 SEM_PAGING_KEY paging administration
8 SEM_NO_BUFFER Nummernkreispuffer
9 SEM_STAT_KEY for statistic buffer
10 SEM_GW_REQ_IND Gateway-Request-Semaphor
11 SEM_CALI_BUFFER Fabrikkalender
12 SEM_CCC_KEY TemSe Char-Code convert Buf.
13 SEM_VB_KEY for VB-startup
14 SEM_PRES_BUF Presentation Buffer
15 SEM_SHM_ADM_AREA_KEY shared memory admin area
16 SEM_DB_TBUFF table-buffer-semaphor
17 SEM_DB_SYNC Buffer synchronisation
18 SEM_DB_TTAB DB-table-description-Buffer
19 SEM_DB_SNTAB DB-short-nametab-Buffer
20 SEM_DB_IREC DB-initial-record-Buffer
21 SEM_DB_FTAB DB- eld-catalog-Buffer
22 SEM_LOGFILE_KEY for log les (e.g. batch)
23 SEM_REQ_QUEUE_KEY Dispatcher Request Queue
24 SEM_DB_TBUFF_P Table Buffer, part.buffering
25 SEM_ENQ_REQ_KEY Enqueue Request/local Server
26 SEM_ENQ_TABLE_KEY Enqueue Table
27 SEM_SAPCOM_1 Sap-Communication BK/EDI
28 SEM_SAPCOM_2 Sap-Communication BK/EDI
29 SEM_VMS_FIXADR_KEY sem for VMS x addresses
30 SEM_DB_CUA_BUFFER DB-CUA-Buffer
31 SEM_RSPO_ADMIN Spool Admin
32 SEM_EM_ADM Extended Memory Admin
33 SEM_ES_KEY Extended Segments Adm. (es)
34 SEM_MSBUF Puffer fuer MsgServer-Liste
35 SEM_DB_OBJ_BUFFER Export/Import buffer
36 SEM_ES_USER_KEY Estended Segments User List
37 SEM_SEM2MTX_KEY global mutex for sem2 / mtx
38 SEM_CCMS_AS_MONI_KEY CCMS monitoring for appl.srv
39 SEM_EG_ADM Extended Global Memory (EG)
40 SEM_TEST_1 reserved for test programs
41 SEM_TEST_2 reserved for test programs
42 SEM_STAT_BUF shared statistic buffer

This is custom documentation. For more information, please visit the SAP Help Portal 111
1/31/2024

43 SEM_RSPO_CACHE rspo cache


44 SEM_AUDIT_SHM basis audit shm protection
45 SEM_ASTAT_KEY application statistics buf
46 SEM_PROFILE pro le parameter buf
47 SEM_RSPO_RFC spool async rfc calls
48 SEM_ENQID_KEY EnqId
49 SEM_AB_VMIT virtual machine instr.trace
50 SEM_THRUN_ADM taskhandler runtime
51 SEM_ATRA_KEY protect atra memory
52 SEM_MPI_ADM memory pipes adm. (MPI)
53 SEM_COV_KEY shbuf of coverage analyzer
54 SEM_ZDATE_TIMEINFO WP-independ. time sync info
55 SEM_DB_OTR_BUFFER Online Text Repository Buf.
56 SEM_DB_ESM_BUFFER Export/Import Memory
57 SEM_RTM_KEY shbuf of runtime monitor
58 SEM_JAVA_1 sem 1 for java
59 SEM_ABAP_SHO ABAP shared objects
60 SEM_JCONTROL_ADMIN JControl Administration
61 SEM_JCONTROL_SESSION unused
62 SEM_STATISTICS_ITS ITS Statistic records
63 SEM_SERVICES_ITS ITS Service parameters
64 SEM_UNUSED_64 unused
65 SEM_UNUSED_65 unused
66 SEM_UNUSED_66 used by vmc admin in > 640
67 SEM_UNUSED_67 used by ext mem adm in >640
68 SEM_CCMS_JMON_KEY CCMS monitoring for J2EE srv
69 SEM_UNUSED_69 unused
70 SEM_UNUSED_70 unused
71 SEM_UNUSED_71 unused
72 SEM_RSEC_EG_ACCESS Secure Storage access to EG

KERNEL RELEASE: 700 - 720 - 721 - 722

1 SEM_PXA_KEY PXA-Semaphore
2 SEM_REQ_QUEUE_DIA_KEY disp. dia queue key
3 SEM_REQ_QUEUE_NOWP_KEY disp. queue read key
4 SEM_TM_ADM_KEY workprozess tm_adm-table
5 SEM_COMM_ADM_KEY workprozess comm_adm-table
6 SEM_ROLL_ADM_KEY roll administration
7 SEM_PAGING_KEY paging administration
This is custom documentation. For more information, please visit the SAP Help Portal 112
1/31/2024

8 SEM_NO_BUFFER Nummernkreispuffer
9 SEM_STAT_KEY for statistic buffer
10 SEM_WP_ADM_KEY disp. wp_adm table
11 SEM_CALI_BUFFER Fabrikkalender
12 SEM_CCC_KEY TemSe Char-Code convert Buf.
13 SEM_VB_KEY for VB-startup
14 SEM_PRES_BUF Presentation Buffer
15 SEM_SHM_ADM_AREA_KEY shared memory admin area
16 SEM_DB_TBUFF table-buffer-semaphor
17 SEM_DB_SYNC Buffer synchronisation
18 SEM_DB_TTAB DB-table-description-Buffer
19 SEM_DB_SNTAB DB-short-nametab-Buffer
20 SEM_DB_IREC DB-initial-record-Buffer
21 SEM_DB_FTAB DB- eld-catalog-Buffer
22 SEM_LOGFILE_KEY for log les (e.g. batch)
23 SEM_REQ_QUEUE_KEY Dispatcher Request Queue
24 SEM_DB_TBUFF_P Table Buffer, part.buffering
25 SEM_ENQ_REQ_KEY Enqueue Request/local Server
26 SEM_ENQ_TABLE_KEY Enqueue Table
27 SEM_SAPCOM_1 Sap-Communication BK/EDI
28 SEM_SAPCOM_2 Sap-Communication BK/EDI
29 SEM_VMS_FIXADR_KEY sem for VMS x addresses
30 SEM_DB_CUA_BUFFER DB-CUA-Buffer
31 SEM_RSPO_ADMIN Spool Admin
32 SEM_EM_ADM Extended Memory Admin
33 SEM_ES_KEY Extended Segments Adm. (es)
34 SEM_MSBUF Puffer fuer MsgServer-Liste
35 SEM_DB_OBJ_BUFFER Export/Import buffer
36 SEM_ES_USER_KEY Estended Segments User List
37 SEM_SEM2MTX_KEY global mutex for sem2 / mtx
38 SEM_CCMS_AS_MONI_KEY CCMS monitoring for appl.srv
39 SEM_EG_ADM Extended Global Memory (EG)
40 SEM_TEST_1 reserved for test programs
41 SEM_TEST_2 reserved for test programs
42 SEM_STAT_BUF shared statistic buffer
43 SEM_RSPO_CACHE rspo cache
44 SEM_AUDIT_SHM basis audit shm protection
45 SEM_ASTAT_KEY application statistics buf
46 SEM_PROFILE pro le parameter buf
47 SEM_RSPO_RFC spool async rfc calls
48 SEM_ENQID_KEY EnqId
49 SEM_AB_VMIT virtual machine instr.trace
50 SEM_THRUN_ADM taskhandler runtime

This is custom documentation. For more information, please visit the SAP Help Portal 113
1/31/2024

51 SEM_ATRA_KEY protect atra memory


52 SEM_MPI_ADM memory pipes adm. (MPI)
53 SEM_COV_KEY shbuf of coverage analyzer
54 SEM_ZDATE_TIMEINFO WP-independ. time sync info
55 SEM_DB_OTR_BUFFER Online Text Repository Buf.
56 SEM_DB_ESM_BUFFER Export/Import Memory
57 SEM_RTM_KEY shbuf of runtime monitor
58 SEM_JAVA_1 sem 1 for java
59 SEM_ABAP_SHO ABAP shared objects
60 SEM_JCONTROL_ADMIN JControl Administration
61 SEM_JSTART_INSTANCE JStart instance active
62 SEM_STATISTICS_ITS ITS Statistic records
63 SEM_SERVICES_ITS ITS Service parameters
64 SEM_VB_REDISPATCH update redispatch
65 SEM_ES2_ADM ext. segment administration
66 SEM_VMC_ADM vmc administration
67 SEM_EM2_ADM ext. memory administration
68 SEM_CCMS_JMON_KEY CCMS monitoring for J2EE srv
69 SEM_DBG_SESSION_BPS ABAP-Debugger: SessionBrkPts
70 SEM_EG2_ADM ext. global memory admin
71 SEM_FILE_ADM_KEY le table (VMC)
72 SEM_RSEC_EG_ACCESS Secure Storage access to EG
73 SEM_HST_KEY ABAP Hot Spot Trace

KERNEL RELEASE: 740 - 741 - 742 - 745

1 SEM_PXA_KEY PXA-Semaphore
2 SEM_DB_ADM DB TBI admin semaphore
3 SEM_DB_SHM DB TBI shared memory
4 SEM_TM_ADM_KEY workprozess tm_adm-table
5 SEM_COMM_ADM_KEY workprozess comm_adm-table
6 SEM_DB_TBI DB TBI new table buffer
7 SEM_PAGING_KEY paging administration
8 SEM_NO_BUFFER Nummernkreispuffer
9 SEM_STAT_KEY for statistic buffer
10 SEM_WP_ADM_KEY disp. wp_adm table
11 SEM_CALI_BUFFER Fabrikkalender
12 SEM_CCC_KEY TemSe Char-Code convert Buf.
13 SEM_VB_KEY for VB-startup
14 SEM_PRES_BUF Presentation Buffer
This is custom documentation. For more information, please visit the SAP Help Portal 114
1/31/2024

15 SEM_SHM_ADM_AREA_KEY shared memory admin area


16 SEM_DB_TBUFF table-buffer-semaphor
17 SEM_DB_SYNC Buffer synchronisation
18 SEM_DB_TTAB DB-table-description-Buffer
19 SEM_DB_SNTAB DB-short-nametab-Buffer
20 SEM_DB_IREC DB-initial-record-Buffer
21 SEM_DB_FTAB DB- eld-catalog-Buffer
22 SEM_LOGFILE_KEY for log les (e.g. batch)
23 SEM_DB_XTYPMAP DB TBI xtyp map
24 SEM_DB_TBUFF_P Table Buffer, part.buffering
25 SEM_ENQ_REQ_KEY Enqueue Request/local Server
26 SEM_ENQ_TABLE_KEY Enqueue Table
27 SEM_SAPCOM_1 Sap-Communication BK/EDI
28 SEM_SAPCOM_2 Sap-Communication BK/EDI
29 SEM_VMS_FIXADR_KEY sem for VMS x addresses
30 SEM_DB_CUA_BUFFER DB-CUA-Buffer
31 SEM_RSPO_ADMIN Spool Admin
32 SEM_EM_ADM Extended Memory Admin
33 SEM_ES_KEY Extended Segments Adm. (es)
34 SEM_MSBUF Puffer fuer MsgServer-Liste
35 SEM_DB_OBJ_BUFFER Export/Import buffer
36 SEM_ES_USER_KEY Estended Segments User List
37 SEM_SEM2MTX_KEY global mutex for sem2 / mtx
38 SEM_CCMS_AS_MONI_KEY CCMS monitoring for appl.srv
39 SEM_EG_ADM Extended Global Memory (EG)
40 SEM_TEST_1 reserved for test programs
41 SEM_TEST_2 reserved for test programs
42 SEM_STAT_BUF shared statistic buffer
43 SEM_RSPO_CACHE rspo cache
44 SEM_AUDIT_SHM basis audit shm protection
45 SEM_ASTAT_KEY application statistics buf
46 SEM_PROFILE pro le parameter buf
47 SEM_RSPO_RFC spool async rfc calls
48 SEM_ENQID_KEY EnqId
49 SEM_AB_VMIT virtual machine instr.trace
50 SEM_THRUN_ADM taskhandler runtime
51 SEM_ATRA_KEY protect atra memory
52 SEM_MPI_ADM memory pipes adm. (MPI)
53 SEM_COV_KEY shbuf of coverage analyzer
54 SEM_ZDATE_TIMEINFO WP-independ. time sync info
55 SEM_DB_OTR_BUFFER Online Text Repository Buf.
56 SEM_DB_ESM_BUFFER Export/Import Memory
57 SEM_RTM_KEY shbuf of runtime monitor

This is custom documentation. For more information, please visit the SAP Help Portal 115
1/31/2024

58 SEM_DB_STRING DB TBI string manager


59 SEM_ABAP_SHO ABAP shared objects
60 SEM_JCONTROL_ADMIN JControl Administration
61 SEM_JSTART_INSTANCE JStart instance active
62 SEM_STATISTICS_ITS ITS Statistic records
63 SEM_SERVICES_ITS ITS Service parameters
64 SEM_SPOOL_TOKEN_KEY Spool Token
65 SEM_ES2_ADM ext. segment administration
66 SEM_VMC_ADM vmc administration
67 SEM_EM2_ADM ext. memory administration
68 SEM_CCMS_JMON_KEY CCMS monitoring for J2EE srv
69 SEM_DBG_SESSION_BPS ABAP-Debugger: SessionBrkPts
70 SEM_EG2_ADM ext. global memory admin
71 SEM_FILE_ADM_KEY le table (VMC)
72 SEM_RSEC_EG_ACCESS Secure Storage access to EG
73 SEM_HST_KEY ABAP Hot Spot Trace
74 SEM_PROCMEM_ADM Process Local (PROC) Memory
75 SEM_RQ_Q_ADM request queue adm
76 SEM_RQ_Q_HIGH_DISP_QUEUE for high prio disp queue
77 SEM_RQ_Q_NORM_DISP_QUEUE for normal prio disp queue
78 SEM_RQ_Q_LOW_DISP_QUEUE for low prio disp queue

Related Content

What do the semaphores mean - higher releases

Purpose
Clari cation about SAP semaphores representation.

Overview

In trace les or in transaction SM50 (process overview), semaphores are mentioned. How do you determine which semaphores
control what?
see the following list dependent of the Kernel release:

For all kernel versions, semaphores information can be extracted from SM50 transaction: select semaphores column and press
F1 (for help).
Semaphores overview will be displayed.

List

This is custom documentation. For more information, please visit the SAP Help Portal 116
1/31/2024

KERNEL RELEASE: 740 - 741 - 742 - 745

1 SEM_PXA_KEY PXA-Semaphore
2 SEM_DB_ADM DB TBI admin semaphore
3 SEM_DB_SHM DB TBI shared memory
4 SEM_TM_ADM_KEY workprozess tm_adm-table
5 SEM_COMM_ADM_KEY workprozess comm_adm-table
6 SEM_DB_TBI DB TBI new table buffer
7 SEM_PAGING_KEY paging administration
8 SEM_NO_BUFFER Nummernkreispuffer
9 SEM_STAT_KEY for statistic buffer
10 SEM_WP_ADM_KEY disp. wp_adm table
11 SEM_CALI_BUFFER Fabrikkalender
12 SEM_CCC_KEY TemSe Char-Code convert Buf.
13 SEM_VB_KEY for VB-startup
14 SEM_PRES_BUF Presentation Buffer
15 SEM_SHM_ADM_AREA_KEY shared memory admin area
16 SEM_DB_TBUFF table-buffer-semaphor
17 SEM_DB_SYNC Buffer synchronisation
18 SEM_DB_TTAB DB-table-description-Buffer
19 SEM_DB_SNTAB DB-short-nametab-Buffer
20 SEM_DB_IREC DB-initial-record-Buffer
21 SEM_DB_FTAB DB- eld-catalog-Buffer
22 SEM_LOGFILE_KEY for log les (e.g. batch)
23 SEM_DB_XTYPMAP DB TBI xtyp map
24 SEM_DB_TBUFF_P Table Buffer, part.buffering
25 SEM_ENQ_REQ_KEY Enqueue Request/local Server
26 SEM_ENQ_TABLE_KEY Enqueue Table
27 SEM_SAPCOM_1 Sap-Communication BK/EDI
28 SEM_SAPCOM_2 Sap-Communication BK/EDI
29 SEM_VMS_FIXADR_KEY sem for VMS x addresses
30 SEM_DB_CUA_BUFFER DB-CUA-Buffer
31 SEM_RSPO_ADMIN Spool Admin
32 SEM_EM_ADM Extended Memory Admin
33 SEM_ES_KEY Extended Segments Adm. (es)
34 SEM_MSBUF Puffer fuer MsgServer-Liste
35 SEM_DB_OBJ_BUFFER Export/Import buffer
36 SEM_ES_USER_KEY Estended Segments User List
37 SEM_SEM2MTX_KEY global mutex for sem2 / mtx
38 SEM_CCMS_AS_MONI_KEY CCMS monitoring for appl.srv
39 SEM_EG_ADM Extended Global Memory (EG)
40 SEM_TEST_1 reserved for test programs
41 SEM_TEST_2 reserved for test programs
42 SEM_STAT_BUF shared statistic buffer
43 SEM_RSPO_CACHE rspo cache
44 SEM_AUDIT_SHM basis audit shm protection
45 SEM_ASTAT_KEY application statistics buf
46 SEM_PROFILE pro le parameter buf
47 SEM_RSPO_RFC spool async rfc calls
48 SEM_ENQID_KEY EnqId
49 SEM_AB_VMIT virtual machine instr.trace
50 SEM_THRUN_ADM taskhandler runtime
51 SEM_ATRA_KEY protect atra memory
52 SEM_MPI_ADM memory pipes adm. (MPI)
53 SEM_COV_KEY shbuf of coverage analyzer
54 SEM_ZDATE_TIMEINFO WP-independ. time sync info
55 SEM_DB_OTR_BUFFER Online Text Repository Buf.
56 SEM_DB_ESM_BUFFER Export/Import Memory
57 SEM_RTM_KEY shbuf of runtime monitor

This is custom documentation. For more information, please visit the SAP Help Portal 117
1/31/2024

KERNEL RELEASE: 740 - 741 - 742 - 745

58 SEM_DB_STRING DB TBI string manager


59 SEM_ABAP_SHO ABAP shared objects
60 SEM_JCONTROL_ADMIN JControl Administration
61 SEM_JSTART_INSTANCE JStart instance active
62 SEM_STATISTICS_ITS ITS Statistic records
63 SEM_SERVICES_ITS ITS Service parameters
64 SEM_SPOOL_TOKEN_KEY Spool Token
65 SEM_ES2_ADM ext. segment administration
66 SEM_VMC_ADM vmc administration
67 SEM_EM2_ADM ext. memory administration
68 SEM_CCMS_JMON_KEY CCMS monitoring for J2EE srv
69 SEM_DBG_SESSION_BPS ABAP-Debugger: SessionBrkPts
70 SEM_EG2_ADM ext. global memory admin
71 SEM_FILE_ADM_KEY le table (VMC)
72 SEM_RSEC_EG_ACCESS Secure Storage access to EG
73 SEM_HST_KEY ABAP Hot Spot Trace
74 SEM_PROCMEM_ADM Process Local (PROC) Memory
75 SEM_RQ_Q_ADM request queue adm
76 SEM_RQ_Q_HIGH_DISP_QUEUE for high prio disp queue
77 SEM_RQ_Q_NORM_DISP_QUEUE for normal prio disp queue
78 SEM_RQ_Q_LOW_DISP_QUEUE for low prio disp queue

KERNEL RELEASE: 750 - 753

1 PXA semaphore (ABAP program buffer)


2 Table buffer administration
3 Table buffer shared memory
4 TM_ADM semaphore (internal session
5 administration)
6 COMM_ADM semaphore (RFC connection
7 administration)
8 Table buffer data
9 Paging administration
10 NO_BUFFER semaphore (number range buffer)
11 STAT semaphore (statistics administration)
12 WP_ADM semaphore (internal work process
13 administration)
14 Factory calendar
15 CCC semaphore (TemSe, char code conversion)
16 Update synchronization
17 PRES_BUF semaphore (DYNP buffer)
18 SHM_ADM_AREA semaphore (shared memory
19 management)
20DB_TBUFF semaphore (DB table buffer)
21 DB_SYNC semaphore (DB table buffer
22 synchronization)
23 DB_TTAB semaphore (DB table description buffer)
24DB_SNTAB semaphore (DB short name table
25 buffer)
26DB_IREC semaphore (DB initial record buffer)
27 DB_FTAB semaphore (DB eld catalog buffer)
28Logging les
29Table buffer types
30DB_TBUFF_P semaphore (DB table buffer with
31 partial buffering)
32 Enqueue server communication
33 ENQ-TABLE semaphore (lock/enqueue
34management)
35 BK/EDI communication 1
36BK/EDI communication 2

This is custom documentation. For more information, please visit the SAP Help Portal 118
1/31/2024
37
KERNEL RELEASE: 750 - 753
38
39VMX xed addresses
40DB_CUA_BUFFER semaphore (CUA interface
41 buffer)
42 Spool ADM semaphore (print administration)
43 Extended memory ADM semaphore (EM memory
44management)
45 Extended segments semaphore (ES memory
46management)
47 Server buffer semaphore (internal server list buffer)
48Object buffer semaphore (export/import buffer)
49Extended segments user list semaphore (ES user
50 list)
51 Global Mutex semaphore (internal lock
52 management)
53 CCMS monitoring semaphore (CCMS monitoring)
54 Extended global memory semaphore (EG
55 management)
56 Semaphore reserved for testing (test)
57 Semaphore reserved for testing (test)
58 Shared statistics semaphore (statistics buffer)
59 Spool cache semaphore (RSPO buffer)
60Basis audit semaphore
61 Application statistics buffer semaphore
62 Pro le parameter semaphore
63 Spool asynchronous RFC semaphore
64ENQID semaphore
65 ABAP Virtual Machine instruction trace semaphore
66Task handler runtime semaphore
67 ATRA semaphore
68Memory pipes semaphore
69Coverage analyzer semaphore
70 ABAP time synchronization semaphore
71 Online Text Repository semaphore
72 ESM (Export to Shared Memory) semaphore
73 Runtime monitor
75 Table buffer strings
76 ABAP shared objects
77 JControl administration
78 JStart instance active
79 ITS statistical records
80ITS service parameters
Spool token
Extended segments administration semaphore
VM administration
Extended memory administration semaphore
CCMS monitoring semaphore (J2EE)
Session breakpoint administration of ABAP
debugger
Extended global memory administration
semaphore
File table (VMC)
Secure storage access semaphore
ABAP hotspot trace semaphore
Request queue administration
Request queue administration (high priority
requests)
Request queue administration (normal priority
requests)
Request queue administration (low priority

This is custom documentation. For more information, please visit the SAP Help Portal 119
1/31/2024

KERNEL RELEASE: 750 - 753

requests)
RFC through WebSocket (server)
RFC through WebSocket (client)

Work process termination cases

Purpose

This Expert Content helps to understand different reason for a normal work process termination.

Different normal behaviors on the system may lead to work process terminations that can be seen on transaction SM21:

To identify which is the reason for this terminations, we should check the information displayed on the work process trace le
involved from the affected application server at that timestamp.

On the above example, it would be work process 0 so we should check on work folder le called dev_w0

rdisp/wp_auto_restart was exceeded


1- Dispatcher (dev_disp) :

DpHdlDeadWp: W0 (pid= <WPpid>) terminated automatically


DpWpDynCreate: created new work process W0-<WPpid>

2- Work process (dev_w0) :

ThWpNeedsRestart: reached auto restart time (<parameter value> sec)


ThWpRestart: restart wp (pid=<WPpid>) automatically
Disconnecting from ALL connections:
..
***LOG Q02=> wp_halt, WPStop (Workp. 0 <WPpid>)

This restart is implemented in following way:

The work process checks after each change of the user context whether it has already exceeded the time interval set by
paramete rdisp/wp_auto_restart

. If this is the case, work process is terminated and the Dispatcher starts a new work process. Therefore, the work process will
not be shutdown forcibly after rdisp/wp_auto_restart seconds. It will only shutdown at times where all work has been nished by
the work process.

abap/heaplimit was exceeded

This is custom documentation. For more information, please visit the SAP Help Portal 120
1/31/2024
1- Dispatcher (dev_disp) :

DpHdlDeadWp: W0 (pid= <WPpid>) terminated automatically


DpWpDynCreate: created new work process W0-<WPpid>

2- Work process (dev_w0) :

WP has reached abap/heaplimit = <parameter value> bytes


..
ThWpNeedsRestart: abap strategy == kill, restart
ThWpRestart: restart wp (pid==<WPpid>) automatically
..
***LOG Q02=> wp_halt, WPStop (Workp. 0 <WPpid>)

This restart will be triggered if the work process has allocated, at least, the amount of memory de ned in this parameter. When
value de ned by abap/heaplimit

is reached, and work process has nished allocating the memory it needs until the execution of the task is completed, work
process will be restarted. This work process automatic restart, is done to release the local memory that was occupied from the
operative system's point of view. This is not an error and no action has to be performed.

See also Note:

2360519 - abap/heaplimit increased for kernel releases 7.42 and higher

Dynamic Work process is terminated after high load situations

There are two cases for this scenario

Case A - High load situation has been stabilized. When dynamic work processes are not needed anymore, the dispatcher
terminates them.

Work process (dev_w0) :

ProcessHandler::handleRequest: received opcode DP_PROC_OPCODE_TERMINATE for W0, pid <WPpid>


ThWpRestart: restart wp (pid=<WPpid>) automatically
Disconnecting from ALL connections:
..
***LOG Q02=> wp_halt, WPStop (Workp. 0 <WPpid>)

Case B - rdisp/max_dynamic_wp_alive_time is exceeded for any of the dynamic work process

Work process (dev_w0):

ThWpHandleStateChange: max alive time for dyn W0, pid <WPpid> exceeded, terminate now
ProcessHandler::handleRequest: received opcode DP_PROC_OPCODE_TERMINATE for W0, pid <WPpid>
ThWpRestart: restart wp (pid=<WPpid>) automatically
Disconnecting from ALL connections:
...
***LOG Q02=> wp_halt, WPStop (Workp. 0 <WPpid>)

For both cases we can see the Dispatcher (dev_disp) :

This is custom documentation. For more information, please visit the SAP Help Portal 121
1/31/2024
DpWpCheck: dyn W0, pid <WPpid> no longer needed, terminate now
DpHdlDeadWp: W0 (pid=<WPpid>) terminated automatically

For more information, please see:

Dynamic work processes con guration

Operation mode change which requires reduction of Work process


1- Dispatcher (dev_disp) :

DpWpConf: wp recon guration, stop W0, pid <WPpid>


..
DpHdlDeadWp: W0 (pid= <WPpid>) terminated automatically

2- Work process (dev_w0) :

ProcessHandler::handleRequest: received opcode DP_PROC_OPCODE_TERMINATE for W0, pid <WPpid>


ThWpRestart: restart wp (pid=<WPpid>) automatically
Disconnecting from ALL connections:
...
***LOG Q02=> wp_halt, WPStop (Workp. 0 <WPpid>)>)

Work process will be terminated in an operation mode switch, in the case where the new operation mode is set with a lower
number of total active work process.

For more information, please see:

Operation Modes

2190597 - Work Process Con guration - Best Practices

rdisp/os_heap_for_restart was exceeded


1- Dispatcher (dev_disp) :

DpHdlDeadWp: W<nr> (pid= <WPpid>) terminated automatically


DpWpDynCreate: created new work process W<nr>-<WPpid>

2- Work process (dev_<nr) :

M ThWpNeedsRestart: os heap usage <value> max os heap limit <value of rdisp/os_heap_for_restart>


M Top 50 PROC memory consumers by user tag ID (in bytes) M
M Tag Allocations Smallest Biggest Sum
..
M ***LOG Q02=> wp_halt, WPStop (Workp. 7517956872) [dpuxtool.c 316]

Each work process checks its heap consumption at operating system level before it accepts a new request. If the consumption
exceeds the value that is set using the pro le parameter rdisp/os_heap_for_restart

it restarts automatically.

For more information see:

This is custom documentation. For more information, please visit the SAP Help Portal 122
1/31/2024
2249313 - Memory leak analysis

Related Content

Related Documents

Dynamic work processes con guration

Operation Modes

Related SAP Notes/KBAs

2360519 - abap/heaplimit increased for kernel releases 7.42 and higher

2190597 - Work Process Con guration - Best Practices

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAP Enqueue Server


Management

Changing the trace level of the standalone enqueue dynamically - ENSA1

Enqueue Client Handles Resource and Consumption

Enqueue Performance : Analysis

Enqueue performance analysis with enqt

Enqueue Session Quota

ENSA 1 heap memory consumption

Monitoring Enqueue Resources in the CCMS Infrastructure

When are the enqueue locks released?

Troubleshooting

Enqueue overload - Collecting and Analyzing the Enqueue Log Information

Troubleshooting for Enqueue Failover in ASCS with ERS

Top relevant SAP notes

This is custom documentation. For more information, please visit the SAP Help Portal 123
1/31/2024

2019532 - Performance of integrated enqueue server

2119669 - How to split the ASCS from Primary Application Server

2126913 - ENQU: The enqueue log

2146940 - Desupport of Enqueue Work Process

Miscelaneous Info

[WEBINAR] Understanding and Troubleshooting Standalone Enqueue Server

Useful Tools

ENSMON (Enqueue Server monitor)

F.A.Q.

Classical Central Instance or Standalone Enqueue

Finding the Replication Server (ERS) connected to the Enqueue service

How to check enqueue over ow

How to check if the lock entry should be deleted or not

How to check the locks in the enqueue table

How to check the owner of an Enqueue Object

How to check what is responsible for a lock table over ow

How to create an enqueue operations trace

How to limit the size of a developer trace le

Identify the program using an Enqueue Object

Monitoring Enqueue handles entries

Changing the trace level of the standalone enqueue dynamically - ENSA1

Purpose

Show how to control the trace level of the standalone enqueue dynamically, without downtime
requirements.

Overview

This is custom documentation. For more information, please visit the SAP Help Portal 124
1/31/2024

This page shows the steps to change the trace level of the standalone enqueue dynamically.

The standalone enqueue is one of the processes running at the ASCS (ABAP Central Services
Instance) or SCS (Java Central Services Instance).

Using the "ensmon" tool to change the trace level

1. Logon to the ASCS server at operating system level as "sidadm";

2. Execute the "ensmon" tool. You are presented with the initial menu:

3. Access the option "3" to enter the trace level menu option (type "3" and press enter);

4. You can use the option "1" to raise the trace level or the option "2" to lower it.
After choosing either option, the tool presents the option to limit the action to speci c enqueue
thread(s).
The options are the same for both raise and lower actions:

5. Using "EN" will change the trace level of all threads of the standalone enqueue.
In order to change the trace only from a speci c type of thread, use the other options.

This is custom documentation. For more information, please visit the SAP Help Portal 125
1/31/2024

For example, you are investigating an issue with the enqueue replication thread, and want to
capture a level 2 trace from it. There is no need to increase the trace level of all enqueue threads.
Using "THREP" will change the trace level of the replication thread only.
Using "THIO" only changes the trace level of all enqueue I/O threads. Using "THIO2" changes the
trace level of the I/O thread 2 only.

6. To exit the tool, use "q".

Example: increasing the trace level of the I/O thread 1 only

Your standalone enqueue is con gured with two I/O threads (parameter "enque/server/threadcount =
2"). They will be the I/O thread 0 (zero) and 1.

When following the steps from the previous section, you reach step 5 and instead of typing "EN", as
shown above, you type "THIO1" because you want to increase the trace level of the I/O thread 1 only.

You can verify that the trace level was not increased at the trace le of the I/O thread 0
(/usr/sap/<SID>/ASCS??/work/dev_enqio_0):

This is custom documentation. For more information, please visit the SAP Help Portal 126
1/31/2024

While you can see that the trace level was increased at the dev_enqio_1:

Related Content
Related Documents

Monitoring the Standalone Enqueue Server

Related SAP Notes/KBAs

ENSA 1 heap memory consumption

This is custom documentation. For more information, please visit the SAP Help Portal 127
1/31/2024

Purpose

The goal of this Expert Content is clarify the size of OS heap memory consumed by ENSA
(en.sap<SID>_<INSTANCE> process at OS level) service.

Overview

Heap memory is the allocated memory inside each process that is managed by the process itself.
Such memory area is possible to analyse and check statistics information using OS speci c tools.

From ENSA process, there are heap segments allocated to store run-time information and its size is
based by some parameters explained bellow.

Parameters related

The heap area is determined by few parameters that should be analysed together.

1) Number of requests * by requests size.

enque/server/max_requests * enque/server/max_request_size

The size of each request if con gured in bytes inside of parameter enque/server/max_request_size

Example:

enque/server/max_requests 12000
enque/server/max_request_size 32768 bytes

12000 * 32768 = 393216000 bytes = ~375 Mb

2) Number of simultaneously requests * size of each block

enque/server/max_query_requests * enque/server/max_query_size

Example:

enque/server/max_query_requests 12000
enque/server/max_query_size 131072 bytes

12000 * 131072 = 1572864000 = ~1500 Mb

3) Size of enqueue table set by parameter enque/table_size

Example:

enque/table_size = 262144 Kb = 256 Mb


This is custom documentation. For more information, please visit the SAP Help Portal 128
1/31/2024

These are the 3 main areas that will consume memory. It is possible that
few bytes are used to additional structure, but the biggest area is
consumed by these structures and should represent the heap memory consumed
at OS level by ENSA process.

Following the above example, the en.sap<SID>_<INSTANCE> process should


consume around: 375Mb + 1500Mb + 256Mb = ~2.1Gb

Related Content

Related Documents

Related SAP Notes/KBAs

1995208 - ENQU: Enqueue processing 2.0

Enqueue Client Handles Resource and Consumption

Purpose
Help you to understand the enqueue clients and handles usage, in order to better interpret the consumption of this important
resource to this critical SAP process.

Overview
This page contains information about the enqueue process and the behaviors correspondent to the handles utilization and
clients connected to it.

The Enqueue

The enqueue server (also known as the lock server) is the SAP system component that manages the lock table.

The enqueue server can be installed as part of a separate instance. This is when the standalone
enqueue server is used. Together with the message server, this server becomes the SCS
instance (SAP, Central Services - AS Java) or the ASCS instance (ABAP Central Services - AS
This is custom documentation. For more information, please visit the SAP Help Portal 129
1/31/2024
ABAP). This means that this instance is a single point of failure, which can be designed for high
availability, together with the enqueue replication server.

Enqueue server should be installed as part of a separated instance" (since this is the
recommendation as for Netweaver 7.4). See SAP Note 2013043.

In this scenario, TCP/IP connections need to be stablished to the enqueue server, therefore, there are parameters and
behaviors in this particupar interaction that you will nd in the next chapters.

Parameter enque/server/max_clients

This parameter determines the number of processes that can be connected to the enqueue server. The enqueue server will be
the server of the connection, while the work processes or any other process connecting to the enqueue server will be the client.

The standard recommendation for this parameter according to the SAP Online Help is to "Set the parameter to the same value
as the total number of work processes in the system". This is because it is expected to have in the worst case scenario, all the
work process connected to the enqueue server, however, there are a few behaviors that can lead to the exhaustion of the client
connections even if not all the work processes are connected to the enqueue server simultaneously. This is explained in the
following chapter.

Exhausting the Enqueue Clients Resource


Connection Unexpectedly Broken

One cause of clients exhaustion when the number of work processes is smaller than the number of maximum clients con gured
in the enqueue is the connection broken with the enqueue server. In the below entry you can see a SI_ECONN_BROKEN in the
enqueue trace le which corresponds to this behavior.

When a connection is not properly closed with the respective TCP/IP handshake, it is set to the status TIME_WAIT. These are
connections that will wait for the Operating System to nish them and consequently free the handle, however, these
connections will still allocate this service handle (which in this case corresponds to the ENSA handle) until they are nished by
the OS, since this resource is tied to the connection.

In the moment the connection is broken, the work process (client of this connection), is available to receive new requests and
perform a new connection to the enqueue, while its previous connection is no longer tied to it, however, in status TIME_WAIT
waiting for the termination and still consuming the handle resource from ENSA. In a hypothetical scenario where a few work
processes are repeatedly disconnected with a connection broken from the enqueue, the default limit of 1000 client connections
can quickly be exhausted.

Each operating system has its own con guration for the TCP stack in such a way that the TIME_WAIT period varies in different
Operating Systems. For Linux operating systems for example, the period is by default set to 60 seconds as you can see below.

"Wild" Connections to Enqueue

Other processes that are not work processes can also access the port of the standalone enqueue server, therefore, these
processes will also consume the client limit to the enqueue server. An example of process that can access this port is the
ENSMON in order to monitor the enqueue functions from the OS level. Non-SAP processes can also access the enqueue server
port, with this, it is recommended to make sure only SAP work processes are accessing this TCP port.

Work Process Crash

This is custom documentation. For more information, please visit the SAP Help Portal 130
1/31/2024
When a work process crashes completely, the connections previously stablished by this process that were not closed yet will still
be tied to it, and therefore will be set to the TIME_WAIT status for the operating system to nish them. As described before in
this page, the connection will allocate the enqueue handle while in TIME_WAIT status.

Firewalls or Others

Firewalls or other networks components can close the connection between the client and the server (the ENSA in this case),
therefore still using the enqueue clients resource until this connection is nished by the operating system after the TIME_WAIT
status period.

Related Content
Related Documents

Pro le Parameters for the Standalone Enqueue Server

Monitoring the Standalone Enqueue Server

Related SAP Notes/KBAs

SAP KBA 2196513 - WARNING => NiICreateHandle: no more free handles (XXXX)

SAP Note 1002075 - Too many enqueue clients in standalone enqueue server

SAP Note 2013043 - Performance Problems with Enqueue Work Process

Enqueue Performance : Analysis

Purpose

The purpose of this document is to provide some guidelines to analyze the Enqueue performance. It depends of multiple factors and usually is not
easy to analyze.

Overview

Enqueue calls consist of a communication part and of a processing part, so the first action would be to identify if the problem is a communication
problem or a processing problem .

This is custom documentation. For more information, please visit the SAP Help Portal 131
1/31/2024

Do you have performance problems on both sides or only on the DI side?

Both sides:

There is an enqueue processing problem.

only on DI:

There is a communication problem.

General Recommendation

As from Netweaver 7.40 using the Standalone Enqueue Server for deployments with more than ONE instance is a must/prerequisite. In this
scenario there are some recommendations:

It makes no sense to set number of threads in ENSA (enq/io/max_threads) higher than 4-6:

The working thread (the one which executes requests) exists only one time. So increasing IO thread won't bring much performance, but rather can
slow down the server causing:

High CPU contention Lack of CPU resources

ENSA (Standalone Enqueue Server) and Database shouldn't be placed in the same host sharing CPU resources.

By activating Enqueue logging Mode 8 the current throughput is display together with other key figures and shows a summary per second.
To activate it : enqt pf=<ASCS/SCS instance profile> 81 1 8
To deactivate it after some minutes: enqt pf=<ASCS/SCS instance profile> 81 2
The output is written in ENQLOG99 in the ASCS/SCS work directory

How to identify enqueue performance issues

STAD transaction : Checking enqueue time and count (number of enqueues)

This is custom documentation. For more information, please visit the SAP Help Portal 132
1/31/2024

In this example we see 10 enqueue calls with a total time of 20ms è 2ms per call (this is a good value on a Dialog Instance, but would be bad on
the Central Instance.

SM12

>> Extras >> Statistics:

Big number of enqueue collisions (rejections)?

Activate enqueue logging feauture to identify the application responsible


See Enqueue overload - collecting and analyzing the enqueue log information

High number of costly operations (Read / Backup) ?

This is custom documentation. For more information, please visit the SAP Help Portal 133
1/31/2024
READ operations reduce ENSA's performance.

Backup file is not needed when running Standalone enqueue with Replication Server: ERS is designed for a smooth replication and it does its job
perfectly.

Enqueue Replication Server naturely increases total duration of enqueue requests.

Access to Enqueue Statistics file (ENQSTAT)

This file is located at "/usr/sap/<sid>/<instance>/Data/ENQSTAT"


It is accessed with every enqueue operation, then it should resides in the host were the enqueue service is located to avoid accesses over the network

You could identify there is an issue with this in the ENSA "dev_enqwork" trace file, see the following example:

[Thr 139878603158592] Tue Jun 27 14:35:00 2017


[Thr 139878603158592] EnqMemMakeNewStamp: new stamp: 1 498563300 120000
[Thr 139878603158592]
[Thr 139878603158592] *************** EnqStatistics ***************
[Thr 139878603158592] Tue Jun 27 14:35:03 2017

In this case we see it took around 3 seconds to write in the file.

enque/repl/shadow_file_name is set in the ASCS profile

This parameter sets where the replication table is stored, in this case is in the file system instead of shared memory

This slow down the replication process (even more if it's NFS mounted) and can influence also the performance of the Enqueue processing

When enqueue server is placed in the Central Instance check the I/O performance of the disk:

Maybe that disk is used for heavy frequent I/O operations of a database or other applications and processes?

Any system activities like swap file, archive, backup?


What if you separate the backup file from the landscape by assigning it a private disk to be able to use it exclusively?
Wait time should be smaller that processing time, otherwise you would see semaphore 26 often in SM50 and in ST02 semaphore statistics by using
"enqt" tool.

See Enqueue performance analysis with enqt

Related Content

SAP Lock Concept

Related Documents
Related SAP Notes/KBAs

This is custom documentation. For more information, please visit the SAP Help Portal 134
1/31/2024

2013043 - Performance Problems with Enqueue Work Process


920979 - Out of memory in the standalone enqueue server

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Luckiest+Guy' is not on the allowlist. If you want to
include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Enqueue Session Quota

Purpose

Enqueue over ow situation is an issue may lead to a production down.


As Enqueue is one of the most important services, a security mechanism has been implemented to
avoid such situations in some scenarios. This Expert Content explain about this mechanism.

Overview

The Enqueue service (ENSA) is a critical point of failure in a SAP system.


The parameter enque/table_size de nes the size of enqueue. If the enqueue table is full, no additional
locks are not created and the program fail with enqueue table over ow errors.
If the ENSA fail, the whole SAP system fails too.

See FAQ Enqueue Server for topics about:

How to check the locks in the enqueue table?


How to check enqueue over ow?
How to check what is responsible for a lock table over ow?

Usually the recommendation to avoid over ow is increase the enque/table_size.


This new feature works limiting the amount of size a single user can consume of enqueue table. The
feature is called session quota

Enabling the session quota

The sessions quotas was implemented per user session.


These quotas are con gurable via a pro le parameter enque/server/session_quota which is a
percentage value (1-100%).

If the parameter enque/quota_exceeded_dump is enable, the users that exceed its quota will receive a
short dump ENQUEUE_QUOTA_EXCEEDED.

Limitation

This is custom documentation. For more information, please visit the SAP Help Portal 135
1/31/2024

The session quota feature can only protect the entry table to be lled.
If many programs running at the same time and creating a huge number of locks, it is still possible to
create an over ow in the enqueue table.
The session quota is implemented on the Enqueue owner level. Therefore, an ABAP user can have
more than one session and the quota will not be exceeded if this ABAP user sets many locks in more
than one session.
There are many combinations, which will still result in an over ow of the enqueue table but will not be
caught by the session quota.

Related Content
Related Documents

Related SAP Notes/KBAs

1722708 - ENQU: Session quota

Unable to render {include} The included page could not be found.

Enqueue overload - collecting and analyzing the enqueue log information

Purpose

You need help to analyze an enqueue overload situation. This page will give details on how you can collect and analyze the
enqueue log information.

This page is valid only for a "Classical Central Instance" (the DVEBMGSxx instance with a work process of type "enqueue") and
for systems running with the Standalone Enqueue Server 1.0 (ENSAv1).

Overview
This page will give the steps that need to be followed in order to collect the enqueue log information, and other steps that will
make it easier to analyze such enqueue log, in order to help with the analysis of an enqueue overload situation.

What is an enqueue overload?

An enqueue overload is a situation when an application is performing a huge number of enqueue operations.

This usually happens when the application is trying to lock an already locked object, but it is not handling this situation in the
best possible way. For example, the code that creates the lock is an in nite loop without any delay or "sleep" time between the
attempts to obtain the lock.

Another possible cause is that a huge number of locks is being set in a short timeframe. This situation is identi ed when several
work processes executing the report SAPLSENA are observed at the transaction SM50 / SM66 (at an ABAP system). The

This is custom documentation. For more information, please visit the SAP Help Portal 136
1/31/2024
report SAPLSENA is not the root cause. This report provides the API to perform enqueue operations and it is, therefore, used by
all applications to perform such enqueue operations.

Collecting the enqueue log

If your system has a Central Services Instance (SCS/ASCS), or if the enqueue overload situation is related to the Java-stack,
you can use the following commands (that must be ran at operating system level, at the server at which the (A)SCS instance is
running at, while logged on as “<sid>adm”):

To activate the enqueue log

enqt pf=/path/to/(a)scs_instance_pro le 81 1 1 (for UNIX/Linux)

enqt pf=x:\path\to(a)scs_instance_pro le 81 1 1 (for Windows)

To deactivate the enqueue log

enqt pf=/path/to/(a)scs_instance_pro le 81 0 (for UNIX/Linux)

enqt pf=x:\path\to(a)scs_instance_pro le 81 0 (for Windows)

If your system doesn’t have an ASCS instance, and the enqueue overload is related to the ABAP-stack, you must use the
instructions of the SAP note 1384191. Note that the enqueue log information must be collected while the issue is happening.

Update on June/01/2015: the SAP note 2126913 introduces new enqueue logging features.

Analyzing the enqueue log

After you’ve generated the enqueue log, you need to copy all the “ENQLOG*” les from the “work” folder of the instance at
which the enqueue process is running at, to the computer/server at which the analysis will be performed (or to a different,
temporary and empty folder in case the analysis will be performed at the same server). The note suggests to collect the log at
the transaction SM12 itself, however this transaction shows only the rst 200 characters of each line, which may lead to an
incomplete enqueue log display.

After the copy has been done, access the folder that has the “ENQLOG*” les, and run the following command to clear, sort and
merge all the “ENQLOG*” les into one single le:

UNIX/Linux

cat ENQLOG* | egrep -v "^* * .*" | sort > all_logs.txt

Windows

type ENQLOG* | ndstr /B /V "****" | sort > all_logs.txt

Then, open the le “all_logs.txt” and identify objects that are related to the potential enqueue overload (e.g., objects that are
seen very frequently). You can then run the following command to see how many requests were made to that particular object:

UNIX/Linux

cat all_logs.txt | grep <OBJECT> | cat -n | tail -n 1

There is no equivalent command that can be performed on Windows. You’ll need to use an application that can perform a kind of
“count” operation in order to count how many times the object was requested. For example, open the “all_logs.txt” le with
Microsoft Excel, press “CTRL + F” to open the “Find and replace” popup. Then, at the “Find” tab, type the object at the “Find
what” text box, and press the “Find All” button. The total number of hits will be shown at the bottom of the “Find and replace”
popup.

This is custom documentation. For more information, please visit the SAP Help Portal 137
1/31/2024
If the user on those entries of work processes executing SAPLSENA report is always the same, it should help identifying the
enqueue log entries and the object involved.Once you have identi ed the object related to the enqueue overload, you must
identify the related application component, and then look for solutions related to such application.

Update: the SAP KBA 2763999 shows how to use the Enqueue Log Analyzer, which makes the analysis much easier and faster!

Example of analysis

1. The enqueue log was activated and deactivated as per the SAP note 1384191, while the enqueue overload situation was
happening;

2. All the “ENQLOG*” les from the “work” folder of the CI/ASCS instance were copied to the “/enqlogs” folder, at the
same Linux server at which the instance was running at;

3. Run the command “cd /enqlogs”;

4. Run the command “cat ENQLOG* | egrep -v "^**.*" | sort > all_logs.txt”;

5. Open the le “all_logs.txt” (e.g., “vi all_logs.txt”) and identify that manly the objects “OBJECT1” and “OBJECT2” are
listed:

6. Run the command “cat all_logs.txt | grep OBJECT1 | cat -n | tail -n 1” to see how many times was the OBJECT1 requested;

7. Run the command “cat all_logs.txt | grep OBJECT2 | cat -n | tail -n 1” to see how many times was the object OBJECT2
requested;

8. Once the requests related to these objects were identi ed as the cause of the enqueue overload, you can then use the
transaction SE12 in order to nd out the application area related to the objects;

9. Search for a solution under the component related to the application area found at step 8.

(...note that the below is only one line of the enqueue log...)

03/09 12:23:29 03/09 12:23:29 4832 Enque 1 2 0 E <OBJECT1> 0/01 <USER1>


20180309122301206410000100spwdfvml0123.. 20180309122301206413000100spwdfvml0123.. USR04 001I335443

(...note that the below is only one line of the enqueue log...)

03/09 12:23:35 4835 Enque 1 2 0 E <OBJECT2> 0/01 <USER2> 20180309121340508227000700spwdfvml0123..


20180309121340508230000700spwdfvml0123.. RFCDES FECSYSTEM00

More details on the enqueue log format can be found at the SAP note 5424.

Alternative procedure for SAP NetWeaver ABAP 7.4 and higher

As of SAP NetWeaver 7.4, it is possible to verify the ABAP call stack through the transaction SM50, by double clicking at the work
processes.

If you analyze many of the work processes running the report SAPLSENA and they share the same ABAP call stack, then the
ABAP call stack can be used to determine the application area without the need to collect and analyze the enqueue log.

Just verify the component owner of the reports, functions or classes below the report SAPLSENA in the ABAP call stack.

Related Content

Related SAP Notes/KBAs

1384191 - SM50: Many processes in status "holds ENQ"

5424 - Questions and answers regarding enqueue/locking

2126913 - ENQU: The enqueue log

This is custom documentation. For more information, please visit the SAP Help Portal 138
1/31/2024

2763999 - How to analyze enqueue log with enqueue log analyzer

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Enqueue performance analysis with enqt


Purpose

Explain the enqt usage to analyze the number of Enqueue operation in time interval.

Note: not supported NW 7.5X systems with ENSA2 enabled

Overview

The ENSA is a critical service to SAP Netweaver System. The service must perform fast operations in
order to attend the program requests in a timely manner.

However, there are overload situations where the service is severely affected by tons of requests in a
short time interval. In such situation, the performance became slow and it is possible to notice work
process with long runtime in SAPLSENA, SAPLSENT programs or even on hold due to ENQ.

See further details about over ow situations in Note 1384191 or even in this Expert Content.

The usage of enqt to monitor ENSA performance

The enqt tool has an opcode to perform statistics about operations during the time it is running.

The syntax is:

It is also possible to use an additional parameter after the number 8 that represents the time interval
that the statistics are analysed. If no option, this will occurs every second.

The output of this command is like following:

This is custom documentation. For more information, please visit the SAP Help Portal 139
1/31/2024

Count = Absolute counters (from enqueue statistics)


Actual = Operations per minute since the last update interval
10sec = Ops/min within last 10 seconds
1min 5min 15min = Ops/min in last 1/5/15 minutes

Following an example of an operations where it was created 100000 locks in a single request:

After locking these 10000, the following statistics show us the execution of 224250 operation in 10
seconds.

This number represent around 22 operations per ms. An ENSA is not able to perform such huge
number of operations during a long time because such action will overload the service due to the
design of the service.

Checking the last minute we can see a distinct behavior, 100019 operations. This means around 1.6
operation per ms, what is a different scenario.

The analysis above show us that there was a peak of request in a speci c time interval, however, this
ood of requests was not constant, otherwise the statistics of 1min, 5min or even 15min will also
demonstrate a huge number of requests per ms.

If your system is performing a huge number of requests during a long time, this means that the
enqueue is getting overload.

Related Content

Related Documents

Enqueue Client Handles Resource and Consumption

Enqueue overload - collecting and analyzing the enqueue log information

Related SAP Notes/KBAs

This is custom documentation. For more information, please visit the SAP Help Portal 140
1/31/2024

1384191 - SM50: Many processes in status "holds ENQ"

2013043 - Performance Problems with Enqueue Work Process

Enqueue security

Purpose

Cover security related topics of the Standalone Enqueue Server of the SAP NetWeaver kernel.

Overview

This WIKI page will list security related topics of the Standalone Enqueue, helping secure it.

For simplicity purposes, the Standalone Enqueue Server will be referred to as "ENSA", and "ENSA2" will be
used to refer to the Standalone Enqueue Server 2.

Restricting network connections (valid for: ENSA)

The parameter "enque/server/acl_ le" can be used to specify a le containing an Access Control List
(ACL).

With such list, it is possible to restrict the access (network connection) to the ENSA port.

The transaction RZ11 can be used to read the parameter's documentation, as well as verifying the
le's syntax.

Related Content

Related Documents

SAP Help page - Standalone Enqueue Server

SAP Help page - Standalone Enqueue Server 2

This is custom documentation. For more information, please visit the SAP Help Portal 141
1/31/2024

Related Notes

FAQ Enqueue Server

Client-Server Technology - Enqueue FAQ

Classical Central Instance or Standalone Enqueue

Finding the Replication Server (ERS) connected to the Enqueue service

How to check enqueue over ow

How to check if the lock entry should be deleted or not

How to check the locks in the enqueue table

How to check the owner of an Enqueue Object

How to check what is responsible for a lock table over ow

How to create an enqueue operations trace

How to limit the size of a developer trace le

Identify the program using an Enqueue Object

Monitoring Enqueue handles entries

This is custom documentation. For more information, please visit the SAP Help Portal 142
1/31/2024

Classical Central Instance or Standalone Enqueue

Classical Central Instance or Standalone Enqueue

There are three kinds of enqueue services in SAP system.


1) Classical Central Instance with the Message Server and Enqueue service running in a dialog instance. Usually a ENQ work
process is also available;
2) Standalone Enqueue Server (ENSA) where the Message Server and enqueue runs in a separated application server called
ASCSXX or SCSXX where XX is the instance number
3) Standalone Enqueue Server 2 (ENSA 2) that is the successor to the Standalone Enqueue Server (ENSA)

In order to check if your system runs a Classical CI or a Standalone Enqueue you can check in SM12 -> Extras -> Diagnosis

Classical CI:

Standalone Enqueue Server (ENSA):

This is custom documentation. For more information, please visit the SAP Help Portal 143
1/31/2024

Standalone Enqueue Server 2 (ENSA 2):


In the DEFAULT.p pro le:
enq/enable = TRUE

Finding the Replication Server (ERS) connected to the Enqueue service

Finding the Replication Server (ERS) connected to the Enqueue service?

The rst step is to nd out the replication port de ned by the parameter enque/encni/repl_port:

>sapcontrol -nr <instance number> -function ParameterValue enque/encni/repl_port


12.01.2016 16:42:07
ParameterValue
OK
50116

<instance number> represent the Enqueue instance number

The active ERS will keep connected to this TCP port constantly hence it is possible to identify the IP address connected to the
replication port:

> netstat -an | grep 50116


tcp 0 0 0.0.0.0:50116 0.0.0.0:* LISTEN
tcp 0 0 10.0.0.161:50116 10.0.0.21:63541 ESTABLISHED
unix 2 [ ACC ] STREAM LISTENING 2229917 /tmp/.sapstream50116

In this example the ERS is running in IP 10.0.0.21

How to check enqueue over ow

This is custom documentation. For more information, please visit the SAP Help Portal 144
1/31/2024

How to check enqueue over ow?


The enqueue lock table over ow occurs if the number of lock requests is bigger than the limit of the enqueue table. It is limited
by the parameter “enque/table_size”.
The reasons for an over ow are explained in the SAP Note 1565578 - Lock Table Over ow

If you are getting these messages in the syslog (SM21) or in the traces les you are facing an over ow in the enqueue table:

“Error locking table TBTCO”


“Lock table overflow”
“Internal lock administration error”
“internal error occurred in lock management”
“Enqueue: Transfer error while reading lock entries”
*** ERROR => EqSet1(): GetFreeEntry() failed, EntryTable overflow
*** ERROR => EqSet1(): GetFreeUser() failed, user table overflow

Copy this code!

The way to check if there is an over ow is via statistics of transaction SM12.


Go to “SM12 -> Extras -> Statistics” and you nd statistics as per:

If the "Maximum Fill Level" exceeds “Maximum Number of Lock…”, then you are facing an enqueue over ow.
The enqueue table is stored in the runtime memory, so its statistics are from the last start up.

You can also analyse the enqueue statistics is from Operating System level with the sapcontrol tool.

Sapcontrol is a client tool that connects to the sapstartsrv service and works with web methods. With the available function
“ EnqGetStatistic ” you can check the same statistics list as available in transaction SM12. The command syntax is:

sapcontrol -nr <NR> -function EnqGetStatistics


This is custom documentation. For more information, please visit the SAP Help Portal 145
1/31/2024

The <instance number> option must be the instance number of ENSA (standalone enqueue server) ABAP or JAVA. This function
does not work with classical CI where the enqueue service is running in a dialog instance.

Below is an example of the statistics collected with the sapcontrol:

To check the list of available functions, call the command sapcontrol and check the list of WEBMETHODS.

How to check if the lock entry should be deleted or not


There are enqueue lock entries which are older than several hours or days in sm12:

Select the lock entry and click the "Details" button, you can see detailed info of the lock entry:

This is custom documentation. For more information, please visit the SAP Help Portal 146
1/31/2024

From the detail screen, you can see "Lock Owner" (the lock owner ID), "Host name" (the host name where the lock was
requested) and "Date" (the timestamp of the lock request). Also, "Work Process" (the request was made by a program running
on work process #50). Normally, the work process who was process the "Enqueue" operation will also process "Dequeue"
operation, therefore, You can move to the instance on the "Host name", and open the developer trace le.

However, there is also special situation, to see any actions which involve this "Lock" widely, you can search:

SM51 -> Select the "Host name" -> Goto -> Server Name -> Information -> Trace Search, using Lock Owner ID as key word.

In this example, the Lock Owner ID is 20151104041433010000015001SISR1102A

From T_cd:st11, open the work process trace le, using the lock detail info ("Date", or "Lock Owner")to search again.

In this example, work process is 50 dev_w50, the "Lock Owner" is 20151104041433010000015001SISR1102A, and the timestamp
is around 2015 11 04 04:14:33

dev_w50:
=========================================
M Wed Nov 04 04:14:46 2015
M *** ERROR => no enqueue name set [thxxmsg.c 459]
M {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
M ***LOG GI0=> [enctrl.c 1250]
M ***LOG GI2=> [enctrl.c 1250]

This is custom documentation. For more information, please visit the SAP Help Portal 147
1/31/2024
E *** ERROR => ThToEnq(). rtc = -1 [enctrl.c 1252]
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
E *** ERROR => Enqueue: EnqTskhClient() errror 8 [enxxhead.c 3189]
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
M ***LOG GI0=> [enctrl.c 2395]
M ***LOG GI4=> [enctrl.c 2395]
E *** ERROR => DequeAll() failed. Returncode = 8 [enctrl.c 2397]
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
E *** ERROR => Owner = 20151104041433010000005001SISR1102A......................., ReturnCode = 8
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
E client: 000
E user: SAPSYS
E tcode:
E calling program: RSPOWP00
E dynpro no.: 2000
E dynpro group:
M *** ERROR => no enqueue name set [thxxmsg.c 459]
M {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
M ***LOG GI0=> [enctrl.c 1250]
M ***LOG GI2=> [enctrl.c 1250]
E *** ERROR => ThToEnq(). rtc = -1 [enctrl.c 1252]
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
E *** ERROR => Enqueue: EnqTskhClient() errror 8 [enxxhead.c 3189]
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
M ***LOG GI0=> [enctrl.c 2395]
M ***LOG GI4=> [enctrl.c 2395]
E *** ERROR => DequeAll() failed. Returncode = 8 [enctrl.c 2397]
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
E *** ERROR => Owner = 20151104041433010000015001SISR1102A......................., ReturnCode = 8
E {root-id=0050560202551EE5A0CBE3973538B0FC}_{conn-id=00000000000000000000000000000000}_0
E client: 000
E user: SAPSYS
E tcode:
E calling program: RSPOWP00
E dynpro no.: 2000
E dynpro group:

Copy this code!

The Lock Owner ID was appeared at Wed Nov 04 04:14:46 2015. You can nd that the Deque operation got failed. The program
actually tried to dequeu but failed. That's why the lock entry remained in SM12. This means that the lock can be manually
deleted now. The reason of the DequeAll failure is not the main point of this Wiki.

How to check the locks in the enqueue table

How to check the locks in the enqueue table?


The enqueue lock table can be analyzed in the transaction SM12. The lock table is available as per the following image;

This is custom documentation. For more information, please visit the SAP Help Portal 148
1/31/2024

It is also possible to check the locks in the table is from Operating System side with the enqt.

enqt pf=<instance profile> 20

The output is quite similar to SM12:

How to check the owner of an Enqueue Object

How to check the owner of an Enqueue Object

Enqueue Objects should be stored in the ABAP dictionary, therefore, you can go to:

Go to SE11 -> lock object -> <write the object> -> Display

Then we have the tab Attributes and Package. With this, it is possible to identify the owner of an object.

How to check what is responsible for a lock table over ow

How to check what is responsible for a lock table over ow?


The enqueue table over ow is logged in the le ENQHISOVR. As per note 746138 the le ENQHISOVR gives information about
the username and the program responsible for the over ow. The le resides in the work folder of enqueue server
(/usr/sap/<SID>/<INSTANCE>/work).

This is custom documentation. For more information, please visit the SAP Help Portal 149
1/31/2024
746138 Analyzing lock table over ows

Independent on the type of enqueue server (classical or standalone), it creates a le named ENQHISOVR in the instance work
folder and logs table over ows there.

It is possible to verify the over ow history from “SM12 -> Top Capacity Used -> History”. You will get a list as per:

Further information is found in the Details menu as you can see below.

This is custom documentation. For more information, please visit the SAP Help Portal 150
1/31/2024

How to create an enqueue operations trace

How to create an enqueue operations trace?


This section explains a way to create an enqueue trace to analyze all lock operations in an ENSA (standalone enqueue server)
instance for ABAP and JAVA enqueue service.
To check enqueue operations for an ABAP stack, follow the note 125041 and create the trace running transaction SM12.

125041 Analysis of enqueue errors with enqueue logging


2126913 -ENQU: The enqueue log

If you are running a Java Application Server, the enqueue service is handled by an ENSA (standalone enqueue server) named
SCS<NR>. To create the enqueue trace for a Java enqueue service you have to run it from Operating System level.
To create the enqueue trace there is a tool called ENQT that is located in the instance exe folder
(/usr/sap/<SID>/<instance>/exe).
This is the syntax to enable the trace with ENQT:

enqt pf=< ENSA instance profile path> 81 1

To disable the trace this is the command:

enqt pf=< ENSA instance profile path> 81 2

The same process works for ABAP standalone enqueue server (ENSA 1) named ASCS<NR>.

This is custom documentation. For more information, please visit the SAP Help Portal 151
1/31/2024
This command enables a trace for the enqueue’s operations, for this reason it is recommended to avoid a trace generation
which is longer than 30 seconds which may cause performance problems.
To analyze these enqueue operations check le ENQLOG99 in the instance work folder (/usr/sap/<SID>/<instance>/work).
In the case of a classic enqueue server, each work process on the Central Instance writes its own enqueue log to the le
ENQLOGxx.
For further information on this trace see note 125041.

Identify the program using an Enqueue Object

Identify the program using an Enqueue Object


Enqueue Objects should be stored in the ABAP dictionary and, therefore, it is possible to identify all programs/classes using a
speci c object.

Go to SE11 -> lock object -> <write the object >-> Utilities -> where-used

The return is the list of all callers of this object.

Monitoring Enqueue handles entries

Monitoring Enqueue handles entries

A client (work process for example) request to the ENSA a connection and this is received by the Enqueue Listener
Thread (dev_enqlisten trace) and the listener forward this connection to the Enqueue IO Thread (dev_enqio_X traces).
Is is possible to con gure multiple IO threads to attend clients with the parameter enque/server/threadcount. Usually is
between 1 and 4.

If the enque/server/max_clients is set to 2000, for example, and there are 4 IO threads available, each thread will attend 500 +
1 clients.
If 2 IO thread, 1000 + 1 each one and so on.

It is possible to monitor the maximum number of clients already attended simultaneously using the ensmon tool from OS level.
The syntax is:

ensmon -H <hostname> -I <instance number> 7

The option 7 show "information about all Enqueue Server threads" hence we can see useful information. The output of
separated in 4 sessions:
- Information about ADM thread
- Information about listen thread
- Information about replication thread
- Information about worker thread

The last one is the focus of this post. For each IO thread we see:

IO thread 1:
[...]
Max clients:501
[...]
Client count:12
This is custom documentation. For more information, please visit the SAP Help Portal 152
1/31/2024
IO thread 2:
[...]
Max clients:501
[...]
Client count:12

In such example the parameters are:


enque/server/max_clients 1000
enque/server/max_clients 2

Therefore, the "Client count" show us the maximum number of simultaneous clients already attended to each IO Thread since
the start up.

In case of a shortage of handles, the number of "Client count" reach the number of "Max clients". This is a way to monitor
Enqueue handles in order to avoid a fail.

Monitoring Enqueue Resources in the CCMS Infrastructure

Purpose

The purpose of this page is to explain how the enqueue of an SAP instance can be monitored through the CCMS infrastructure.

Overview
This page provides details about the CCMS monitoring infrastructure, speci cally focused in the enqueue resources monitoring,
providing details about how to nd the monitoring functions and how to con gure them accordingly.

CCMS Transaction RZ20


The CCMS monitoring infrastructure, a solution within SAP NetWeaver, centrally monitors any IT environments - from individual
systems through networked SAP NetWeaver solutions, to complex IT landscapes incorporating several hundred systems. In this
section, you learn about the Alert Monitor (transaction RZ20) and its monitoring functionalities.

All the enqueue monitoring functionalities can be found in transaction RZ20, by following the below path.

RZ20 transaction → SAP CCMS Monitor Templates → Enqueue

This is custom documentation. For more information, please visit the SAP Help Portal 153
1/31/2024

Monitoring Enqueue Resources


The CCMS Infrastructure allows you to monitor the enqueue resources available in the SAP instance by using the transaction
RZ20. The below MTEs are available in order to monitor different enqueue resources, they are:

Enqueue Requests - Number of lock requests. This number is measured per second.
Enqueue Request Rejects - Number of rejected lock requests. This number is measured per second.
Enqueue Request Errors - Number of errors that occurred during lock requests. This number is measured per second.
Dequeue Requests - Number of release requests (dequeue). This number is measured per second.
Dequeue Request Errors - Number of errors that occurred when releasing locks. This number is measured per second.
This is custom documentation. For more information, please visit the SAP Help Portal 154
1/31/2024
Dequeue All Requests - Release of all locks for a LUW (Logical Unit of Work), for example at the end of a LUW. This number is
measured per second.
Clean Up Requests - Number of releases of all locks for an application server, for example at shutdown or startup. This number
is measured per second.
Backup Requests - This number is measured per second.
Reporting Requests - This number is measured per second.
Owner Names - Maximum number of lock owner IDs that the lock table can include. Lock owner IDs are assigned to a user
context or an update request.
Owner Names Peak Utilization - Maximum number of lock owners that have been in the lock table concurrently up to now
Owner Names Actual Utilization - Current number of lock owners in the lock table
Granule Arguments - Maximum number of different lock arguments that the lock table can include. Locks with different lock
owners or different lock modes, but the same lock argument occupy one entry.
Granule Arguments Peak Utilization - Highest number of different lock arguments that have been in the lock table concurrently
so far
Granule Arguments Actual Utilization - Current number of different lock arguments in the lock table
Granule Entries - Maximum number of elementary locks that the lock table can include. Each elementary lock occupies one
entry.
Granule Entries Peak Utilization - Highest number of elementary locks that have been in the lock table concurrently so far
Granule Entries Actual Utilization - Current number of elementary locks in the lock table
Update Queue Peak - Maximum number of open update requests with locks so far
Update Queue Actual - Current number of open update requests with locks
Total Lock Time - Total time used for lock operations in the critical path of the lock table
Recent Lock Time (per minute) - Time used for lock operations in the critical path of the lock table in seconds / 1 minute.
Total Lock Wait Time - Total time spent on the lock server-side
Recent Lock Wait Time (per minute) - Wait time of parallel processes before entry into the critical path of the lock table in
seconds / 1 minute
Total Server Time - Total time spent on the lock server-side
Recent Server Time (per minute) - Total time spent on the lock server-side in seconds / 1 minute
Runtime of Data Collector - Node to which the data collection method is assigned. The runtime of each data collection is
monitored using this node.

For the Enqueue statistics that are monitored by the above MTEs in transaction SM12, you can see them in the SAP system by
using the transaction SM12 -> Extras -> Statistics, as you can see below.

This is custom documentation. For more information, please visit the SAP Help Portal 155
1/31/2024

Monitoring Scenarios Examples


1. Using the Enqueue Requests MTE, you can monitor the number of enqueue operations per second in your system. This is
particulary useful when you have found out how many enqueue operations per second your system can handle (since this
measurement depends on CPU and network, for instance). The enqueue overload situation described in the SAP
Note 1384191 can be avoided or controlled in time with this monitoring scenario.

2. Using the Granule Entries Actual Utilization MTE you can monitor the number of lock entries in the lock table of your
system. This monitoring scenario can assist you to prevent or detect prematurely a lock table over ow situation, as per
described in the SAP Note 1565578. The enqueue lock table over ow situation can severely impact the operation of an
SAP system. It occurs when the maximum size of the lock table is reached.

CCMS Auto-Reaction Methods

In the CCMS monitoring infrastructure, you can set up any MTE available in transaction RZ20 to automatically trigger email
alerts in case the values reported by them meet the threshold values de ned. The next chapters will explain more details about
the con guration process to achieve this.

De ning Threshold Values for the Monitored MTEs

This is custom documentation. For more information, please visit the SAP Help Portal 156
1/31/2024
The rst step is to de ne which MTEs you want to monitor in transaction RZ20, with this, you can start to set up their
thresholds accordingly, so you are alerted in the correct scenario. Follow the Adjusting the Threshold Values chapter from
the Con guring Alert Triggering and Alert Reactions SAP online help documentation for a detailed step by step on how to
achieve this.

De ning and Assigning Auto-Reaction Methods for the Monitored MTEs

The second step to achieve this con guration is to de ne and assign the auto-reaction methods to the desired MTEs in the
CCMS monitoring infrastructure. In order to perform this con guration, follow the steps mentioned in the De ning an
Automatic Alert Noti cation SAP online help documentation.

This is custom documentation. For more information, please visit the SAP Help Portal 157
1/31/2024

Alternatively, you can choose to de ne Central auto-reaction methods, which will trigger the email alert from the central system
instead of the local system. For this con guration, refer to the SAP online help Setting Up Central Auto-Reaction Methods for
more details.

Displaying MTE Performance Information Graphically

Withing the CCMS transaction RZ20, you can display the performance values shown by an speci c MTE as a graphic, allowing
you to make faster and more accurate analysis based on the reported data. In order to display the MTE values as a graphic,
follow the below steps.

1. Select the Performance MTE in RZ20.

2. Click in the Display Details button.

3. Select whether you want to display the last 30 minutes or 24 hour value.

4. Click in the "Display performance values graphically" button.

5. The graphic is nally shown in the below format.

This is custom documentation. For more information, please visit the SAP Help Portal 158
1/31/2024

Related Content

Related Documents

De ning an Automatic Alert Noti cation

Con guring Alert Triggering and Alert Reactions

Setting Up Central Auto-Reaction Methods

Related SAP Notes/KBAs

SAP Note 1384191 - SM50: Many processes in status "holds ENQ"

SAP Note 1565578 - Lock Table Over ow

SAP Note 939616 - CCMS auto-reactions: Help with troubleshooting

SAP Note 176492 - Automatic email when an alert occurs (RZ20)

Troubleshooting for Enqueue Failover in ASCS with ERS

Purpose

How to check whether the failover is successful or not

How to check the preconditions

Precondition 01: Check whether there is an active ERS in the system's landscape

Precondition 02: Check the active ERS Host

This is custom documentation. For more information, please visit the SAP Help Portal 159
1/31/2024

Precondition 03: Check whether enqueue replication table is shared memory exists or not

Some additional things

01: Where to start the ERS?

02: At the time the new ENSA starts and gets the locks from ERS, the ERS will be shut down or restarted.

03: How the ERS instance know the ASCS instance number?

04: About OS Environment SAP_NI_CACHE_DISABLED

Related Documents

Purpose

The purpose of this document is to assist with enqueue server(ENSA) failover issues with ERS. To get
enqueue replication table from ERS, there are some preconditions.

1- There is an active ERS in the system's landscape.


2- The new ASCS is started at the active ERS hosts.
3- The enqueue replication table is stored in the shared memory. This shared memory still exists
when the new ASCS is started.

This page will show how to check whether the failover is successful or not, and how to check the
preconditions above if the failover failed.

Please review the links in "Related Documents" part for the background knowledge if need.

How to check whether the failover is successful or not

There are detailed steps about how to test the enqueue failover in the following URL.If you passes the
tests in this URL, it means that the enqueue failover nishs successfully.
http://help.sap.com/saphelp_nw74/helpdata/en/47/e8ee429bd54231e10000000a421937/content.htm

Meanwhile, from the trace's point of view, if the failover nishes successfully, the following trace will
be shown in dev_enqsrv of the new started ASCS instance.
It also shows that after the restarted enqueue server get the locks, the shared memory segment used
to save the replication table is deleted.

# /usr/sap/<SID>/ASCS<inst-no>/work/dev_enqsrv

---------------------------------------------------
trc le: "dev_enqsrv", trc level: 1, release: "742"
---------------------------------------------------
......

This is custom documentation. For more information, please visit the SAP Help Portal 160
1/31/2024

[Thr 139696690013984] Mon Mar 9 16:41:19 2015


[Thr 139696690013984] CGROUPS: changing prio of pid 20376 to high
[Thr 139696690013984] CGROUPS: disabled
[Thr 139696690013984] EnqInitCleanupServer: Shm of enqueue table (rc = 3) does not exist,
nothing to clean up
[Thr 139696690013984] InitReplHooks: Tracing enqueue and replication statistics is switched
off.
[Thr 139696690013984] initialize_global: Enqueue server started with replication functionality
[Thr 139696690013984] Enqueue: EnqMemStartupAction Utc=1425890479, attach_only=0
[Thr 139696690013984] EnqLockTableSizeCalculate: session quota = 100%
[Thr 139696690013984] EnqLockTableCreate: create lock table (size = 65536000)
[Thr 139696690013984] EnqLockTableMapToLocalContext: enque/use_pfclock2 = FALSE
[Thr 139696690013984] ShadowTable:attach: ShmCreate(,SHM_ATTACH,) -> 7f0d704cf000
[Thr 139696690013984] EnRepClass::getReplicaData: found old replication table with the
following data:
[Thr 139696690013984] Line size:744, Line count: 56415, Failover Count: 0
[Thr 139696690013984] EnqId: 1425890266/16826, last stamp: 1/425890432/8000
[Thr 139696690013984] Byte order tags: int:1159934994 char:Z
[Thr 139696690013984] Enqueue checkpointing: start restoring entries. Utc=1425890479
[Thr 139696690013984] Delete replication table which was attached by the enqueue server
[Thr 139696690013984] ShadowTable:destroy: ShmCleanup( SHM_ENQ_REP_SHADOW_TBL)
[Thr 139696690013984] enque/backup_ le disabled in enserver environment

[Thr 139696690013984] Mon Mar 9 16:41:20 2015


[Thr 139696690013984] ***LOG GEZ=> Server start [encllog.cpp 550]
[Thr 139696690013984] Enqueue server start with instance number 01

Otherwise if the new enqueue server does not get the locks from ERS, errors like following will be
shown in dev_enqsrv of the new started ASCS instance.

# /usr/sap/<SID>/ASCS<inst-no>/work/dev_enqsrv
[Thr 140694977873696] Listen successful on port/service sapdp01

[Thr 140694977873696] Mon Mar 9 16:37:45 2015


[Thr 140694977873696] CGROUPS: changing prio of pid 16826 to high
[Thr 140694977873696] CGROUPS: disabled
[Thr 140694977873696] EnqInitCleanupServer: Shm of enqueue table (rc = 3) does not exist,
nothing to clean up
[Thr 140694977873696] InitReplHooks: Tracing enqueue and replication statistics is switched

This is custom documentation. For more information, please visit the SAP Help Portal 161
1/31/2024

off.
[Thr 140694977873696] initialize_global: Enqueue server started with replication functionality

[Thr 140694977873696] Mon Mar 9 16:37:46 2015


[Thr 140694977873696] Enqueue: EnqMemStartupAction Utc=1425890266, attach_only=0
[Thr 140694977873696] EnqLockTableSizeCalculate: session quota = 100%
[Thr 140694977873696] EnqLockTableCreate: create lock table (size = 65536000)
[Thr 140694977873696] EnqLockTableMapToLocalContext: enque/use_pfclock2 = FALSE
[Thr 140694977873696] ShadowTable:attach: ShmCreate - pool doesn't exist
[Thr 140694977873696] EnqRepRestoreFromReplica: failed to attach to old replication table:
rc=-1
[Thr 140694977873696] enque/backup_ le disabled in enserver environment

[Thr 140694977873696] Mon Mar 9 16:37:47 2015


[Thr 140694977873696] ***LOG GEZ=> Server start [encllog.cpp 550]
[Thr 140694977873696] Enqueue server start with instance number 01

One more remark, the trace "ShadowTable:attach: ShmCreate ..." in dev_enqsrv is only shown when
ERS is installed. If there is no ERS, the dev_enqsrv looks like following.

# /usr/sap/<SID>/ASCS<inst-no>/work/dev_enqsrv

---------------------------------------------------
trc le: "dev_enqsrv", trc level: 1, release: "742"
---------------------------------------------------
sysno 01
sid QSB
systemid 390 (AMD/Intel x86_64 with Linux)
relno 7420
patchlevel 0
patchno 116
intno 20020600
make multithreaded, Unicode, 64 bit, debug
pid 17632

[Thr 140227397859104] Fri Aug 7 09:40:14 2015


[Thr 140227397859104] pro le /usr/sap/QSB/SYS/pro le/<SID>_ASCS<inst-no>_<your-
hostname>
[Thr 140227397859104] hostname <your-hostname>
[Thr 140227397859104] Listen successful on port/service sapdp01

This is custom documentation. For more information, please visit the SAP Help Portal 162
1/31/2024

[Thr 140227397859104] Fri Aug 7 09:40:15 2015


[Thr 140227397859104] CGROUPS: changing prio of pid 17632 to high
[Thr 140227397859104] CGROUPS: disabled
[Thr 140227397859104] EnqInitCleanupServer: Shm of enqueue table (rc = 3) does not exist,
nothing to clean up
[Thr 140227397859104] initialize_global: Enqueue server started WITHOUT replication
functionality
[Thr 140227397859104] Enqueue: EnqMemStartupAction Utc=1438933215, attach_only=0
[Thr 140227397859104] EnqLockTableSizeCalculate: session quota = 100%
[Thr 140227397859104] EnqLockTableCreate: create lock table (size = 65536000)
[Thr 140227397859104] EnqLockTableMapToLocalContext: enque/use_pfclock2 = FALSE

[Thr 140227397859104] Fri Aug 7 09:40:16 2015


[Thr 140227397859104] ***LOG GEZ=> Server start [encllog.cpp 550]
[Thr 140227397859104] Enqueue server start with instance number 01

How to check the preconditions


Precondition 01: Check whether there is an active ERS in the system's landscape

Before the failover, you could see the following traces in dev_enqrepl in the old ASCS work
folder. These traces means that there is an active ERS who is doing the backup work.
Otherwise, the enqueue locks could not be retrieved during the failover.

# /usr/sap/<SID>/ASCS<inst-no>/work/dev_enqrepl
---------------------------------------------------
trc le: "dev_enqrepl", trc level: 1, release: "742"
---------------------------------------------------
......
[Thr 139695737961888] Mon Mar 9 16:41:20 2015
[Thr 139695737961888] pro le /usr/sap/SM2/SYS/pro le/<SID>_ASCS<inst-no>_<your-
hostname>
[Thr 139695737961888] hostname <your-hostname>
[Thr 139695737961888] IOListener::Listen: listen on port 50116 (addr 0.0.0.0)
[Thr 139695737961888] will sleep maximal 333 ms while waiting for response
[Thr 139695737961888] will sleep max 5000 ms when idle
[Thr 139695737961888] will wait maximal 1000 ms for input

[Thr 139695737961888] Mon Mar 9 16:41:40 2015


[Thr 139695737961888] A newly started replication server has connected
[Thr 139695737961888] ***LOG GEZ=> repl. activ [encllog.cpp 550]

This is custom documentation. For more information, please visit the SAP Help Portal 163
1/31/2024

Precondition 02: Check the active ERS Host

From the ERS's point of view, If ERS connects ASCS successfully, the following traces will be shown in
dev_enrepsrv in ERS work folder.

# /usr/sap/<SID>/ERS<inst-no>/work/dev_enrepsrv
---------------------------------------------------
trc le: "dev_enrepsrv", trc level: 1, release: "742"
---------------------------------------------------
......
[Thr 140349019186976] Mon Mar 9 16:41:40 2015
[Thr 140349019186976] Replication server start with instance number 01
[Thr 140349019186976] Enqueue server on host <your-hostname>, IP-addr <your-ip-address>,
port 50116
[Thr 140349019186976] ShadowTable:create: ShmCreate(,SHM_CREATE,len=43101208) ->
7fa57da05000
[Thr 140349019186976] Connected to Enqueue Server and created repl. table with 56415 lines
[Thr 140349019186976] EnStateTransferEnqToRep::process: transaction stamp (end_trans): 1
425890500 1000!
[Thr 140349019186976] EnStateTransferEnqToRep::process: Transaction has nished:4, process
request and loop over fragments

You could have one or more ERS in you landscape. But there will be only one active ERS instance at
one time. If the ASCS is failed over to non-active ERS host, the locks could not be retrieved.
The failover behavior is controled by your HA software.

In the non-active ERS host, you will see the following traces in dev_enrepsrv in ERS instance.

# /usr/sap/<SID>/ERS<inst-no>/work/dev_enrepsrv
......
[Thr 140231835920160] Fri Jul 31 17:09:07 2015
[Thr 140231835920160] Replication server start with instance number 01
[Thr 140231835920160] Enqueue server on host CNPVGLLSSCSM2, IP-addr 10.58.133.115, port
50116
[Thr 140231835920160] ***LOG Q0I=> NiPConnect2: <ASCS-IP-Address>:50116: connect (111:
Connection refused) [/source/bas/742_COR/src/base/ni/nixxi.cpp 3324]
[Thr 140231835920160] *** ERROR => NiPConnect2: SiPeekPendConn failed for hdl 1/sock 9
(SI_ECONN_REFUSE/111; I4; ST; <ASCS-IP-Address>:50116) [nixxi.cpp 3324]
[Thr 140231835920160] *** ERROR => EncNiConnect: unable to connect (NIECONN_REFUSED).
See SAP note 1943531 [encomi.c 442]
[Thr 140231835920160] *** ERROR => RepServer: main: no connection to Enqueue Server
(rc=-7; ENC_ERR_REFUSED) => try again in 400 ms (see SAP note 1943531) [enrepserv.cp 776]
This is custom documentation. For more information, please visit the SAP Help Portal 164
1/31/2024

If the non-active ERS change to active status, the following trace will be shown after
NIECONN_REFUSED.

# /usr/sap/<SID>/ERS<inst-no>/work/dev_enrepsrv
......
[Thr 140231835920160] Fri Jul 31 17:09:33 2015
[Thr 140231835920160] ***LOG Q0I=> NiPConnect2: <ASCS-IP-Address>:50116: connect (111:
Connection refused) [/source/bas/742_COR/src/base/ni/nixxi.cpp 3324]
[Thr 140231835920160] *** ERROR => NiPConnect2: SiPeekPendConn failed for hdl 7/sock 9
(SI_ECONN_REFUSE/111; I4; ST; <ASCS-IP-Address>:50116) [nixxi.cpp 3324]
[Thr 140231835920160] *** ERROR => EncNiConnect: unable to connect (NIECONN_REFUSED).
See SAP note 1943531 [encomi.c 442]
[Thr 140231835920160] *** ERROR => RepServer: main: no connection to Enqueue Server
(rc=-7; ENC_ERR_REFUSED) => try again in 20000 ms (see SAP note 1943531) [enrepserv.cp
776]

[Thr 140231835920160] Fri Jul 31 17:09:53 2015


[Thr 140231835920160] ShadowTable:create: ShmCreate(,SHM_CREATE,len=43101208) ->
7f8a34f3f000
[Thr 140231835920160] Connected to Enqueue Server and created repl. table with 56415 lines
[Thr 140231835920160] EnStateTransferEnqToRep::process: transaction stamp (end_trans): 1
438333793 0!
[Thr 140231835920160] EnStateTransferEnqToRep::process: Transaction has nished:4, process
request and loop over fragments

Precondition 03: Check whether enqueue replication table is shared memory exists
or not

The replication table is saved in the shared memory. The shared memory key number is 66 of ASCS
instance number.
Assume your ASCS instance number is 01, then running showipc <ASCS-inst-no> in the active ERS
host, shared memory key 66 for enqueuer replication table will be shown as following.

> showipc 01 | grep 66


OsKey: 10166 0x000027b6 Shared Memory Key: 66 Size: 43101208 41.1 MB Att: 1 Owner:
sm2adm Perms: 740

The suitable instance number could also be checked by dev_enrepsrv in ERS work folder as following.

This is custom documentation. For more information, please visit the SAP Help Portal 165
1/31/2024

# /usr/sap/<SID>/ERS<inst-no>/work/dev_enrepsrv
---------------------------------------------------
trc le: "dev_enrepsrv", trc level: 1, release: "742"
---------------------------------------------------
......
[Thr 140349019186976] Mon Mar 9 16:41:40 2015
[Thr 140349019186976] Replication server start with instance number 01
[Thr 140349019186976] Enqueue server on host <your-hostname>, IP-addr <your-ip-address>,
port 50116
[Thr 140349019186976] ShadowTable:create: ShmCreate(,SHM_CREATE,len=43101208) ->
7fa57da05000
[Thr 140349019186976] Connected to Enqueue Server and created repl. table with 56415 lines
[Thr 140349019186976] EnStateTransferEnqToRep::process: transaction stamp (end_trans): 1
425890500 1000!
[Thr 140349019186976] EnStateTransferEnqToRep::process: Transaction has nished:4, process
request and loop over fragments

If the replication table is deleted, the locks could not be retrieved.

Below are some common issues that can damage the share memory before the ENSA connect to it.
Please avoid them during the failover.

1 - Executing cleanipc against ASCS instance number on active ERS host


For example, during failover from host A to host B(The active ERS host), cleanipc <ASCS-inst-
no> on host B will delete the replication table in memory.
2 - ERS was shut down too early on windows
Check Replication and Failover@NW74 online help for more information.
3 - ipcrm command at linux.

Some additional things


01: Where to start the ERS?

It is common situation customers keep the ERS UP and running in the same host where ENSA is UP
and running. It does not make sense to have the ERS UP and running in the same ENSA host. This
does not cause problems, however the ERS will consume resource, therefore, the ERS in the host
where ENSA is UP and running should keep down.

On the other hand, the host where ENSA is UP and running would not be able to work anymore for
some errors. In such case the new ENSA could only be started on another host. This is also a good
reason to start ERS to backup the enqueue locks in another host.

This is custom documentation. For more information, please visit the SAP Help Portal 166
1/31/2024

02: At the time the new ENSA starts and gets the locks from ERS, the ERS will be
shut down or restarted.

Whether the ERS will be shut down or restarted, it depends on the setting in your ERS pro le. Below
are two examples.

# /usr/sap/<SID>/ERS<ERS-inst-no>/pro le/<SID>_ERS<ERS-inst-no>_<ERS-hostname>

# The ERS will be restarted by the following setting.


Restart_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)

# The ERS will be shut down by the following setting.


Start_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)

03: How the ERS instance know the ASCS instance number?

The ASCS instance number is con gured at the ERS pro le. Below is an example of ERS pro le which
assumes that the ASCS instance number is 01.

# /usr/sap/<SID>/ERS<ERS-inst-no>/pro le/<SID>_ERS<ERS-inst-no>_<ERS-hostname>

SCSID = 01
enque/serverinst = $(SCSID)
Restart_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)

04: About OS Environment SAP_NI_CACHE_DISABLED

During a failover, a network change is also taken. If you nd out that any SAP process caches the
wrong network information, you could use OS environment SAP_NI_CACHE_DISABLED=1 to disable
the cache. See the following note for more information.

SAP Note 1425520 - Disable NI cache for host and service names

Related Documents

Please also review the following SAP Online Help for more information.

High Availability with the Standalone Enqueue Server

Replication and Failover

Monitoring the Lock Table at Failover

Unable to render {include} The included page could not be found.


This is custom documentation. For more information, please visit the SAP Help Portal 167
1/31/2024

When are the enqueue locks released

Purpose
Deeper explanation of how the locks are set and released, and how to recognize if the situation where the locks remain is
caused by the enqueue service or the application being executed.

Setting locks

At the start of an SAP transaction, two owners are always created who can request locks: the dialog owner and the update
task. The application uses the _SCOPE parameter to specify which of the two owners should actually own the lock, and therefore
de nes the lock duration with respect to an SAP LUW. When the update task is called, it inherits the lock.

Releasing locks
Application side

The COMMIT WORK statement is executed at the end of the transaction. The lock is removed in the majority of the cases after
it, but this depends on the application, as it is responsible for setting the _SCOPE parameter.

Locks remains set until you either call the corresponding DEQUEUE function module, or close the transaction that executes an
implicit DEQUEUE_ALL. The application is responsible for calling the dequeue function, so that's why it’s always recommended
to check these remaining locks-problems further with the application team. Generating an enqueue logging could be useful to
check which locks are generated, when and for which objects. More information on SAP Note 2126913.

2126913 - "ENQU: The enqueue log".

Taskhandler side

The session frees all its resources even if the application did not release them explicitly. This means that if some locks are left by
the application, they will be released automatically by the task handler after rdisp/gui_auto_logout

seconds. The taskhandler always send DequeAll during deletion of sessions.

Possible causes

We have to take into account that the timestamp of the lock correspond with the transaction execution not to the time when
the log was set. Does the lock remain beyond rdisp/gui_auto_logout

SAP Note 43614 describes the different scenarios an possible solutions.

43614 - Lock entries remain after end of session

If the problem is that the lock is hold for a long time we should take into account that this is normal as the application is being
executed. It will be needed to check if the transaction is still running. This could be checked in SM50 or in case of update records
in SM13 transactions. Quite big selection criteria or dialog transaction going over different screens before the application
performs the COMMIT WORK are the most common ones.

Related Content
This is custom documentation. For more information, please visit the SAP Help Portal 168
1/31/2024

Related Documents

SCOPE Parameter (1)

SCOPE Parameter (2)

Relation DB-SAP lock

Related SAP Notes/KBAs

43614 - Lock entries remain after end of session

5424 - Questions and answers regarding enqueue/locking

2126913 - ENQU: The enqueue log

2322108 - Update requests stay in initial status, enqueue lock entries remain after end of
session

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAP High Availability


This space intends to concentrate documents about High Availability information in SAP

High Availability Articles

High Availability with Standalone Enqueue Server 2

High Availability Certi cation

SAP NetWeaver High Availability Cluster Certi cation

Certi ed HA-Interface Partners

High Availability Partner Information

Important Resources about the HA-Interface Certi cation for Partners

Tools

This is custom documentation. For more information, please visit the SAP Help Portal 169
1/31/2024

High Availability Test Tool

Certi ed HA-Interface Partners

SAP Application Server High Availability Interface Certi cation

The table below contains all SAP partners in alphabetical order with their High Availability solution that have been certi ed
within the
SAP Application Server High Availability Interface Certi cation. For details of the certi cation please see the general
High Availability Partner Information page or the HA-Interface Certi cation page of the International Certi cation Center.

It contains:

Partner Name: Partner Name as written in the certi cation

HA Solution Name: The name of the High Availability partner solution as written in
the certi cation

Certi ed Operating Systems: A list of certi ed Operating Systems with the used
processor type

Supported Databases: A list of supported databases as named by the partner, but


not ver ed by SAP. The underlying link has been provided by the partner for details

Support Note: An SAP note number and link to explain the existing support agreements
with SAP for the certi ed High Availability Solution

Certi ed until: A date that speci es the end date of the validity of the certi cation

This is custom documentation. For more information, please visit the SAP Help Portal 170
1/31/2024

Partner Name HA Solution Certified Supported Databases Support Certification Certified


Name Operating * (Link) Note Version until
Systems

Hewlett HPE Serviceguard Linux HANA DB 2.0, HANA 1779681 S/4-HA- 04. Aug.
Packard 12.40 on DB 1.0 CLU 1.0 2022
Enterprise Co. Advanced/Enterprise x86_64

Hewlett HPE Serviceguard Linux SAP ASE, Oracle, IBM 1779681 NW-HA- 13. Aug.
Packard 12.40 on DB2, MaxDB, HANA CLU_750 2022
Enterprise Co. Advanced/Enterprise x86_64 DB

Hewlett HPE Serviceguard HP-UX MaxDB, Oracle, IBM 1779681 NW-HA- 26. Nov.
Packard A.11.20 on DB2, Sybase ASE CLU_750 2022
Enterprise Co. IA64

Hewlett Serviceguard 12 Linux SAP ASE, Oracle, IBM 1779681 NW-HA- 27. Oct.
Packard Adv/Ent/Pre & on DB2, MaxDB, HANA CLU_750 2024
Enterprise Co. Flex Storage x86_64 DB

Hewlett Serviceguard 12 Linux HANA DB 2.0 1779681 S/4-HA- 28. Oct.


Packard Adv/Ent/Pre & on CLU-1.0 2024
Enterprise Co. Flex Storage x86_64

Hewlett HPE Serviceguard Linux SAP ASE, Oracle, IBM 1779681 NW-HA- 31. Jan.
Packard HA E5 and HADR on DB2, MaxDB, HANA CLU 7.50 2026
Enterprise Co. E7 for Linux with x86_64 DB
SAP Add-on

Hewlett HPE Serviceguard Linux HANA DB 2.0 1779681 S/4-HA- 30. Jan.
Packard HA E5 and HADR on CLU 1.0 2026
Enterprise Co. E7 for Linux with x86_64
SAP Add-on

NEC EXPRESSCLUSTER Linux HANA DB 2.0 1768213 S/4-HA- 04. Aug.


Corporation X 5.x on CLU 1.0 2025
x86_64

NEC EXPRESSCLUSTER Windows HANA DB 2.0 1841837 S/4-HA- 24. Apr.


Corporation X 5.x Server CLU 1.0 2026

NEC EXPRESSCLUSTER Windows HANA DB 2.0 1841837 S/4-HA- 28. Feb.


Corporation X 4.1 Server CLU 1.0 2023

Oracle Oracle Solaris Solaris Oracle, MaxDB, 1779423 NW-HA- 15. Apr.
DeutschlandB.V. Cluster 4.x on Sybase ASE CLU_750 2022
& Co. KG SPARC
(additional link)

Red Hat, Inc. Red Hat Linux HANA DB 2.0 1908655 S/4-HA- 22. Apr.
Enterprise Linux 8 on CLU 1.0 2023
for SAP solutions x86_64

Red Hat, Inc. Red Hat Linux HANA DB 2.0 1908655 S/4-HA- 22. Apr.
Enterprise Linux 8 on CLU 1.0 2023
for SAP solutions Power
LE

Red Hat, Inc. Red Hat Linux Oracle, IBM DB2, SAP 1908655 NW-HA- 30. Apr.
Enterprise Linux 8 on ASE, SAP DB/MaxDB, CLU_750 2023
for SAP solutions x86_64 SAP HANA DB

Red Hat, Inc. Red Hat Linux Oracle, IBM DB2, SAP 1908655 NW-HA- 30. Apr.
This is custom documentation. For more information, please visit the SAP Help Portal 171
1/31/2024
Enterprise Linux 8 on ASE, SAP DB/MaxDB, CLU_750 2023
for SAP solutions Power SAP HANA DB
LE

Red Hat, Inc. Red Hat Linux HANA DB 2.0 1908655 S/4-HA- 14. Aug.
Enterprise Linux 9 on CLU 1.0 2026
for SAP solutions x86_64

Red Hat, Inc. Red Hat Linux HANA DB 2.0 1908655 S/4-HA- 14. Aug.
Enterprise Linux 9 on CLU 1.0 2026
for SAP solutions Power
LE

Red Hat, Inc. Red Hat Linux Oracle, IBM DB2, SAP 1908655 NW-HA- 14. Aug.
Enterprise Linux 9 on ASE, SAP DB/MaxDB, CLU_750 2026
for SAP solutions x86_64 SAP HANA DB

Red Hat, Inc. Red Hat Linux Oracle, IBM DB2, SAP 1908655 NW-HA- 14. Aug.
Enterprise Linux 9 on ASE, SAP DB/MaxDB, CLU_750 2026
for SAP solutions Power SAP HANA DB
LE

SIOS SIOS Protection Linux Oracle, IBM DB2, 1662610 NW-HA- 19. May
Technology Suite for Linux on Sybase ASE, CLU_750 2025
Corp. v9.3.2 and above x86_64 SAPDB/MaxDB, SAP
HANA DB

SIOS SIOS Protection Linux HANA DB 2.0 1662610 S/4-HA- 20. Sep.
Technology Suite for Linux on CLU 1.0 2025
Corp. v9.6 and above x86_64

SUSE SUSE Linux Linux HANA DB 2.0 1763512 S/4-HA- 26. Nov.
Software Enterprise Server on CLU 1.0 2024
Solutions 15 for SAP x86_64
Germany Applications
GmbH

SUSE SUSE Linux Linux SAP ASE, Oracle, IBM 1763512 NW-HA- 26. Oct.
Software Enterprise Server on DB2, MaxDB, HANA CLU_750 2023
Solutions for SAP x86_64 DB
Germany Applications 15
GmbH

SUSE SUSE Linux Linux HANA DB 2.0 1763512 S/4-HA- 16. Feb.
Software Enterprise Server on CLU 1.0 2026
Solutions for SAP Power
Germany Applications 15 LE
GmbH

Veritas InfoScale AIX Sybase ASE, Oracle 1906423 NW-HA- 30. Sep.
Technologies Availability / RDBMS/RAC, IBM CLU_750 2022
LLC InfoScale DB2, MaxDB, HANA
Enterprise 7.4 DB

Veritas InfoScale Linux Sybase ASE, Oracle, 1906423 NW-HA- 11. Sep.
Technologies Availability / on IBM DB2, MaxDB, CLU_750 2022
LLC InfoScale x86_64 HANA DB
Enterprise 7.4

Veritas InfoScale Linux HANA DB 2.0 1906423 S/4-HA- 10. Jan.


Technologies Availability / on CLU 1.0 2026
LLC InfoScale x86_64
Enterprise 8.0

This is custom documentation. For more information, please visit the SAP Help Portal 172
1/31/2024
Veritas InfoScale AIX HANA DB 2.0 1906423 S/4-HA- 26. Mar.
Technologies Availability / CLU 1.0 2023
LLC InfoScale
Enterprise 7.4

* as provided by partners and known at certi cation date. Can be subject to change and may be changed by SAP at any time
without notice.
It is not intended to be binding upon SAP to any particular course of business, product strategy and/or development.
For details please follow link provided.

High Availability Partner Information

New - Certi cation Program for HA-Partners is in place


A new partner certi cation program for the SAP Application Server Interface for high availability solutions - the HA-Interface
Certi cation - is in place as of June 2015.
SAP has introduced a partner certi cation program to certify the HA-interface (cluster API) of the SAP Start Service
(sapstartsrv).
The important advantages of this certi cation will be:

Certify start/stop infrastructure within HA Setups

Establish a single SAP HA setup scenario

Unify HA setups for SAP NetWeaver 7.x

Clarify OS dependencies and 3rd party failover software

Clarify available DB-speci c HA solutions of third party vendors

Clarify responsibilities of SAP and its partners, especially for support

These minimum criteria aim to ensure compliant implementation of customer HA setups of SAP systems. Partners certainly
can extend and further optimize their solutions.
The certi cation process started in October 2011 with the rst pilot. All other potential partner certi cations followed
commencing April 2012. After a fair-play period of additional 6 months, all so far certi ed HA-Solutions were published on SDN
in October 2012. The list of partners that successfully passed the HA-Interface Certi cation can be found here. Currently two
HA-Interface Certi cations are released:

S/4-HA-CLU 1.0 (since 12/2018; based on SAP S/4HANA 1809 and ABAP platform 1809)

NW-HA-CLU 750 (since 10/2018; based on SAP NetWeaver 7.50)

No new certi cations of the older HA-Interface Certi cation versions (NW-HA-CLU_740, NW-HA-CLU_730) can be done. Of
course, existing certi cations for these versions remain valid.

You can nd more details about the HA-Interface Certi cation itself here.

Further Information About Partner Solutions


The following list of HA-Partners is a selection of available solutions and is not intended to be complete. This list will be revised
on a regular basis.
More details of certi ed Partner solutions can be found here.
PartnerInformation Available
HA-Interface
Certifications

This is custom documentation. For more information, please visit the SAP Help Portal 173
1/31/2024

Fujitsu Dynamic None.


Infrastructure
Solutions for SAP
Hewlett HP SAP Alliance Certified HA
Packard solution(s)
Enterprise available.
Co,

IBM System z: None.

Business Continuity
for SAP on IBM Z

Power System on AIX:

IBM AIX High


Availability, Disaster
Recovery PowerHA
SystemMirror (
Formerly HACMP)

PowerHA
SystemMirror High
Availability Solutions
for SAP on AIX

Power System on Linux:

PowerHA
SystemMirror High
Availability Solutions
for SAP on Linux

IBM i:

High Availability
Options for SAP
Using IBM PowerHA
SystemMirror for i

SAP High Availability


on IBM i
Con guration Guide

Implementing an
Independent ASP
(iASP) System on
IBM i

Multiplatform:

Tivoli System
Automation for
Multiplatforms SAP
High Availability
Policy

IBM Tivoli SAP High


Availability Solution
This is custom documentation. For more information, please visit the SAP Help Portal 174
1/31/2024
for distributed
platforms including
AIX clusters and
Linux clusters (IBM
System z, IBM Power
Systems and Intel-
based servers)
Microsoft Failover Clustering None.
in Windows Server

Windows Server
Failover Clustering
for SAP
NEC High Availability for Certified HA
SAP by solution(s)
Expresscluster available.

Oracle Oracle Solaris Certified HA


Cluster solution(s)
available.
Oracle IT
Infrastructure
Solutions for SAP

SAPCTL with Oracle


Clusterware and
Oracle Real
Application Clusters
Red Red Hat Enterprise Certified HA
Hat Linux for SAP HANA solution(s)
available.
Red Hat Enterprise
Linux for SAP
Solutions

SAP NetWeaver
ASCS/ERS ENSA1 in
Pacemaker Cluster
Sios SIOS Protection Certified HA
Suite for Linux solution(s)
available.

SUSE SUSE Alliance Certified HA


Partners solution(s)
available.
Mission-critical SAP
Solutions on SUSE
Linux Enterprise
Server for SAP
Applications

SUSE best practices


for SAP applications

Infos concerning
zero downtime
Veritas InfoScale Availability Certified HA
Technologies / InfoScale solution(s)
LLC Enterprise 7.0 / 8.0 available.

This is custom documentation. For more information, please visit the SAP Help Portal 175
1/31/2024
SAPNW agent on
Veritas SORT

Important Resources about the HA-Interface Certi cation for Partners


This site provides an overview of interesting documents that are relevant for HA partners intending to pass the HA-Interface
Certi cation.
The plans for this certi cation have been initially rolled out to our partners in June 2011.
The most recent version of the HA-Interface certi cation is in place as of June 2015.
If you consider to pass the certi cation, we recommend to familiarize with the following documents.

SAP Start Service (sapstartsrv):

How to use the SAPControl Web Service Interface

SAP Header le for shared library (Version 3)

How to Test Cluster Integration using SAP HA Interface

SAPStartSRV in HA Environments

Details Start/Stop Diagramm

Polling Interface for HA cluster to ensure that the replication server is started on every host in
its group

Note 1678768 - Initialising the enhanced SAP HA library (Link to SAP Service Marketplace)

Note 1864705 - Compatibility tests for certi ed HA setups

Monitoring:

How to monitor the Standalone Enqueue Server (Link to SAP Help)

How to monitor the Replication Server (Link to SAP Help)

How to monitor the Lock Table at Failover (Link to SAP Help)

SAP note 877795, section 52: Improved Enqueue and Message Server Monitoring (Link to SAP
Service Marketplace)

SAP HA Script Connector:

How to connect SAPSTARTSRV and Cluster Frameworks using the components


saphascriptco.so and sap_vendor_cluster_connector

SAP Note 1693245 - SAP HA Script Connector Library

This is custom documentation. For more information, please visit the SAP Help Portal 176
1/31/2024
For further technical questions please contact Martin Anstett .

For any question regarding the official certi cation process (e.g. registering for the certi cation), check out the Information on
ICC-Certi cations on the SAP Website, or contact holger.kunitz@sap.com.

SAP Internet Communication Manager (ICM)

SAP Internet Communication Manager (ICM)


The ICMan process is responsible for Internet communication within a SAP Web Application Server. It describes how a TCP/IP
request with an standard protocol on top (e.g HTTP/S) is routed into an ABAP context or to a J2EE engine (in case of double
stack system).

Wiki Documentation

ICMON and WDISPMON Monitors

ICM and SAP Web Dispatcher Maximum and Minimum number of threads

ICM and SAP Web Dispatcher: MPI parameters settings

Tips and best practices for security on SAP Web Dispatcher and ICM

Tracing HTTP headers in trace le

Managing user IDs for the Web Administration Page

Monitoring ICM Resources Using CCMS Infrastructure

Web Admin UI authentication methods

SAP Web Dispatcher and ICM timeout settings

Cross-Origin Resource Sharing (CORS)

Relevant SAP notes FAQ

Error rendering macro 'excerpt-include' How to analyze ICM Trace level 3 for SAP
Connect

No link could be created for 'Notes SAP Web How to automatically monitor the ICM MPIs
Dispatcher'. utilization

How to limit the size of a developer trace le

SAP Web Dispatcher FAQ

Can a SAP Web Disp run on the same host as


an ABAP, J2EE, HANA system

This is custom documentation. For more information, please visit the SAP Help Portal 177
1/31/2024

Can I operate multiple backend systems


behind a single web origin

Can I use a different load balancer instead of


SAP Web Dispatcher

Can I use multiple SAP Web Dispatchers for


the same backend system

Can the SAP Web Dispatcher forward


requests across an HTTP proxy

Does the SAP Web Dispatcher change the


host header

How can the SAP Web Dispatcher be


monitored

How do I con gure SAP Web Dispatcher for


WebSocket usage

How do I health check my SAP Web


Dispatcher?

How do I set up my own error pages for web


services

How do I setup a SAP Web Dispatcher with


the bootstrap option

How do I setup SAP Web Dispatcher

How do I setup the SAP Web Dispatcher for


high load scenarios

How do I update SAP Web Dispatcher

How many SAP Web Dispatchers do I need

How to analyze the distribution of stateless


http requests by the SAP Web Dispatcher

How to con gure SAP Web Dispatcher for


SSL

How to con gure SAP Web Dispatcher for


URL Rewriting

How to con gure system selection based on


request URI semicolon parameters

How to con gure traces on SAP Web


Dispatcher or ICM

How to download SAP Web Dispatcher trace


le - dev_webdisp

How to enable HTTP access log with detailed


response times

This is custom documentation. For more information, please visit the SAP Help Portal 178
1/31/2024

How to set connection - processing timeout


period for ICF services

Is SAP Web Dispatcher a reverse proxy

Is SAP Web Dispatcher vulnerable to


Shellshock attacks

Should I run the SAP Web Dispatcher as a


standalone installation or as part of an ABAP
or J2EE system

What do I have to check when using a


Reverse Proxy in my system landscape

What is the difference between Internet


Communication Manager (ICM) and SAP
Web Dispatcher

What is the SAP Web Dispatcher

Where can I download the SAP Web


Dispatcher

Where do I nd the Online Documentation

Which release of SAP Web Dispatcher should


I use

Cross-Origin Resource Sharing (CORS)


Cross-Origin Resource Sharing (CORS) is a W3C spec that allows cross-domain communication from the browser. A resource
makes a cross-origin HTTP request when it requests a resource from a different domain to its own. For example, an HTML page
served from http://domain-a.com makes an <img> src request for http://domain-b.com/image.jpg.

The Cross-Origin Resource Sharing (CORS) mechanism gives web servers cross-domain access controls, which enable secure
cross-domain data transfers. The Cross-Origin Resource Sharing standard works by adding new HTTP headers that allow
servers to describe the set of origins that are permitted to read that information using a web browser. Additionally, for HTTP
request methods that can cause side-effects on server's data (in particular, for HTTP methods other than GET), the
speci cation mandates that browsers "pre ight" the request, soliciting supported methods from the server with an HTTP
OPTIONS request method, and then, upon "approval" from the server, sending the actual request with the actual HTTP request
method.

Simple Request

A request that doesn’t trigger a CORS pre ight—a so-called “simple request”—is one that meets all the following conditions:

The only allowed methods are:

GET

HEAD

POST

Apart from the headers set automatically by the user agent, the only headers which are allowed to be manually set are:

This is custom documentation. For more information, please visit the SAP Help Portal 179
1/31/2024

Accept

Accept-Language

Content-Language

Content-Type (but note the additional requirements below)

Last-Event-ID

DPR

Downlink

Save-Data

Viewport-Width

Width

The only allowed values for the Content-Type header are:

application/x-www-form-urlencoded

multipart/form-data

text/plain

Communication Example

HTTP Request

GET /resources/public-data/ HTTP/1.1


Host: bar.other
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Mine eld/3.1b3pre
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,de ate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Referer: http://foo.example/examples/access-control/simpleXSInvocation.html
Origin: http://foo.example

HTTP Response

HTTP/1.1 200 OK
Date: Mon, 01 Dec 2008 00:23:53 GMT
Server: Apache/2.0.61
Access-Control-Allow-Origin: *

This is custom documentation. For more information, please visit the SAP Help Portal 180
1/31/2024
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: application/xml

Pre ighted Request


Unlike “simple requests”, "pre ighted" requests rst send an HTTP request by the OPTIONS method to the resource on the
other domain, in order to determine whether the actual request is safe to send. Cross-site requests are pre ighted like this
since they may have implications to user data.

In particular, a request is pre ighted if any of the following conditions is true:

If the request uses any of the following methods:

PUT

DELETE

CONNECT

OPTIONS

TRACE

PATCH

Or if, apart from the headers set automatically by the user agent, the request includes any headers other than those which
allows the Simple Requests.

Communication Example

HTTP Request

This is custom documentation. For more information, please visit the SAP Help Portal 181
1/31/2024
OPTIONS /resources/post-here/ HTTP/1.1
Host: bar.other
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Mine eld/3.1b3pre
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,de ate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Origin: http://foo.example
Access-Control-Request-Method: POST
Access-Control-Request-Headers: X-PINGOTHER, Content-Type

HTTP Response

HTTP/1.1 200 OK
Date: Mon, 01 Dec 2008 01:15:39 GMT
Server: Apache/2.0.61 (Unix)
Access-Control-Allow-Origin: http://foo.example/
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: X-PINGOTHER, Content-Type
Access-Control-Max-Age: 86400
Vary: Accept-Encoding, Origin
Content-Encoding: gzip
Content-Length: 0
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Content-Type: text/plain

Once the pre ight request is complete, the real request is sent:

HTTP Request

POST /resources/post-here/ HTTP/1.1


Host: bar.other
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Mine eld/3.1b3pre
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,de ate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
X-PINGOTHER: pingpong
Content-Type: text/xml; charset=UTF-8
Referer: http://foo.example/examples/pre ightInvocation.html
Content-Length: 55
Origin: http://foo.example
Pragma: no-cache
Cache-Control: no-cache

HTTP Response

HTTP/1.1 200 OK
Date: Mon, 01 Dec 2008 01:15:40 GMT
Server: Apache/2.0.61 (Unix)
Access-Control-Allow-Origin: http://foo.example/
Vary: Accept-Encoding, Origin
Content-Encoding: gzip

This is custom documentation. For more information, please visit the SAP Help Portal 182
1/31/2024
Content-Length: 235
Keep-Alive: timeout=2, max=99
Connection: Keep-Alive
Content-Type: text/plain

How to enable CORS in SAP Netweaver Platform

It is technically possible to con gure SAP NetWeaver Application Server to support CORS, so that your web application
landscape can be greatly simpli ed as below:

The trick is simple. Add a rewrite rule for NetWeaver’s ICM component, so that it returns the necessary CORS headers.

First, con gure the NetWeaver Application Server’s pro le, enable HTTP rewriting and point to the action/rewrite le. In the
below example on a Windows installation, the action le is the rewrite.txt le.

icm/HTTP/mod_0 = PREFIX=/,FILE=D:\usr\sap\<SID>\SYS\pro le\rewrite.txt

In the action le, maintain the following settings to inject the necessary CORS headers. Make sure you specify your web server’s
URL as the value of the Access-Control-Allow-Origin header.

SetResponseHeader Access-Control-Allow-Origin https://<YourWebServerHost>

SetResponseHeader Access-Control-Allow-Credentials true

SetResponseHeader Access-Control-Allow-Methods "GET, POST, PUT, OPTIONS"

SetResponseHeader Access-Control-Allow-Headers "X-Csrf-Token, x-csrf-token, x-sap-cid, Content-Type, Authorization"

SetResponseHeader Access-Control-Expose-Headers x-csrf-token

In a large deployment of SAP NetWeaver landscape, it is often the case that there are multiple server nodes and a load balancer
such as SAP Web Dispatcher sits in front of the multiple server nodes. In this case, you can turn on CORS support on the SAP
Web Dispatcher instead of on each and every server node. With the SAP Web Dispatcher version 7.49 PL112 or above, it offers

This is custom documentation. For more information, please visit the SAP Help Portal 183
1/31/2024
more granular support (comparing to NetWeaver’s ICM component) on where the CORS requests come from so that it can act
accordingly. Here is an example:

if %{HEADER:ORIGIN} = https://<WebServer1> [OR]

if %{HEADER:ORIGIN} = https://<WebServer2>

begin

SetResponseHeader Access-Control-Allow-Origin %{HEADER:ORIGIN}

SetResponseHeader Access-Control-Allow-Credentials true

SetResponseHeader Access-Control-Allow-Methods "GET, POST, PUT, OPTIONS"

SetResponseHeader Access-Control-Allow-Headers "X-Csrf-Token, x-csrf-token, x-sap-cid, Content-Type, Authorization"

SetResponseHeader Access-Control-Expose-Headers x-csrf-token

end

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

FAQ ICM

Client-Server Technology - ICM FAQ

How to analyze ICM Trace level 3 for SAP Connect

How to automatically monitor the ICM MPIs utilization

How to limit the size of a developer trace le

This is custom documentation. For more information, please visit the SAP Help Portal 184
1/31/2024

How to automatically monitor the ICM MPIs utilization


The automatically monitoring could be made by the icmon tool every 5 second. The monitor interval cannot be changed.
Trigger the following command at OS level as <SID>ADM user:

>icmon pf=<instance profile> >> mpidump.out

You do not see the icmon output, however, it is possible to provide icmon input via keyboard. Type ʻm’, then type ʻy’.
The output will be like following:

> icmon pf=<instance profile> >> mpidump.out


m
y

Checking the content of mpidump.out it is possible to see a new entry like following every 5 seconds:

-->
MPI Dump Wed May 4 19:45:26 2016
========
==================================================================
MPI Summary
==================================================================
max. Pipes = 4000 / used = 1
max. Buffers = 31976 (buffer size = 65584)
used = 0 / peak = 5 / free = 22384 (non reserevd)
reserved = 9592
dynamic quota = 10% (of current non-reserved free space)
==================================================================
MPI Pipes
==================================================================
<GUID> EYE NAM ID TAG FLAGS STATUS NBUF ALLOC(MAX) OPEN(R) OPEN(W)
==================================================================
MPI<2>: 4d50494d 'ANON' 0 1 0 0 0 0(7994) 1(30001) 1(30001)
q - quit
m - menue
-->

To nish the monitoring action just type q in the screen.

> icmon pf=<instance profile> >> mpidump.out


m
y

This is custom documentation. For more information, please visit the SAP Help Portal 185
1/31/2024
q
>

ICM and SAP Web Dispatcher Maximum and Minimum number of threads

Purpose

Overview about how to de ned the minimum an maximum number of threads in ICM and SAP Web
Dispatcher

Overview

A shortage of Working Threads could lead to connections errors, in the same way, a huge number of
thread may became expensive due to consumption of Operating System resources. The idea of this
Expert Content is to give an overview in how to de ne the best size about maximum and minimum
number of active threads.

De nitions

The parameters icm/min_threads and icm/max_threads threads are tunning requirements and its
sizes depends the load of your system.

Each connection will be handled by a speci c thread, so, if you have 700 connections, you should
have at least 700 threads to handle the required number of simultaneous connections.

During the start up, the ICM will automatically created the number threads de ned by
icm/min_threads and keep those threads constantly UP and running at OS level. If in some moment
more threads are required due to a high load, for example, it can increase the number of threads until
the maximum de ned by icm/max_threads.

Technically you should not set these both parameters to the same size, icm/max_threads should be
bigger than icm/min_threads.

If, for example, your maximum number of simultaneous connection never reach more than 500
connections, does not make sense to set icm/min_threads to 700 because the 200 threads will not
be used, just consuming OS resources.

A good strategy to de ne the correct number of icm/min_threads and icm/max_threads require to


take in mind at least 2 points:
1) Average simultaneous connections;
2) Maximum simultaneous connections;

The icm/min_threads may be set to the average of simultaneous connections or a bit higher, but not
too much.
This is custom documentation. For more information, please visit the SAP Help Portal 186
1/31/2024

The icm/max_threads should be able to cover the worst case scenario because, if not enough threads,
connections are rejected.

It is important to keep monitoring the ICM statistics about the number of threads in SMICM. If the
noticed that the system is constantly creating more thread than the de ned by icm/min_threads, it
would be a good idea to increase it because the process of create threads is a little expensive
compared with an already created thread. In the other side, unused threads
will consume resources.

Related Content

Related Documents

Related SAP Notes/KBAs

737625 - Parameter recommendations for Internet Communication Manager (ICM)

ICM and Web dispatcher: MPI parameters settings

Purpose

You notice the following errors in the trace le of the ICM (dev_icm) and want to avoid them:

Temporarily out of MPI buffers

ERROR => no more free event- ags

MPI_ENOMEM

Overview
The situations where there is a lack of MPI resources are normally caused by an incorrect parameter setting or an
application/users triggering too many requests.

Introduction
In terms of TCP/IP communication, a memory pipe represents the logical network connection (the MPI handle is the socket),
while the MPI buffers represent the actual network data packets:

This is custom documentation. For more information, please visit the SAP Help Portal 187
1/31/2024

The MPI buffers are created only when there is ongoing HTTP data in over the connections and are freed once the data is sent
(a thread is created when needed and destroyed when it is no longer necessary). Normally one MPI buffer is used for each HTTP
connection. If larger data streams are transferred using one connection, several buffers may accumulate on the MPI. However,
the number of buffers for each MPI is assigned so that no one connection can use up the entire MPI memory.

Hints on MPI usage

The MPI buffer usage depends on the number of open HTTP connections and the number/size of HTTP messages being
processed by the server. It is therefore possible that the number of MPI buffers is small with many HTTP connections depending
on the status of the connections.

The number of MPI buffers are determined by the two parameters, mpi/total_size_MB divided by mpi/buffer_size.
Out of the total number of MPI buffers, 30% are reserved for internal use (wakeup mechanism...), and only 70% (unreserved)
are used by applications.

Possible causes for MPI error entries


The situations where there is a lack of MPI resources are normally caused by an incorrect parameter setting or an
application/users triggering too many requests:

1.Parameter settings

The rule is that the maximum number of MPIs available is the mimimum of mpi/max_pipes and (mpi/total_size_MB divided by
mpi/buffer_size).

The most straightforward approach is to set the MPI related parameters to the maximum as long as this is within your system
resources limits. Even if the corresponding notes mention maximum values, you can increase the parameters as long as you
have enough memory resources.

This is custom documentation. For more information, please visit the SAP Help Portal 188
1/31/2024
Tip: If you face some memory problem after trying to increase mpi/total_size_MB, note that decreasing the value of
mpi/buffer_size can help to cut the value of mpi/total_size_MB, keeping the same number of MPI buffers.

When there is some kind of MPI error, the steps to check would be:

For both ICM and web dispatcher:

check that parameter mpi/max_pipes is set in the pro le le. The default value is 4000 which
limits the number of concurrent connections to 2000, so it's important to set a higher value.

Nettimeout (icm/traffic_control) < keepalive timeout (icm/keep_alive_timeout) to avoid many


idle connections consuming the resources.

For the ICM case:

MPI usage and status: SMCICM -> Goto -> Memory pipes -> Display data. We can only check the
peak of MPI buffer, not the peak of the MPI pipes. You can also use icmon to perform this check
if you have a java system.

value of parameter rdisp/plugin_auto_logout. This parameter controls the timeout of idle


sessions. If it's too high could lead to many idle connections consuming the resources.

For the Web Dispatcher case:

MPI status using the web administration interface -> Core System -> MPI Status

2.Overload situation

If after increasing the relevant MPI parameters you still see errors in the log le, it is time to check if some application or user
could be overloading the ICM/Web Dispatcher. The most important question is to take into account the kind of
applications/business scenarios that are involved when checking:

Is there a huge number of active or idle user connections? You can check this for both the ICM
and Web Dispatcher from the OS command line using commands such as:

netstat -ao | grep <icm/web dispatcher HTTP(S) port>

For the web dispatcher you can also use the web administration interface -> Core System -> Active Connections.

Thread status using:

ICM: sapcontrol -nr <instance number> -function ICMGetThreadList or icmon

Web Dispatcher: In the web administration -> Core System -> Core Thread Status

What are the work processes executing? Search for errors in dev_w* or in the default trace in
case of java servers. Perhaps the exception contains the name of the application overloading the
ICM/Web Dispatcher.

The problem may also be related to the size of the HTTP data. With HTTP logging you can check
the response size. More information on the setting in the following link of the online help:

http://help.sap.com/saphelp_nwpi711/helpdata/en/48/442541e0804bb8e10000000a42189b/content.htm?
fullscreen=true

This is custom documentation. For more information, please visit the SAP Help Portal 189
1/31/2024

Trace level 2 of the ICM/Web Dispatcher (dev_icm / dev_webdisp) may also give more details. It
is enough to increase the trace level for 1-2 minutes when the problem is exactly happening.

To increase the trace level:

ICM: SMICM -> Goto -> Trace level -> Increase

Web Dispatcher: Menu -> Core System -> trace -> trace level

These monitoring steps should not imply any problem in terms of performance impact.

3.MPI not being released (mostly ICM case, not common)

When re-starting the ICM, the pipes should be automatically deleted, so the corresponding memory should be released. If there
is some MPI over ow, it may not be well done, so ICM triggers the error “ ShmCreate ATTACH 62 failed”. The workaround is to
perform a hard exit, a soft cancel or restart the instance if this doesn’t help. The reason for this situation is unclear, so the best
approach is to increase the MPI parameters and avoid it.

For each kernel patch there is a regression note, which lists all the known newly introduced errors by this patch level. Find it
using the keyword KRNLxxxPLyyy in the SAP note search. Check also the regressions for the kernel, perhaps there was some
bug xed in a newer kernel patch level.

4. MPI not being released for ICM with Java instances

In case of Java, the ICM and Java are jointly responsible for the MPI buffer management. When a request is sent to Java, some
MPI buffer resource is allocated, and the MPI buffer is only released after the Java sends response to ICM.

As an HTTP server, the Java should always respond to a request, taking care of the MPI resource cleanup once the
request/response cycle is completed.
If the Java spends a relative long time processing the request, the MPI resource will be outstanding for the same period of time.
This is independent of the number of HTTP connections from the client.
In the extreme case, if the Java never responds to the requests, the MPI associated with the requests will never be freed. It
would be an indication of Java application issue that needs to be xed.

To avoid the MPI resource "leak", the following should be taken in account:

1. Properly size the system so that the Java server are not overloaded, thus avoiding requests getting stuck in Java.
2. Properly con gure the Java timeout if applicable so that the requests don't stay in Java for too long.
3. Avoid operations (such as "blocking updates") that could potentially cause the Java to hang on requests processing.

KBA 2276273 - AS Java - How to identify the largest MPI buffer consumer by MPI dump, will help in this case.

POSSIBLE ERRORS (in dev_icm and dev_webdisp)

IcmBufFree: MpiFreeBuf failed -> ignore it (SAP note 1128445 - Error message MpiFreeBuff in
dev_icm)

IcmLowOnBlocks: low on MPI buffers (cur/limit/unreserved) if in SMCICM -> Goto -> Memory
pipes -> Display data

Total #Mpi Buffer (not reserved) = Total #Mpi Buffer - Total #Mpi Buffer (reserved)

This is custom documentation. For more information, please visit the SAP Help Portal 190
1/31/2024

*** WARNING => IcmReadFromConn(id=xx/xxxx): temporarily out of MPI buffers -> roll out

ERROR => no more free event- ags

MPI_ENOMEM

WARNING: MPI Pipe 1543 still in use 0 0 1 1 -> A good approach in this case would be to wait till
all the HTTP connections are closed (or only a few left) to see how many MPI pipes are still open.

RELATED CONTENT
Related documents

Memory Pipes and MPI Buffers

icm/HTTP/logging_<xx>

ICMON and WDISPMON monitors

Related notes

SAP Note 737625: Parameter recommendations for Internet Communication Manager (ICM)

SAP Note 538405: SAP Web Dispatcher: composite note

SAP Note 2007212: Tuning SAP Web Dispatcher and ICM for high load

SAP Note 1128445: Error message MpiFreeBuff in dev_icm

ICMON and WDISPMON Monitors

Purpose
Help you to understand the ICMON tool functionalities, in order to help efficiently monitoring the system without access to
transactions like SMICM.

Overview
This page contains information about the ICMON and the functionalities available in this tool, aiming to explain the purpose of
each one of them.

The ICMON and WDISPMON Tools


Both ICM and Web Dispatcher can be monitored using the ICM and WDISPMON tool respectively. In order to achieve this, you
must be logged with the <sid>adm user in the OS level and run the below commands.

In order to use ICMON, you must be logged with the <sid>adm user in the OS level and run the below command.

icmon pf=<path to profile/profile name of the instance>


This is custom documentation. For more information, please visit the SAP Help Portal 191
1/31/2024

In order to use WDISPMON, you must be logged with the <sid>adm user in the OS level and run the below command.

wdispmon pf=<path to profile/profile name of the instance>

You will be taken to the ICMON or WDISPMON initial screen and access the main menu by entering the option m. In the image
below you can see the initial menu shown for both tools where some functionalities are already accessible.

Changing ICM and Web Dispatcher Trace Level

In the initial menu of the ICMON and WDISPMON tools you have access to the options to increase and decrease the trace level
of the ICM and Web Dispatcher processes by using the options "+" and "-" respectively. This is particulary usefull for JAVA
systems or when the access to transactions SMICM or Web Administration page is not possible, therefore allowing the trace
level to be changed directly from the operating system level.

Changing ICM and Web Dispatcher Statistics Level

This is custom documentation. For more information, please visit the SAP Help Portal 192
1/31/2024
In the initial menu of the ICMON and WDISPMON tools you can also increase the statistic level of these processes. The statistics
can be displayed through the ICMON and WDISPMON tools via its main menu, Web Administration page of ICM or Web
Dispatcher, or in case of ICM, can also be accessed in transaction SMICM, in the menu GoTo and selecting Statistics.

The command to increase the statistics level by one is "S" and the command to decrease it is "s".

View Core Thread Status

Main Menu and Functionalities


The ICMON and WDISPMON main menu can be accessed from the Initial Menu by using the option "m". Below you can see an
image where all the options available in this menu are visible. This chapter aims to explain each of the functionalities available
here and how to use them effectively for the most relevant ones.

Generate Client Load

This functionality can be accessed by using option "g" in the ICMON and WDISPMON main menu. With this option you can
generate requests to the ICM or Web Dispatcher for test purposes, having options such as target host, target port, protocol,
request information, think time and number of requests you'd like to trigger. The output of this option will show the response
times for each request and their correspondent thread number.

This is custom documentation. For more information, please visit the SAP Help Portal 193
1/31/2024

Generate Monitor Request

This functionality can be accessed by using option "m" in the ICMON and WDISPMON main menu. This option leads to a whole
set of monitoring features from ICM and Web Dispatcher as you can see in the below image. The functionalities in this menu
include trace changes, services manipulation, resources control and monitoring such as MPI, cache manipulation, between
others.

This is custom documentation. For more information, please visit the SAP Help Portal 194
1/31/2024

View Performance/Throuput

This functionality can be accessed by using option "p" in the ICMON and WDISPMON main menu. With this option you can
monitor the performance of ICM and Web Dispatcher, controlling the KBytes read and written in a speci c period of time.

Display Statistics

This functionality can be accessed by using option "s" in the ICMON and WDISPMON main menu. In the Statistics Overview
screen you have access to the main monitoring attributes of the ICM and Web Dispatcher processes. The current workload is
available, also including the maximum peak of utilization of each resource. You can also see statistical details about the errors,
timeouts and other relevant aspects. The number of threads available and their respective status is also shown in a table as you
can see below.

This is custom documentation. For more information, please visit the SAP Help Portal 195
1/31/2024

View Core Thread Status

This functionality can be accessed by using option "t" in the ICMON and WDISPMON main menu. The Core Thread option will
display the current thread Id of the existing ICM or Web Dispatcher threads, their current thread status and the request type
currently processed in this thread.

Dump MPI Usage

This functionality can be accessed by using option "y" in the ICMON and WDISPMON main menu. This options offers the
complete overview of the MPI resource utilization in the ICM or Web Dispatcher. Here you can also see the peak of utilization

This is custom documentation. For more information, please visit the SAP Help Portal 196
1/31/2024
and also details about the current used MPIs. For more details about this important resource, check out this Expert Content
page for MPI.

Display/Change Pro le Parameters (option "r")


Display Dynamic Queue Statistics (option "d")

This functionalities can be accessed by the options "r" and "d" respectively. This menu option allows you to display and/or
change HTTP handlers. It also allows you to display or change the value of any parameter speci ed in the pro le of this Web
Dispatcher or ICM.

The list of HTTP subhandlers that can be changed and displayed by using this function is shown in the below image. This screen
is shown once the option "h" is accessed in the above menu.

This is custom documentation. For more information, please visit the SAP Help Portal 197
1/31/2024
The changes performed by using this function is performed in the pro le itself, therefore becoming permanent until the value is
changed.

Maintain Authentication File

This functionality can be accessed by using option "a" in the ICMON and WDISPMON main menu. The authentication le is used
for example in order to con gure the ICM or Web Dispatcher administration page as per this SAP online help.

It has the following structure:

● Comment lines start with a # and are ignored.


● Other lines have the form:
<user>:<password hash>:<user group>:<DN client certi cate>

Related Content

Related Documents
ICM and Web dispatcher: MPI parameters settings

icm/HTTP/auth_<xx>

Monitoring ICM Resources Using CCMS Infrastructure

Purpose
The purpose of this page is to explain how the ICM of an SAP instance can be monitored through the CCMS infrastructure.

Overview
This page provides details about the CCMS monitoring infrastructure, speci cally focused in the ICM resources monitoring,
providing details about how to nd the monitoring functions and how to con gure them accordingly.

CCMS Transaction RZ20


The CCMS monitoring infrastructure, a solution within SAP NetWeaver, centrally monitors any IT environments - from individual
systems through networked SAP NetWeaver solutions, to complex IT landscapes incorporating several hundred systems. In this
section, you learn about the Alert Monitor (transaction RZ20) and its monitoring functionalities.

Most of the ICM monitoring functionalities can be found in transaction RZ20, by following the below path.

RZ20 transaction → SAP CCMS Monitor Templates → Entire System → Application Server → <Instance Name> →
R/3Services -> ICM
This is custom documentation. For more information, please visit the SAP Help Portal 198
1/31/2024

Monitoring ICM Resources


The CCMS Infrastructure allows you to monitor the ICM resources available in the SAP instance by using the transaction RZ20.
The below MTEs are available in order to monitor different gateway resorces, they are:

Version - Shows the current version of the ICM process running in the instance.
MaxNoOfThreads - Maximum number of threads allowed in the ICM as per the con guration.
NoOfThreads - Current number of threads running.
PeakNoOfThreads - Peak number of ICM threads since the system start up.
MaxNoOfConnections - Maximum number of connections allowed as per the con guration.
NoOfConnections - Current number of connections to ICM.
PeakNoOfConnections - Peak number of ICM connections since the system start up.
MaxQueueLen - Maximum queue lenght in the ICM.
QueueLen - Current queue lenght of ICM.

PeakQueueLen - Peak usage of the queue of ICM.


MPISizeTotal - Total size of the MPI de ned by the parameter mpi/total_size.
MPIBufferCount - Total number of MPI buffers according to the con guration.
MPIBufUsed - Total number of used MPI buffers.
PeakMPIBufUsed - Peak usage of the MPI buffers since the system start up.

This is custom documentation. For more information, please visit the SAP Help Portal 199
1/31/2024

Monitoring ICM Cache Resources

Under the Server Cache MTE tree found in the ICM monitoring structure of the transaction RZ20, you can nd the below MTEs
allowing you to monitor the ICM Server Cache.

CacheSizeMB - Con gured HTTP Server Cache (File System)


CacheSizeUsed - Memory Used of the HTTP Server Cache (in Percent)
MaxCacheEntries - Maximum Number of HTTP Server Cache Entries
CacheEntriesUsed - Current number of HTTP server cache entries in use (in percent)
CacheAccesses - Number of cache accesses
CacheableAccesses - Number of cache accesses for cacheable objects
CacheHits - Number of hits in the HTTP cache (in percent)
CacheHitsMem - Number of hits in the HTTP memory cache (in percent)
EvictedEntries - Number of suppressed entries
MaxUfoEntries - Maximum Number of HTTP UFO Cache Entries
UfoEntries - Number of entries in HTTP UFO cache
UfoAccessCount - Number of accesses to the HTTP UFO cache
UfoHitCount - Number of hits in the HTTP UFO cache

Monitoring Scenarios Examples

The ICM monitoring structure allows you to monitor important resources such as the current number of connections to the ICM
with the MTE NoOfConnections. This will avoid having requests failed due to no more connection resources available in the ICM
process. The same monitoring scenario is also valid for the MTE QueueLen to monitor the ICM queue length.

For both scenarios, you have to make sure you set the thresholds of the MTEs properly based on the values you have con gured
to the parameters de ning the maximum allowed connections and also to the queue maximum size. This will make sure the
alert is triggered in the correct moment to avoid having the resource exhaustion

CCMS Auto-Reaction Methods

In the CCMS monitoring infrastructure, you can set up any MTE available in transaction RZ20 to automatically trigger email
alerts in case the values reported by them meet the threshold values de ned. The next chapters will explain more details about
the con guration process to achieve this.

De ning Threshold Values for the Monitored MTEs

The rst step is to de ne which MTEs you want to monitor in transaction RZ20, with this, you can start to set up their
thresholds accordingly, so you are alerted in the correct scenario. Follow the Adjusting the Threshold Values chapter from
the Con guring Alert Triggering and Alert Reactions SAP online help documentation for a detailed step by step on how to
achieve this.

This is custom documentation. For more information, please visit the SAP Help Portal 200
1/31/2024

De ning and Assigning Auto-Reaction Methods for the Monitored MTEs

The second step to achieve this con guration is to de ne and assign the auto-reaction methods to the desired MTEs in the
CCMS monitoring infrastructure. In order to perform this con guration, follow the steps mentioned in the De ning an
Automatic Alert Noti cation SAP online help documentation.

Alternatively, you can choose to de ne Central auto-reaction methods, which will trigger the email alert from the central system
instead of the local system. For this con guration, refer to the SAP online help Setting Up Central Auto-Reaction Methods for
more details.

This is custom documentation. For more information, please visit the SAP Help Portal 201
1/31/2024

Displaying MTE Performance Information Graphically


Withing the CCMS transaction RZ20, you can display the performance values shown by an speci c MTE as a graphic, allowing
you to make faster and more accurate analysis based on the reported data. In order to display the MTE values as a graphic,
follow the below steps.

1. Select the Performance MTE in RZ20.

2. Click in the Display Details button.

3. Select whether you want to display the last 30 minutes or 24 hour value.

4. Click in the "Display performance values graphically" button.

5. The graphic is nally shown in the below format.

This is custom documentation. For more information, please visit the SAP Help Portal 202
1/31/2024

Related Content

Related Documents

De ning an Automatic Alert Noti cation

Con guring Alert Triggering and Alert Reactions

Setting Up Central Auto-Reaction Methods

Related SAP Notes/KBAs

SAP Note 939616 - CCMS auto-reactions: Help with troubleshooting

SAP Note 176492 - Automatic email when an alert occurs (RZ20)

Tracing HTTP headers in trace le

Purpose

An administrator wants to analyze an HTTP(s) package received by ICM/SAP Web Dispatcher,


however, some header content is missed from the payload written in the trace (dev_icm and
dev_webdisp).

Overview

Due to security reasons critical information are hiding in the SAP developer traces. ICM and SAP Web
Dispatcher remove header like authorizations, passwords and cookie from the payload written in the

This is custom documentation. For more information, please visit the SAP Help Portal 203
1/31/2024

trace.

Data anonymization

Enabling the trace level 2 or 3 of ICM/SAP Web Dispatcher the service write the payload details in the
trace. As from 74X kernel, due to security concerns, some headers from the trace le are removed
and the data anonymized like following:

[Thr 3808] 000000000C5C61C8 003248 6162656c 2220663d 22736170 2d706173 |abel"


[Thr 3808] 000000000C5C61D8 003264 73776f72 64xxxxxx xxxxxxxx xxxxxxxx |sword
[Thr 3808] 000000000C5C61E8 003280 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[Thr 3808] 000000000C5C61F8 003296 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[Thr 3808] 000000000C5C6208 003312 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[...]
[Thr 3808] 000000000C5C6248 003376 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[Thr 3808] 000000000C5C6258 003392 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[Thr 3808] 000000000C5C6268 003408 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[Thr 3808] 000000000C5C6278 003424 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxx6e |.....
[Thr 3808] 000000000C5C6288 003440 6273703b 2a3c2f73 70616e3e 3c2f7370 |bsp;*
[Thr 3808] 000000000C5C6298 003456 616e3e3c 2f6c6162 656c3e3c 2f74643e |an></
[Thr 3808] 000000000C5C62A8 003472 3c74643e 3c737061 6e206964 3d227361 |<td><
[Thr 3808] 000000000C5C62B8 003488 702d7061 7373776f 7264xxxx xxxxxxxx |p-pas
[Thr 3808] 000000000C5C62C8 003504 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....
[Thr 3808] 000000000C5C62D8 003520 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx |.....

If for some reason an administrator wants to analyze the full payload information it is possible to
trace these special headers disabling this hiding details with the parameter
'rdisp/TRACE_HIDE_SEC_DATA = FALSE'.

With this setting, critical details are disclosed in the trace le. SAP only recommend deactivating this
setting only in speci c cases for troubleshooting purpose.

Related Content

Related Documents

Related SAP Notes/KBAs

2012562 - Tracing HTTP information for problem analysis

Unable to render {include} The included page could not be found.

This is custom documentation. For more information, please visit the SAP Help Portal 204
1/31/2024

SAP Kernel: Important News


In this document you will nd the latest information about the SAP kernel such as:
- Announcements of SP Stack Kernel deliveries
- Other news related to the development, maintenance and usage of the SAP kernel versions. Currently in maintenance are kernel: 72x (722_EXT,
722_EX2), 75X (753, 754) , 77X (777), 78x (785, 789) and 79x (793).

For SAP recommendations see: Update Strategy for the Kernel of the Application Server ABAP in On Premise Landscapes (Version: August 2022)
Check out our central notes:
SAP Note 2083594 - SAP Kernel Versions and SAP Kernel Patch Levels
SAP Note 3116151 - SP Stack Kernel Schedule Forecast
SAP Note 19466 - Downloading SAP kernel patches
SAP Note 1802333 - Finding information about regressions in the SAP kernel
SAP Note 2966761 - Overview of SAP Kernel Correction Archives
SAP Note 2966621 - Overview of Kernel-Related Software Components

News

18.01.2024: SP Stack Kernel 754 PL 201 released


SP Stack Kernel 754 PL #201 is now available on SAP Support Portal. It replaces SP Stack Kernel 754 PL 200 to enable AIX and
IBM i customers to implement the correction of SAP Note 3348320 with an SP Stack Kernel. For details on the SP Stack Kernel
754 PL 201 see release note 3420412.

For existing installations on other platforms you can keep using SP Stack Kernel 754 PL 200.

Information on known issues in the SP Stack Kernel 754 PL #201 can be found in regression note 3423190. This note will be
updated when necessary.

11.01.2024: R3trans issue in Kernel 754 on IBM i and AIX


PL 201 only adds one correction to solve R3trans data corruption on IBM i and AIX platforms, for details see SAP Note 3348320.

For installations on other platforms you can keep using SP Stack Kernel 754 PL 200.

11.01.2024: R3trans issue in Kernel 754 on IBM i and AIX

R3trans had a defect leading to data corruption or failed transports. Only installations on IBM i and AIX with PL less than 211 are
affected. For details and workaround see SAP Note 3348320 (Transports fail and lead to data inconsistencies). SAP is working
on a solution for new installations with kernel 754.

17.11.2023: SP Stack Kernel Schedule 2024 available


Please nd the SP Stack Kernel schedule for year 2024 in the SAP note 3116151 - SP Stack Kernel Schedule Forecast.
Be aware that the information contained in this schedule is subject to change.

13.11.2023: Issue with JCo and NCo in XI/PO/PI environment


After implementing SAP note 3356447, JCo, NCo based registered server programs are no longer working in IDoc Inbound
Scenario in XI/PO/PI environment.

The following SAP kernel releases are affected starting with the patch levels:

753#1221
754#217
777#612
785#310

This is custom documentation. For more information, please visit the SAP Help Portal 205
1/31/2024
789#210
793#51

For details and correction see SAP Note 3393929 - CPIC : t/q RFC is stuck and not processed in transaction SM58 in IDoc
Inbound Scenario.

11.10.2023: SAP Kernel 793 PL 51 released


SAP kernel 793 PL #51 is now available on SAP Support Portal, for details see Release Note 3372947. Kernel 793 PL 51 is the
initial delivery of SAP kernel 793.

SAP kernel 793 is the required kernel version for SAP S/4HANA 2023. Similarly to an SP Stack Kernel, kernel 793 PL 51 is
provided as a complete kernel installation within the two archives: SAPEXE.SAR, SAPEXEDB.SAR.

Kernel 793 is planned as a downward compatible kernel for the kernel releases 781 to 789, for details see SAP Note 2907361 -
Release Roadmap for Kernel 77x and 78x and 79x.

Information on known issues in the SP Stack Kernel 793 PL #51 can be found in the Regression Note 3382501. This note will be
updated when necessary.

28.08.2023: SP Stack Kernel 789 PL 200 released

SP Stack Kernel 789 PL #200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3364170.

Information on known issues in the SP Stack Kernel 789 PL #200 can be found in SAP Note 3369868. This note will be updated
when necessary.

11.08.2023: SP Stack Kernel 785 PL 300 released

SP Stack Kernel 785 PL #300 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3359089.

Information on known issues in the SP Stack Kernel 785 PL #300 can be found in SAP Note 3364827. This note will be updated
when necessary.

31.07.2023: SP Stack Kernel 777 PL 600 released


SP Stack Kernel 777 PL #600 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3353627.

Information on known issues in the SP Stack Kernel 777 PL #600 can be found in SAP Note 3361227. This note will be updated
when necessary.

25.07.2023 Subscriptions are currently not possible


Dear customers, currently subscription to the new SAP Kernel:Important News webpage is not possible. We are working on a
solution.

Sorry for the inconvenience.

24.07.2023: SAP Kernel: Important News moves to SAP Help Portal


This is custom documentation. For more information, please visit the SAP Help Portal 206
1/31/2024
SAP Kernel: Important News webpage has moved from SCN Wiki to Support Content section on SAP Help Portal .

During the migration no webpage updates were possible. However, the information about new SP Stack Kernel deliveries was
still published in SAP Note 2083594 - SAP Kernel Versions and SAP Kernel Patch Levels .

Now that the move is complete, please re-subscribe to our webpage on SAP Help Portal. You will nd the subscription option
under "More..."

26.06.2023: SP Stack Kernel 722 PL 1300 released


SP Stack Kernel 722 PL #1300 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3330151.

Information on known issues in the SP Stack Kernel 722 PL #1300 can be found in SAP Note 3345326. This note will be updated
when necessary.

26.06.2023: SP Stack Kernel 754 PL 200 released

SP Stack Kernel 754 PL #200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3339948.

Information on known issues in the SP Stack Kernel 754 PL #200 can be found in SAP Note 3344822. This note will be updated
when necessary.

22.05.2023: SP Stack Kernel 753 PL 1200 released

SP Stack Kernel 753 PL #1200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3327172.

Information on known issues in the SP Stack Kernel 753 PL #1200 can be found in SAP Note 3336672. This note will be updated
when necessary.

15.03.2023: SP Stack Kernel 781 PL 400 released

SP Stack Kernel 781 PL #400 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3307536.

Information on known issues in the SP Stack Kernel 781 PL #400 can be found in SAP Note 3312689. This note will be updated
when necessary.

Note:
PL 400 is the last kernel patch delivered in kernel 781. Kernel 781 is Out of Maintenance starting April 1st 2023, for details and
DCK recommendations see SAP Note 2083594.

03.03.2023: SP Stack Kernel 789 PL 100 released

SP Stack Kernel 789 PL #100 is now available on SAP Support Portal, for details see Release Note 3298925.

Kernel 789 can be used as a downward compatible kernel for the kernel releases 781 (SAP S/4HANA 2020) and 785 (SAP
S/4HANA 2021), for details see DCK Note 3296726.

This is custom documentation. For more information, please visit the SAP Help Portal 207
1/31/2024
Information on known issues in the SP Stack Kernel 789 PL #100 can be found in the Regression Note 3304569. This note will
be updated when necessary.

17.02.2023: SP Stack Kernel 754 PL 100 released

SP Stack Kernel 754 PL #100 is now available on SAP Support Portal, for details see Release Note 3287208.

Kernel 754 is introduced as successor to kernel 753 to ensure the support of newer OS and DB versions and newer
compiler/runtime environments. It does not include functional enhancements.

Kernel 754 can be used as a downward compatible kernel for the kernel releases 740 to 753, for details see DCK Note 3156866.

Information on known issues in the SP Stack Kernel 754 PL #100 can be found in the Regression Note 3297495. This note will be
updated when necessary.

Following software components have been released alongside kernel 754:

SAP IGS 7.54

SAP Web Dispatcher 7.54

SAP Content Server 7.54

16.12.2022: SP Stack Kernel 749 PL 1200 released


SP Stack Kernel 749 PL #1200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3276585.

Information on known issues in the SP Stack Kernel 749 PL #1200 can be found in SAP Note 3280862. This note will be updated
when necessary.

Note:
PL 1200 is the last kernel patch delivered in kernel 749. Kernel 749 is Out of Maintenance starting January 1st 2023, see SAP
Note 2083594.

09.12.2022: SP Stack Kernel 753 PL 1100 released


SP Stack Kernel 75 3 PL # 11 00 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3270316.

Information on known issues in the SP Stack Kernel 75 3 PL # 11 00 can be found in SAP Note 3278780 . This note will be
updated when necessary.

27.10.2022: SP Stack Kernel Schedule Forecast for year 2023


SP Stack Kernel Schedule Forecast is available for year 2023, see SAP Note 3116151.

Be aware that the information contained in this schedule is subject to change. SAP does not guarantee the availability of an SP
Stack Kernel delivery on the speci ed date.

24.08.2022: SAP Kernel 753: RFC_NO_AUTHORITY dumps in bgRFC

This is custom documentation. For more information, please visit the SAP Help Portal 208
1/31/2024
RFC_NO_AUTHORITY dumps may occur after implementing the correction of Note 3127135. Most of the time, they are related
to the user BGRFC_SUPER and to bgRFC scheduler programs.

The following SAP kernel releases are affected starting with the patch levels:

753 #1028 .

For a workaround and solution see SAP Note 3238586.

19.08.2022: SP Stack Kernel 785 PL 200 released


SP Stack Kernel 7 85 PL #2 00 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3231386 .

Information on known issues in the SP Stack Kernel 7 85 PL #2 00 can be found in SAP Note 3237540. This note will be updated
when necessary.

05.08.2022: SP Stack Kernel 781 PL 300 released


SP Stack Kernel 7 81 PL # 3 00 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3226633.

Information on known issues in the SP Stack Kernel 7 81 PL # 3 00 can be found in SAP Note 3232336. This note will be updated
when necessary.

15.07.2022: SP Stack Kernel 777 PL 500 released


SP Stack Kernel 777 PL #500 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3219596.

Information on known issues in the SP Stack Kernel 777 PL #500 can be found in SAP Note 3222117. This note will be updated
when necessary.

11.07.2022: SP Stack Kernel 722 PL 1200 released


SP Stack Kernel 722 PL #1200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3209451.

Information on known issues in the SP Stack Kernel 722 PL #1200 can be found in SAP Note 3209406. This note will be updated
when necessary.

24.05.2022: SP Stack Kernel 749 PL 1100 released

SP Stack Kernel 749 PL #1100 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3194772.

Information on known issues in the SP Stack Kernel 749 PL #1100 can be found in SAP Note 3205002. This note will be updated
when necessary.

08.04.2022: systemd integration for sapstartsrv on Linux


This is custom documentation. For more information, please visit the SAP Help Portal 209
1/31/2024
Starting with SUSE Linux Enterprise Server (SLES) 15, Red Hat Enterprise Linux (RHEL) 8, Oracle Linux 8 and the respective
SAP kernel patch levels, native support for systemd is introduced for SAP systems.

The support is available starting with the following patch levels:


722#1119, 753#1011, 777#441, 781#241, 785#115

For details and correction see SAP Notes


3139184 - Linux: systemd integration for sapstartsrv and SAP Host Agent
3115048 - sapstartsrv with native Linux systemd support

22.03.2022: SP Stack Kernel 753 PL 1000 released


SP Stack Kernel 753 PL #1000 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3155924.

Information on known issues in the SP Stack Kernel 753 PL #1000 can be found in SAP Note 3165434. This note will be updated
when necessary.

11.03.2022 : SP Stack Kernel 7 22 PL 1101 released


The SP Stack Kernel 722 PL #1101 replaces the SP Stack Kernel 722 PL #1100 in order to enable the customers to apply the
prio very high SAP Security Note 3123396 (announced on Patch Day Feb 8th) with an SP Stack Kernel. For details see release
note 3153950.

Customers that do not require the security update mentioned above can keep using SP Stack Kernel 722 PL 1100.

Customers updating the kernel from the lower patch level or release should apply the SP Stack Kernel 722 PL 1101.

Information on known issues in the SP Stack Kernel 7 22 PL # 11 01 can be found in SAP Note 3154223. This note will be updated
when necessary.

28.02.2022 : SP Stack Kernel 78 5 PL 100 released


SP Stack Kernel 78 5 PL #100 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in release note 3148278.

After an extended validation phase SP Stack Kernel 785 PL#100 has been released as a downward compatible kernel (DCK) to
kernel 781 and SAP S/4HANA 2020. Refer to DCK note 3144672 for details on usage of kernel 785 as DCK.

Information on known issues in SP Stack Kernel 78 5 PL #100 can be found in regression note 3154232. This note will be
updated when necessary.

11.02.2022: SAP Web Dispatcher: issue with AS Java backend systems

After implementing the SAP Web Dispatcher patch of Note 3138881 - wdisp/additional_conn_close workaround for security SAP
note 3123396, a severe issue may occur with AS Java backend systems.

The following SAP Web Dispatcher releases are affected starting with the patch levels:
753#920, 777#433, 781#231, 785#073.

For details and correction see SAP Note 3147927 - wdisp/additional_conn_close causes errors for Netweaver AS Java servers.

04.02.2022: RFC may not work in Systems with SNC active in Kernel 785
This is custom documentation. For more information, please visit the SAP Help Portal 210
1/31/2024
In systems with SNC active, application might fail with SNC error: ThSncIn: ThSncSend failed (18 or 10001)

Affected scenarios: It is not predictable when this issue happens.

The following SAP kernel releases are affected: 785 PL #50 - PL #74 .

For details and correction see SAP Note 3145321 - DP: ERROR-SNC-OTHER in ThSncIn as of kernel 785.

29.10.2021: SP Stack Kernel 753 PL 900 released


SP Stack Kernel 753 PL #900 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3107459.

Information on known issues in the SP Stack Kernel 753 PL #900 can be found in SAP Note 3112342. This note will be updated
when necessary.

13.08.2021: SP Stack Kernel 781 PL 200 released


SP Stack Kernel 781 PL #200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3082334.

Information on known issues in the SP Stack Kernel 781 PL #200 can be found in SAP Note 3085121. This note will be updated
when necessary.

26.07.2021: SP Stack Kernel 777 PL 400 released

SP Stack Kernel 777 PL #400 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3075277.

Information on known issues in the SP Stack Kernel 777 PL #400 can be found in SAP Note 3079989. This note will be updated
when necessary.

09.07.2021: SP Stack Kernel 722 PL 1100 released

SP Stack Kernel 722 PL #1100 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3065356.

Information on known issues in the SP Stack Kernel 722 PL #1100 can be found in SAP Note 3075682. This note will be updated
when necessary.

01 .07.2021: SP Stack Kernel 753 PL 801 released


SP Stack Kernel 753 PL #801 is now available on SAP Support Portal. It replaces the SP Stack Kernel 753 PL 800 in order to
enable the customers to apply the prio very high SAP Security Note 3007182 (announced on Patch Day June 8th) with an SP
Stack Kernel. For details on the SP Stack Kernel 753 PL 801 see release note 3066437.

Customers on kernel 753 PL 800 that do not require the above security update can keep using SP Stack Kernel 753 PL 800.

Customers updating the kernel from the lower patch level or release should apply the SP Stack Kernel 753 PL 801.

This is custom documentation. For more information, please visit the SAP Help Portal 211
1/31/2024
Information on known issues in the stack kernel 753 PL #801 can be found in SAP Note 3070652. This note will be updated when
necessary.

14.06.2021: SP Stack Kernel 753 PL 801 in preparation


We are working on the new SP Stack Kernel 753 PL#801 to be delivered in a few weeks.

It will contain the prio very high SAP Security Note 3007182 (announced on Patch Day June 8th) as well as a few further
quali ed corrections. You can use the SP Stack Kernel PL#801 to implement the SAP Security Note 3007182 with an SP Stack
Kernel.

08.06.2021: Simple Transformation regression in SAP Kernel 753, 777, 781 - Solved
SAP Note 3050863 can cause a regression in Simple Transformation applications.

Symptom: A work process is blocked.

Affected scenarios: The regression only occurs if a simple transformation is deleted and automatically generated in the scope of
the same database transaction.

The regression has been solved starting with the following patch levels:
753#822, 777#341, 781#124.

The following SAP kernel releases are affected:


753#820-821, 777#339-340, 781#122-123.

For details and correction see SAP Note 3064721 - Simple Transformation: Wait situation during transformation generation.

25.05.2021: SP Stack Kernel 749 PL 1000 released

SP Stack Kernel 749 PL #1000 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3051786.

Information on known issues in the SP Stack Kernel 749 PL #1000 can be found in SAP Note 3059489. This note will be updated
when necessary.

11.05.2021: SAP Kernel 722: Incorrect Message behaviour in Dynpro-based dialogs


SAP Note 3033149 introduced a regression which causes an incorrect behavior of MESSAGE of type ʻW’ in ABAP programs that
use Dynpro-based dialogs. Once a W-MESSAGE is con rmed by the user, the program continues with the next step of the ow
logic instead of the remaining ABAP instructions that directly follow the MESSAGE statement in the same step of the ow logic.

The following SAP kernel releases are affected starting with the patch levels:

72 2 #1 022, # 102 3

For details and correction see SAP Note 3045700 - Messages of type 'W' are not handled correctly .

06.04.2021: SAP Kernel 773 End of Maintenance


Kernel version 773 is Out of Maintenance starting April 7th 2021. No more kernel patches will be provided for Kernel 773.

Kernel 773 patches are still available for download in the archive area of SAP ONE Support Portal.

This is custom documentation. For more information, please visit the SAP Help Portal 212
1/31/2024
Kernel 777 can be used instead as downward compatible kernel (DCK) for SAP S/4HANA 1809. For details see SAP Notes
2083594 - SAP Kernel Versions and SAP Kernel Patch Levels and 2870484 - Using kernel 7.77 instead of kernel 7.73 .

06.04.2021: SP Stack Kernel 773 PL 400 released


SP Stack Kernel 773 PL #400 is now available on SAP ONE Support portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3017561.

Information on known issues in the SP Stack Kernel 773 PL #400 can be found in SAP Note 3043645. This note will be updated
when necessary.

19.03.2021: New RFC logon ticket can cause incompatibilities

SAP Note 3026990 introduces a new type of RFC logon ticket. It is not possible to use servers with kernels with old and new
ticket in one system. Rolling kernel switch (RKS) is not supported during the kernel update. Possible issues are:

kernel does not start

RKS fails

logon screen for calls with the same system appears

The following SAP kernel releases are affected starting with the patch levels:

721 #1410; 722 #1022; 749 #948; 753 #810; 773 #335; 777 #330; 781 #113.

For details see SAP Note 3026990 .

19.03.2021: SP Stack Kernel 753 PL 800 released


SP Stack Kernel 753 PL #800 is now available on SAP ONE Support portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3017467.

Information on known issues in the SP Stack Kernel 753 PL #800 can be found in SAP Note 3036353. This note will be updated
when necessary.

26.02.2021: SP Stack Kernel 781 PL 100 released

SP Stack Kernel 781 PL #100 is now available on SAP ONE Support portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3017498.

Information on known issues in the SP Stack Kernel 781 PL #100 can be found in SAP Note 3028727. This note will be updated
when necessary.

04.01.2020: SAP Kernel 721 (EXT) End of Maintenance

Kernel versions 721 and 721_EXT is Out of Maintenance starting January 1st 2021. No more kernel patches will be provided for
Kernel 721 (EXT).

Kernel 721 patches are still available for download in the archive area of SAP ONE Support Portal.

This is custom documentation. For more information, please visit the SAP Help Portal 213
1/31/2024
Kernel 722 (EXT, EX2) can be used instead as downward compatible kernel (DCK) for a SAP NetWeaver 7.0, 7.01, 7.02, 7.03, 7.3
and 7.31 64-bit installation. For details see SAP Notes 2083594 - SAP Kernel Versions and SAP Kernel Patch
Levels and 1744209 - SAP Kernel 720, 721 and 722: Versions and Kernel Patch Levels.

04.01.2020: SP Stack Kernel 721 (EXT) PL 1400 released

SP Stack Kernel 721 PL #1400 is now available on SAP ONE Support portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 3003878.

Kernel 721 (EXT) goes out of maintenance with SP Stack Kernel PL 1400. No further kernel patches will be produced. Kernel
721 patches are still available for download in the archive area of SAP ONE Support Portal.
Kernel 722 (EXT, EX2) can be used instead as downward compatible kernel (DCK) for a SAP NetWeaver 7.0, 7.01, 7.02, 7.03, 7.3
and 7.31 64-bit installation. For details see SAP Notes 2083594 - SAP Kernel Versions and SAP Kernel Patch
Levels and 1744209 - SAP Kernel 720, 721 and 722: Versions and Kernel Patch Levels.

Information on known issues in the SP Stack Kernel 721 PL #1400 can be found in SAP Note 3008584. This note will be updated
when necessary.

28.10.2020: SP Stack Kernel 777 PL 300 released

SP Stack Kernel 777 PL #300 is now available on SAP ONE Support portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2976867.

Information on known issues in the SP Stack Kernel 777 PL #300 can be found in SAP Note 2982942. This note will be updated
when necessary.

09.10.2020: Read the "Update Strategy for the Kernel" paper.

The paper Update Strategy for the Kernel of the Application Server ABAP in On Premise Landscapes provides latest SAP
recommendations on how to patch the SAP kernel.

Please make yourself familiar with the SAP recommendations.

10.09.2020: SP Stack Kernel 753 PL 700 released


SP stack kernel 753 PL #700 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2957666.

Information on known issues in the stack kernel 753 PL #700 can be found in SAP Note 2958733. This note will be updated when
necessary.

28.08.2020: Issue with cpic library

The executable igsmux.exe doesn't start or crashes. For details see SAP note 2963158 .

Only customers using IGS are affected.

We are working on the solution for this problem to be delivered soon.

14.08.2020: SP Stack Kernel 773 PL 300 released

SP stack kernel 773 PL #300 is now available on SAP Support Portal.

This is custom documentation. For more information, please visit the SAP Help Portal 214
1/31/2024
It contains various improvements and enhancements that are outlined in detail in SAP Note 2953558.

Information on known issues in the stack kernel 773 PL #300 can be found in SAP Note 2958055. This note will be updated
when necessary.

31.07.2020: Issue with ENQU


After a disp+work update, ABAP sessions might be terminated right after application server start with the error message:
"Session was reset after loss of the lock table".

This is due to incompatible change introduced with SAP note 2938148. Only customers using ENSA 1.0 are affected. For details
see SAP note 2953980.

The affected Kernel versions:

749 PL #913 to #918; 753 #624 to #628; 777 #210 to #215

As solution, ENSA (package ENSERVER) must be also updated with the patch level:

749 PL #913 and higher; 753 #624 and higher; 777 #210 and higher

16.07.2020: SP Stack Kernel 722 EX2 PL 1000 released

New version of Kernel 722, the 722 EX2 Kernel has been released. For further information, including the list of supported
operating systems and database systems, see SAP Note 2880246 - SAP Kernel 722 EX2: General Information and Usage.

SP stack kernel 722 EX2 PL #1000 is now available on SAP Support Portal. It contains various improvements and
enhancements that are outlined in detail in SAP Note 2933443.

Information on known issues in the stack kernel 722 EX2 PL #1000 can be found in SAP Note 2888646. This note will be updated
when necessary.

08.07.2020: SP Stack Kernel 722 PL 1000 released


SP stack kernel 722 PL #1000 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2933443.

Information on known issues in the stack kernel 722 PL #1000 can be found in SAP Note 2888646. This note will be updated
when necessary.

New version of Kernel 722, the 722 EX2 Kernel has been released with PL 920 SAPEXE and SAPEXEDB. 722 EX2 Kernel is
introduced to ensure the support of newer OS and DB versions and newer compiler/runtime environments.
Kernel 722 EX2 can be used as an alternative to the 722 kernel or 722 EXT kernel as well as a downward compatible kernel for
the 720 (EXT) or 721 (EXT) Kernel. For details see SAP Note 2880246 - SAP Kernel 722 EX2: General Information and Usage
However, the SP Stack Kernel 722 EX2 PL 1000 delivery has been postponed because several supported platforms are still in
validation. We will inform you as soon as SP Stack Kernel 722 EX2 PL 1000 is delivered.

29.06.2020: SP Stack Kernel 777 PL 200 released


SP stack kernel 777 PL #200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2936034.

This is custom documentation. For more information, please visit the SAP Help Portal 215
1/31/2024
After an extended validation phase SP stack kernel 777 PL#200 has been released as a downward compatible kernel (DCK) to
kernel 773, refer to SAP Note 2870484 for details on installation and usage of kernel 777 as DCK.

Information on known issues in the stack kernel 777 PL #200 can be found in SAP Note 2936901. This note will be updated
when necessary.

17.06.2020: SP Stack Kernel 753 PL 602 released


SP stack kernel 753 PL #602 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2936065.

SP Stack Kernel 753 PL#602 contains updated version of Microsoft JDBC driver compared to the previous SP Stack Kernels
753 PL 601 and PL 600. Upgrade from SP Stack Kernel PL 601 and PL 600 is only required for customers using MS SQL Server
SAPEXEDB, for details see SAP notes 2906652 and 2937917.

Information on known issues in the stack kernel 753 PL #602 can be found in SAP Note 2936719. This note will be updated when
necessary.

10.06.2020:

SP Stack Kernel 753 PL 601 and PL 600 SAPEXEDB_MSS.SAR revoked


The database speci c Stack Kernel 753 #600 and #601 for MS SQL Server contains a faulty Microsoft JDBC driver. The error in
the driver is described in note 2906652.

The SAP Portal uses a locking mechanism implemented in a DB table. The bug in the Microsoft driver causes a serious issue
preventing the portal code from releasing locks taken. The locking mechanism is widely used in many different areas of
implementation within the Portal. There can be many unpredictable consequences from this.

One such issue is that there is a sporadic failure in the Portal Content Deployment that takes place in the rst start of the
server. This results in a corrupted system where the default objects for Portal iViews and Pages are not created and cause all
the Portal Content to be corrupted.

The affected SAPEXEDB versions have been revoked from SAP Support Portal. We are working on new SP Stack Kernel 753 PL
602 to be delivered soon.

08.06.2020: SP Stack Kernel 749 PL 900 released


SP stack kernel 749 PL #900 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2928252.

Information on known issues in the stack kernel 749 PL #900 can be found in SAP Note 2931628. This note will be updated when
necessary.

02.04.2020: issue with Open SQL


Due to regression, incorrect results may occur in the FETCH CURSOR selection for certain IN ITAB conditions, for details see
SAP Note 2910296.

As a precaution the affected disp+work packages have been revoked from SAP Support Portal and replaced with the previously
available version.

This is custom documentation. For more information, please visit the SAP Help Portal 216
1/31/2024
The affected Kernel versions:

749 PL #828, 773 PL #246, 777 PL #114 and #115

were replaced with the following kernel versions:

749 PL #827, 773 PL #245, 777 PL #113

30 .03.2020: SP Stack Kernel 753 PL 601 released


SP stack kernel 753 PL #601 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2904006. SP Stack Kernel 753
PL#601 contains updated versions of VMC and SAP JAVA connector compared to the previous SP Stack Kernel 753 PL
600. Upgrade from SP Stack Kernel PL 600 is only required for customers using IPC / VMC – and only if SAP
notes 2857796 and 2738207 are relevant.

Information on known issues in the stack kernel 753 PL #601 can be found in SAP Note 2904018. This note will be updated when
necessary.

11.03.2020: SP Stack Kernel 753 PL 600 released


SP stack kernel 753 PL #600 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2892176 .

Information on known issues in the stack kernel 753 PL #600 can be found in SAP Note 2892238 . This note will be updated
when necessary.

Attention: SP Stack Kernel 753 PL 600 contains the same VMC and SAP JAVA Connector versions as the previous SP Stack
Kernel 753 PL 501. The changes from SAP notes 2857796 and 2738207 are not included. An updated SP STACK Kernel 753 PL
601 with current VMC and SAP JAVA Connector versions will be delivered soon.

04.03.2020: Latest SAPFTP patch revoked


There are issues with the latest SAPFTP patch as delivered with SAP Note 2879706. SAPFTP can sometimes get into an in nite
loop, resulting in high CPU and memory consumption and causing the AS ABAP to hang, see SAP Note 2899318.

As a precaution the affected SAPFTP kernel patches have been revoked from SAP Support Portal and replaced with the
previously available version. Should you have the above-mentioned versions installed, you can downgrade SAPFTP as a
workaround to prevent the issue. We are working on new versions of SAPFTP to be delivered soon.

27.02.2020: SP Stack Kernel 777 PL 100 released


SP stack kernel 777 PL #100 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2888530.

After an extended validation phase SP stack kernel 777 PL#100 has been released as a downward compatible kernel (DCK) to
kernel 773, refer to SAP Note 2870484 for details on installation and usage of kernel 777 as DCK.

Information on known issues in the stack kernel 777 PL #100 can be found in SAP Note 2890635. This note will be updated when
necessary.

This is custom documentation. For more information, please visit the SAP Help Portal 217
1/31/2024

12.02.2020: SP Stack Kernel 753 PL 501 released


SP stack kernel 753 PL #501 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2876647. Most prominently a x for
a security vulnerability described in SAP Note 2870067 and xes possible data corruption in SAPHTTP and SAPFTP as
described in SAP Note 2862097.

Information on known issues in the stack kernel 753 PL #501 can be found in SAP Note 2879708. This note will be updated when
necessary.

04.10.2019: SP Stack Kernel 773 PL 201 released

SP stack kernel 773 PL #201 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2842386.

Information on known issues in the stack kernel 773 PL #201 can be found in SAP Note 2844519. This note will be updated when
necessary.

01.10.2019: SP Stack Kernel 722 PL 900 released

SP stack kernel 722 PL #900 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2839679.

Information on known issues in the stack kernel 722 PL #900 can be found in SAP Note 2843955. This note will be updated
when necessary.

04.09.2019: SP Stack Kernel 753 PL 500 released

SP stack kernel 753 PL #500 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2822875.

Information on known issues in the stack kernel 753 PL #500 can be found in SAP Note 2823672. This note will be updated when
necessary.

23.07.2019: SP Stack Kernel 773 PL 200 released


SP stack kernel 773 PL #200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2807671.

Information on known issues in the stack kernel 773 PL #200 can be found in SAP Note 2812273. This note will be updated when
necessary.

26.06.2019: issue with saplikey when provisioning SAP systems


When provisioning SAP systems on Windows platforms, saplikey might fail to provide temporary licenses if the HANA db is
accessed via SSL.

The affected Kernel versions

773 PL #100, 753 PL #400, 749 PL #700

This is custom documentation. For more information, please visit the SAP Help Portal 218
1/31/2024
were replaced with the following kernel versions:

773 PL #101, 753 PL #401, 749 PL #701

See SAP Notes 2784500 regarding SWPM issue and 2781974 regarding saplikey issue.

22.05.2019: issue in OK code handling


Due to a regression in OK code handling, a GUI window could not be closed via the window close button or a window close
keyboard shortcut, e.g. Alt-F4.
Instead it can only be closed via the GUI menu: System > Close GUI Window.

This issue affects following Kernel versions:

773 PL #123 - #123


753 PL #418 - #420
749 PL #711 - #713
722 PL #813 - #813
721 PL #1217 - #1218

See SAP Note 2796018 for further details.

03.05.2019: issue in transaction code handling


Under certain circumstances calling a transaction with OK code "/Nxxx" might fail with message "Function code cannot be
selected".

This issue affects following Kernel versions:

721 PL #1210 - #1216


722 PL #719 - #812
745 PL since #830 (End of Maint.)
749 PL #620 - #710
753 PL #316 - #417
773 PL #32 - #122

See SAP Note 2786818 for further details.

03.05.2019: SP Stack Kernel 749 PL 700 released


SP stack kernel 749 PL #700 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2779511.

Information on known issues in the stack kernel 749 PL #700 can be found in SAP Note 2779764. This note will be updated
when necessary.

24.04.2019: SP Stack Kernel 745 PL 900 released


The last SP stack kernel for the 745 kernel has been released. Kernel 745 PL #900 can be downloaded from the archive area of
SAP Software Download Center. Refer to SAP Note 2765380 for information on xes included in this stack kernel.

Information on known issues in the stack kernel 745 PL #900 can be found in SAP Note 2765420. This note will be updated
when necessary.

This is custom documentation. For more information, please visit the SAP Help Portal 219
1/31/2024
Kernel 745 has reached its end of maintenance, see SAP Note 1969546 for details.

24.04.2019: SP Stack Kernel 722 PL 800 released

SP stack kernel 722 PL #800 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2772968.

Information on known issues in the stack kernel 722 PL #800 can be found in SAP Note 2777125. This note will be updated when
necessary.

13.03.2019: SP Stack Kernel 753 PL 400 released

SP stack kernel 753 PL #400 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2752112.

Information on known issues in the stack kernel 753 PL #400 can be found in SAP Note 2764527. This note will be updated
when necessary.

16.01.2019: severe issue in Kernel 753 PL 321 with memory management

Due to an issue in dynamic assignment of memory, work processes might die with a core dump.

This issue affects only Kernel 753 PL #321, which was removed from SAP Support Portal by now.

See SAP Note 2741853 for further details.

17.12.2018: SP Stack Kernel 753 PL 300 released

SP stack kernel 753 PL #300 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2699298.

Information on known issues in the stack kernel 753 PL #300 can be found in SAP Note 2701459. This note will be updated when
necessary.

26.10.2018: SP Stack Kernel 722 PL 700 released


SP stack kernel 722 PL #700 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2691532.

Information on known issues in the stack kernel 722 PL #700 can be found in SAP Note 2699180. This note will be updated when
necessary.

26.10.2018: SP Stack Kernel 749 PL 600 released


SP stack kernel 749 PL #600 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2690088.

Information on known issues in the stack kernel 749 PL #600 can be found in SAP Note 2690320. This note will be updated
when necessary.

This is custom documentation. For more information, please visit the SAP Help Portal 220
1/31/2024

03.08.2018: ICM/Web Dispatcher: issue in Kernel 749 and 753 with Firefox 62 when
using HTTP/2

Mozilla Firefox browser as of version 62 Beta and higher fails to connect to ICM or Web Dispatcher if HTTP/2 is enabled by
pro le parameter "icm/HTTP/support_http2 = true".
See SAP Note 2674166 for details.

25.07.2018: SP Stack Kernel 745 PL 800 released


SP stack kernel 745 PL #800 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2666684.

Information on known issues in the stack kernel 745 PL #800 can be found in SAP Note 2672871. This note will be updated when
necessary.

29.06.2018: severe issue in gwrd


Gateway process start might fail with "invalid ni_hdl -1 in dev_rd" message under certain circumstances.

This issue affects following Kernel versions:

745 PL #725
749 PL #516 - #517
753 PL #213 - #215

These Kernels have been removed from SAP Support Portal.

See SAP Note 2662337 for further details.

15.06.2018: SP Stack Kernel 753 PL 201 released


SP stack kernel 753 PL #201 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2650112.

Information on known issues in the stack kernel 753 PL #201 can be found in SAP Note 2650008. This note will be updated when
necessary.

14.06.2018: severe issue in Kernel 753, 749 and 745 with RFC connections
When a system is under high load RFC connections might fail sometimes with a "wrong appc header version (202)" message.

This issue affects following Kernel versions:

745 PL #722 - #724


749 PL #513 - #515
753 PL #211 - #212

These Kernels have been removed from SAP Support Portal.

See SAP Note 2656323 for further details.

04.06.2018: SP Stack Kernel 753 PL 200 released

This is custom documentation. For more information, please visit the SAP Help Portal 221
1/31/2024
SP stack kernel 753 PL #200 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2637769.

Information on known issues in the stack kernel 753 PL #200 can be found in SAP Note 2647262. This note will be updated when
necessary.

04.05.2018: SP Stack Kernel 749 PL 500 released


SP stack kernel 749 PL #500 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2626990.

Information on known issues in the stack kernel 749 PL #500 can be found in SAP Note 2627202. This note will be updated
when necessary.

13.04.2018: SP Stack Kernel 722 PL 600 released


SP stack kernel 722 PL #600 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2621595.

Information on known issues in the stack kernel 722 PL #600 can be found in SAP Note 2621576. This note will be updated when
necessary.

20.03.2018: Kernel 753 Released as DCK to Kernels 740, 741, 742, 745 and 749
After an extended validation phase SP stack kernel 753 PL#100 has been released as a downward compatible kernel (DCK) to
kernels 749, 745, 742, 741, 740.

Kernel 753 PL#100 can be used instead of these kernels with SAP NetWeaver 7.4. SP 02 or higher.

Refer to SAP Note 2556153 for details on installation and usage of kernel 753 as DCK.

The release roadmap for 74* and 75* kernels is presented in SAP Note 1969546.

06.03.2018: SP Stack Kernel 745 PL 700 released

SP stack kernel 745 PL #700 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2596010.

Information on known issues in the stack kernel 745 PL #700 can be found in SAP Note 2596019. This note will be updated when
necessary.

22.02.2018: issue in recent Message Server

Message Server might hang when acting as https loadbalancer, for details see SAP Note 2603960

Affected message server patches:

722 PL 412 - PL 517 (including)


749 PL 417 - PL 422 (including)

04.01.2018: SP Stack Kernel 722 PL 500 released


This is custom documentation. For more information, please visit the SAP Help Portal 222
1/31/2024
SP stack kernel 722 PL #500 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2569597.

Information on known issues in the stack kernel 722 PL #500 can be found in SAP Note 2575639. This note will be updated when
necessary.

02.01.2018: severe issue in Kernel 753 and 749 with Q/T/Bg-RFC


Due to RFC protocol issue, Q/T/Bg-RFC calls to other servers with older kernels or to an external program might fail.

This issue affects Kernel 749 PL #412 - 749 PL #414 and 753 PL #32 - 753 PL #33. These Kernels have been removed from SAP
Support Portal.

See SAP Note 2584105 for further details.

21.12.2017: SP Stack Kernel 749 PL 401 released


SP stack kernel 749 PL #401 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2573063.

Information on known issues in the stack kernel 749 PL #401 can be found in SAP Note 2573056. This note will be updated when
necessary.

21.12.2017: issues in CommonCryptoLib 8.5.16 and 8.5.17


With CCL 8.5.16 the decryption of SSF encrypted data may fail if multiple recipients are speci ed (see SAP Note 2569032).
With CCL 8.5.17 the reading of SSF parameters may not work (see SAP Note 2568948) which might lead to logon group issues
(see SAP Note 2570870).
The following SP Stack Kernels are affected:

Kernel 749 PL #400

As a workaround you can update CommonCryptoLib to 8.5.18. See SAP Note 2557616 for further details.

17.10.2017: ICM / WebDispatcher issue in 749

With Kernel 749 PL 217 till 315 (including) ICM / WebDispatcher has issues detecting broken https connections. For details see
SAP Note 2531833.

29.09.2017: SP Stack Kernel 745 PL 600 released

SP stack kernel 745 PL #600 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2531561.

Information on known issues in the stack kernel 745 PL #600 can be found in SAP Note 2531526. This note will be updated on a
regular basis.

13.09.2017: New Kernel Archive SAPWEBGUI.SAR


A new kernel archive, SAPWEBGUI.SAR, is now available, which allows you to update UI components that are shipped together
with the SAP kernel (SAP GUI for HTML/WebGUI/ITS) selectively without exchanging any other kernel component.

This is custom documentation. For more information, please visit the SAP Help Portal 223
1/31/2024
SAPWEBGUI.SAR is currently available for the 749 kernel version and is supported with stack kernel 749 PL#300 or newer. See
SAP Note 2412840 for the further support and installation information.

05.09.2017: issues in sapxpg


Due to an incompatibility in Kernel 749, a call of an external command with SAPXPG may fail, if Kernel 749 is used with SAP NW
ABAP versions < 7.51. To x the issue, SAP Note 2443381 has to be applied. This error does not occur if you use SAP NetWeaver
7.40 SP18 or higher and SAP NetWeaver 7.50 SP08 or higher. Please check this SAP note carefully to see whether this issue
applies in your environment.

Another minor regression might lead to failing connection tests with SAPXPG even though the execution of external commands
will work. This issue affects Kernel 749 PL #210 - 749 PL #301 and Kernel 745 PL #415 - PL #500. Exchanging the SAPXPG
program with a xed version will resolve the issue. For further details, see SAP Note 2479738.

14.08.2017: SP Stack Kernel 722 PL 400 released


SP stack kernel 722 PL #400 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2513476.

Information on known issues in the stack kernel 722 PL #400 can be found in SAP Note 2513278. This note will be updated on a
regular basis.

11.08.2017: SP Stack Kernel 749 PL 301 released


SP stack kernel 749 PL #301 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2514637.

Information on known issues in the stack kernel 749 PL #301 can be found in SAP Note 2514778. This note will be updated on a
regular basis.

11.08.2017: severe issue in Open SQL "IN ITAB" condition

Due to a wrong optimization in the "IN ITAB" condition which might lead to empty results, the following kernel versions have
been removed from SAP Support Portal

Kernel 749 PL #310

Kernel 749 PL #311

Other kernel releases or patches are not affected. See SAP Note 2516910 for further details.

03.08.2017: severe issue in sapstartsrv


Due to sapstartsrv crashing under certain conditions in GetInstanceProperties call, the following kernel versions have been
removed from SAP Support Portal:

Kernel 721 PL #913

Kernel 745 PL #516

Other kernel releases or patches are not affected. See SAP Note 877795 item 129 for further details.

17.07.2017: SP Stack Kernel 749 PL 300 released


This is custom documentation. For more information, please visit the SAP Help Portal 224
1/31/2024
SP stack kernel 749 PL #300 is available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2494149.

Information on known issues in the stack kernel 749 PL #300 can be found in SAP Note 2497937. This note will be updated on a
regular basis.

13.06.2017: SP Stack Kernel 721 PL 900 released


SP stack kernel 721 PL #900 is available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2483549.

Information on known issues in the stack kernel 721 PL #900 can be found in SAP Note 2487315. This note will be updated on a
regular basis.

31.05.2017: SP Stack Kernel 745 PL 500 released


SP stack kernel 745 PL #500 is available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2469219.

Information on known issues in the stack kernel 745 PL #500 can be found in SAP Note 2469240. This note will be updated on a
regular basis.

12.05.2017: Kernel 749 PL 215 revoked

Kernel 749 PL #215 has been revoked from SAP Support Portal due to work process termination issues when starting a report
from ABAP in Eclipse.

See SAP Note 2471854 for further details.

The x is contained in PL 216 that is now available on SAP Support Portal.

12.05.2017: SP Stack Kernel 742 PL 500 released

SP stack kernel 742 PL #500 is available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2441260.

Information on known issues in the stack kernel 742 PL #500 can be found in SAP Note 2441356. This note will be updated on a
regular basis.

12.05.2017: SP Stack Kernel 722 PL 300 released

SP stack kernel 722 PL #300 is available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2448466.

Information on known issues in the stack kernel 722 PL #300 can be found in SAP Note 2448512. This note will be updated on a
regular basis.

27.03.2017: Kernel 745 maintenance extension

This is custom documentation. For more information, please visit the SAP Help Portal 225
1/31/2024
To enable our customers a better long term planning, maintenance of the SAP Kernel 745 has been extended by one year. This
means that maintenance for the SAP Kernel 745 will last until end of Q1 2019, regular patches will be provided until that date.

Please note that you may well use SAP Kernel 745 beyond that date. Only corrections will be provided through another kernel
version (SAP Kernel 749 for now) which is 100% compatible.

For an overview of Kernel maintenance schedules see SAP Note 1969546.

03.03.2017: issue with SAPHTTP in 749

Potentially severe issue with saphttp executable which is part of kernel 749. For details, workaround and solution, please see
SAP Note 2436809.

06.02.2017: SP Stack Kernel 745 PL 400 released


SP stack kernel 745 PL #400 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2417597.

Information on known issues in the stack kernel 745 PL #400 can be found in SAP Note 2417518. This note will be updated on a
regular basis.

25.01.2017: SP Stack Kernel 722 PL 202 released


SP stack kernel 722 PL #202 is now available on the SAP Support Portal.

It xes the UNC path issue on Windows (see SAP Note 2408109) and issues with ABAP time stamps (see SAP Note 2332373
and 2401291) as well as issues described in SAP Notes 2388944 and 2386655. For further information please check out the
release note 2408623.

Information on known issues in the stack kernel 722 PL #202 can be found in SAP Note 2408598. This note will be updated on a
regular basis.

Please note, SP Stack Kernel 722 PL 202 is a successor of 722 PL 201 and lower patch levels. In case you are on PL 210 or
higher, PL 202 would be a partial downgrade.

11.01.2017: Kernel 720, 721, 722, 740 and 741 - UNC path issue on Windows
When using UNC paths, the automatic import of pro les in transaction RZ10 might not work properly. Furthermore, an error
might occur during upgrade phase MAIN_UPTRANS/REFRESH_PROFILES. For details see SAP Note 2408109.

This issue is xed with Kernel 721 PL 810 or 722 PL 221 or starting Kernel 742.

In addition, SP Stack Kernel 721 PL 801 xing this issue was released. For details see Release Note 2410068.
A new SP Stack Kernel 722 PL 202 is in preparation.

As Kernel 720, 740 and 741 are no longer maintained, there won't be any xes. Please use corresponding downward compatible
kernel.

11.01.2017: SP Kernel 721 PL 801 released


SP stack kernel 721 PL #801 is now available on SAP Support Portal.

It contains various improvements and enhancements that are outlined in detail in SAP Note 2410068.

This is custom documentation. For more information, please visit the SAP Help Portal 226
1/31/2024
Information on known issues in the stack kernel 721 PL #801 can be found in SAP Note 2410067. This note will be updated on a
regular basis.

10.01.2017: Runtime Error MOVE_TO_LIT_NOTALLOWED_NODATA with Kernel 745


and 749
SAP Kernel 7.45 and higher enforces read-only access to ABAP method input parameters more strictly than previous kernel
versions.

This may cause runtime errors of type MOVE_TO_LIT_NOTALLOWED_NODATA to occur in ABAP programs where they didn't
occur with previous kernel versions.
A kernel patch that restores the old behavior for NW version 7.40 will be released within the next few days. For details see SAP
Note 2312807. As an alternative and in case you are already using kernel version 7.45 or higher, ABAP corrections are available
for most common issues, refer to SAP Notes 2117573, 2111563 and 2267164.

29.11.2016: SP Stack Kernel 722 and 745 updated


SP Stack Kernel 722 PL 201 and 745 PL 301 are available on the SAP Support Portal.

They contain xes for a number of regressions within their predecessors.


For details see SAP Note 2389216 (Release Note 722 PL 201) and SAP Note 2389206 (Release Note 745 PL 301).

23.09.2016: SP Stack Kernel 722 PL 200 released


SP stack kernel 722 PL #200 is now available on SAP Support Portal.
It contains various improvements and enhancements that are outlined in detail in SAP Note 2361561.

Information on known issues in the stack kernel 722 PL #200 can be found in SAP Note 2360502. This note will be updated on a
regular basis.

23.09.2016: SP Stack Kernel 745 PL 300 released

SP stack kernel 745 PL #300 is now available on SAP Support Portal.


It contains various improvements and enhancements that are outlined in detail in SAP Note 2361598.

Information on known issues in the stack kernel 745 PL #300 can be found in SAP Note 2360459. This note will be updated on a
regular basis.

08.09.2016: Kernel 745 – System message reports that Oracle 11 version is not
supported

Unfortunately, due to an error in the dbsl library (Oracle only) the system reports a SICK message, saying that the current
Oracle version is not supported by the kernel. This SICK message is wrong and can be ignored. This happens for lib_dbsl patches
213 -217. A forthcoming patch for the lib_dbsl will avoid this message.
Please refer to SAP note 2363994 for details.

19.08.2016: Issue with periodic tasks in Kernel 74x after DB outage or offline
backup
After the Database was not available, periodic tasks like LoadBalancing update or Batch-Scheduler might stuck.
A Kernel patch for Kernel 745 can be expected on Monday. Kernel 742 follows later next week.
For details and workaround see SAP Note 2356238

15.07.2016: SP Stack Kernel 745 PL 201 released


This is custom documentation. For more information, please visit the SAP Help Portal 227
1/31/2024
SP stack kernel 745 PL #201 is now available on SAP Support Portal.
It xes two important regressions, which affected all previous Kernel 745 versions lower than PL 211 (excluding 201). Details are
outlined in SAP Note 2340627.

Information on known issues in the stack kernel 745 PL #201 can be found in SAP Note 2341597. This note will be updated on a
regular basis.

17.06.2016: SP Stack Kernel 745 PL 200 released

SP stack kernel 745 PL #200 is now available on SAP Support Portal.


It contains various improvements and enhancements that are outlined in detail in SAP Note 2299971.

Information on known issues in the stack kernel 745 PL #200 can be found in SAP Note 2317428. This note will be updated on a
regular basis.

16.06.2016: NW 7.4 upgrade issues on Windows


1. when common crypto lib starting 8.4.31 till (including) 8.4.34 is in place, upgrade runs into error. For details see item 4 in SAP
Note 2200230.

2. On Windows 2008 (w/o R2) on Haswell CPU the SAP Kernel 745 can crash. For details see SAP Note 2330836.

15.06.2016: Kernel 742 PL 414 is not a SP Stack Kernel


By mistake SAPEXE and SAPEXEDB archives have been available for Kernel 742 PL 414 on the support portal for a short time.
As PL 414 is supposed to be only a regular patch (and not a stack kernel for which SAPEXE, SAPEXEDB will be published), these
packages have been revoked meanwhile and replaced by the corresponding DW packages. Sorry for any inconvenience this may
have caused.

14.06.2016: SP Stack Kernel 742 PL 401 released


SP stack kernel 742 PL #401 is now available on SAP Support Portal. It xes several known issues with the previous version PL
400. For details see SAP Note 2324879.

Information on known issues in the stack kernel 742 PL #401 can be found in SAP Note 2324928. This note will be updated on a
regular basis.

07.06.2016: SP Stack Kernel 721 PL 700 released


SP stack kernel 721 PL #700 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in SAP Note 2316471.

Information on known issues in the stack kernel 721 PL #700 can be found in SAP Note 2316429. This note will be updated on a
regular basis.

18.05.2016: Kernel 722 PL 118 and 742 PL 412 revoked


There are issues with the RFC delta manager inside the kernel. External clients may get stuck. As a precaution the affected
kernel patches have been revoked from ServiceMarketPlace. The correction causing the issue has been retracted. A new
version of Kernel 722 PL 118 with compile time on May 19th as well as Kernel 742 PL 413 has been published.

28.04.2016: SP Stack Kernel 742 PL 400 released


SP stack kernel 742 PL 400 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in Note 2300406.
This is custom documentation. For more information, please visit the SAP Help Portal 228
1/31/2024
Information on known issues in the stack kernel 742 PL 400 can be found in Note 2294986. This note will be updated on a
regular basis.

14.04.2016: WebGUI issue with Google Chrome Version 50


After updating Google Chrome from Version 49 to Version 50 the Easy Access Menu (start screen) remains empty. We are
working on a kernel patch to circumvent this. For details see SAP Note 2305778.

12.04.2016: Potential Issue with Kernel 742 PL 311 - 321 and Kernel 745 PL 25 - 35
In edge cases a select statement may return an unexpected result. For details see SAP Note 2273425.
It is recommended to upgrade to SP Stack Kernel 745 PL 100 or Kernel 742 PL 329 which is the last release candidate before
the upcoming SP Stack Kernel 742 PL 400.

17.03.2016: Kernel 745 Released as DCK to Kernels 740, 741 and 742

After an extended validation phase kernel 745 PL#100 has been released as a downward compatible kernel (DCK) to kernels
742, 741 and 740 and can be used instead of these with SAP NetWeaver 7.4. Refer to SAP Note 2251972 for details on installation
and usage of kernel 742 as DCK. The release roadmap for 74* kernels is presented in SAP Note 1969546.

17.03.2016: SP Stack Kernel 722 PL 101 released


SP stack kernel 722 PL #101 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in Note 2292019.

Information on known issues in the stack kernel 722 PL #101 can be found in Note 2292017. This note will be updated on a
regular basis.

18.12.2015: SAP Kernel 721 PL 618 and SAP Kernel 722 PL 20 and PL 21 revoked

As a precaution the Kernel (dw.sar) for 721 PL 618 and 722 PL 20 and 21 have been revoked from the SAP Support Portal.

For further details see SAP Note 2259736 . We are working a patch highest priority.

13.11.2015: Heads up on Kernel 745 for NetWeaver 7.4


During Q1/2016 SAP Kernel 745 will be made available as Downward Compatible Kernel for SAP NetWeaver 7.4.

SAP Kernel 745 will eventually succeed SAP Kernel 742 (and 741 and 740).

SAP Kernel 742 will be retired in Q1/2017, one year later than the availability of SAP Kernel 745 as DCK. No more patches will be
provided for SAP Kernel 742 after that date.

See also Understanding Kernel Releases for the SAP NetWeaver AS ABAP and SAP Note 1969546 - Release Roadmap Kernel
740

09.11.2015: SP Stack Kernel 742 PL#300 Released

SP stack kernel 742 PL #300 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in SAP Note 2237353.

Information on known issues in the stack kernel 742 PL #300 can be found in SAP Note 2231749. This note will be updated on a
regular basis.

16.10.2015: Kernel 722 PL14, PL15 and enserver PL 14 revoked


This is custom documentation. For more information, please visit the SAP Help Portal 229
1/31/2024
As a precaution Enqueue Server 722 PL 14 (enserver.sar) and Kernel (dw.sar) 722 PL 14 and PL 15 have been revoked from the
SAP Support Portal.
The new patch of the Enqueue Server might not be 100% compatible to older clients (e.g. disp+work PL 13) and the newer
disp+work starting PL 14 might not be 100% compatible with old Enqueue Servers (prior patch 14). Standard operations Enque,
Dequeue and DequeueAll are NOT affected. Details can be found in SAP Note 2239931

13.10.2015: SP Stack Kernel 721 PL#600 Released

SP stack kernel 721 PL #600 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in SAP Note 2214191.

Information on known issues in the stack kernel 721 PL #600 can be found in SAP Note 2214680. This note will be updated on a
regular basis.

02.10.2015: issue with Oracle lib_DBSL 722 PL 13


Please do not use patch 13 for the 722 Oracle lib_DBSL

Further details can be found in note 2220724. A x is expected early next week.

14.09.2015: SP Stack Kernel 741 PL#300 Released


The last SP stack kernel for the 741 kernel version has been released today. Kernel 741 PL #300 can be downloaded from the
archive area of SAP Support Portal. Refer to release note 2207362 for information on xes included in this stack kernel.

As announced previously, kernel 741 has reached its end of maintenance, see note 1969546 for more detail. Future 74* kernel
corrections will be delivered through 742 kernel patches.

08.07.2015: SP Stack Kernel 742 PL#200 Released

SP stack kernel 742 PL #200 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in Note 2178917.

Information on known issues in the stack kernel 742 PL #200 can be found in Note 2176515. This note will be updated on a
regular basis.

07.07.2015 SAP Kernel 741 maintenance


The SAP Kernel 741 reached its end of maintenance, see note 1969546 . We will continue to deliver regression xes during July
and a nal stack kernel 741 PL#300 in August. After that corrections will be delivered through kernel 742 patches.

12.06.2015 SAP Kernel Archive

SAP Kernels which are out of maintenance like SAP Kernel 720 can be found in the archive
https://support.sap.com/software/patches/archive.html

For SAP Kernel 720 the last version is patch level 800. Please read the release note 2158874 - SAP Support Package Stack
Kernel 7.20 (EXT) Patch Level 800 . Corresponding note for regression found in the future is 2138737 .

20.05.2015 SAP Kernel 722 Released


SAP kernel 722 has been released for customers today. The rst shipment (Kernel 722 PL#4) can now be downloaded from SAP
Support Portal. With this a new release cycle has been established for 72X kernel versions that can be used with all SAP
NetWeaver releases 7.00-7.31:

This is custom documentation. For more information, please visit the SAP Help Portal 230
1/31/2024

Kernel 720 reached its end of maintenance, no further corrections will be provided for this
kernel version

Kernel 721 becomes the standard kernel containing only corrections/bug xes

Kernel 722 replaces Kernel 721 in its role as Innovation Kernel. Besides regular corrections, new
features/enhancements/improvements will be delivered with Kernel 722.

Refer to SAP Note 2133909 for general information on Kernel 722 including new features and current limitations. This note will
be updated on regular basis.

Kernel 722 can be applied manually as a kernel patch, see Note 2115344 - Installation of Kernel 722 (EXT) for detailed
instructions. Options to apply Kernel 722 during upgrade/update are outlined in Note 2133909.

04.05.2015: SP Stack Kernel 721 PL#500 Released


A new SP stack kernel 721 PL #500 is now available on SAP Support Portal.

SAP Note 2158856 contains the list of changes and enhancements introduced in this stack kernel compared to the previous
stack kernel PL #402.

All regressions known in the PL #402 have been xed.

Review SAP Note 2155366 for known issues in the stack kernel 721 PL #500. This note will be continuously updated.

14.04.2015: Kernel 742 Released as DCK to Kernels 740 and 741

After an extended validation phase kernel 742 PL#101 has been released as a downward compatible kernel (DCK) to kernels 741
and 740 and can be used instead of these with SAP NetWeaver 7.4. Refer to Note 2128122 for details on installation and usage of
kernel 742 as DCK. The release roadmap for 74* kernels is presented in Note 1969546.

31.03.2015: SP Stack Kernels 741 PL#201 and 742 PL#101 are delivered
As announced previously, SP Stack kernels for 741 and 742 kernel versions have been updated. 741 PL#201 replaces 741 PL#200
and 742 PL#101 replaces 742 PL#100. New SP stack kernels can be now downloaded from SAP Support Portal, following xes
are included:

Regression in the Oracle DBSL Library (Note 2118448, Point 2 - Termination during secondary
database connection; LRAW length error) is removed.

CommonCryptoLib has been updated to the version 8.4.35 (see Note 2134460.)

For more details on 741 PL#201 refer to Notes 2150081 - SAP Support Package Stack Kernel 7.41 Patch Level 201 and 2100429 -
Known regressions in kernel 7.41 patch level 201.

Fixes and enhancements in the SP stack kernel 742 PL#101 are listed in the note 2145156. Information on known issues with this
stack kernel can be found in the Note 2134238.

19.03.2015: Update on SP Stack Kernels 741 PL#200 and 742 PL#100


The latest SP stack kernels 741 (PL#200) and 742 (PL#100) contain a regression in the Oracle DBSL Library, see Note 2118448
-Termination during secondary database connection; LRAW length error , Point 2.
This is custom documentation. For more information, please visit the SAP Help Portal 231
1/31/2024
As a solution you may use the latest ORA lib_dbsl available on SAP Support portal. For kernel 741 on Windows, please be aware
of the issue 2142073 - Application server in Windows NT with Oracle does not start.

Updated stack kernels will be provided as soon as possible.

11.03.2015: SP Stack Kernel 721 PL#402 Released


SP Stack kernel 721 PL #402 has been released and can be downloaded from SAP Support Portal. The issues from PL#400
(Note 2118382) and PL#401 (Note 2138260) are xed.

Refer to Note 2138680 - SAP Support Package Stack Kernel 7.21 (EXT) Patch Level 402 for overview of new features,
enhancements and improvements added since PL#300. Known regressions are documented in Note 2138678.

09.03.2015: SP Stack Kernel 742 PL#100 Released


SP stack kernel 742 PL #100 is now available on SAP Support Portal. It contains various improvements and enhancements that
are outlined in detail in Note 2136550.

Information on known issues in the stack kernel 742 PL #100 can be found in Note 2129327. This note will be updated on regular
basis.

04.03.2015: SP Stack Kernel 721 PL#401 Revoked


SP Stack kernel 721 PL #401 has been revoked from SAP Support Portal for all platforms except for MS Windows because the
kernel archives contained some les with wrong versions.

In most cases it is not necessary to replace the kernel in a system running with PL#401 because the issue has a limited impact
and does not affect the kernel itself. Details are outlined in Note 2138260.

SP stack kernel PL#402 will be released as soon as possible; this document will be updated accordingly.

06.02.2015: SP Stack Kernel 741 PL#200 Released


A new SP stack kernel 741 PL #200 has been released today and can be downloaded from SAP Support Portal.

For a summary of enhancements and improvements included into this stack kernel, see SAP Note 2101802 - SAP Support
Package Stack Kernel 7.41 Patch Level 200.

30.01.2015: SP Stack Kernel 721 PL#401 Replaces PL#400


Current SP stack kernel 721 PL#400 has been replaced with PL#401, see Note 2121693 - SAP Support Package Stack Kernel
7.21 (EXT) Patch Level 401.

It xes a le permission issue that has a very limited impact:

It occurs with 721_EXT kernel on Windows platforms only


This is custom documentation. For more information, please visit the SAP Help Portal 232
1/31/2024

It has no effect at runtime, only for future system maintenance

Workaround is easy.

This means: even if above criteria apply, it is not always necessary to replace already installed 721 kernel PL#400. Refer to Note
2118382 for more information.

Note 2084437 contains the list of known regressions in the stack kernel 721 PL #401. This note will be continuously updated.

SAP License

To use your SAP software legally and in accordance with the contractual stipulations, SAP Systems can only be operated with a
license key (license keycode) granted by SAP.

Wiki Documentation

License Administration at Operating System Level with Program saplikey

SLICENSE: License with new installation number cannot be installed

Flexible License Mechanism communication process

Relevant SAP notes FAQ

355536 - Importing a SAP license from a le How to limit the size of a developer trace le

Why does the license installation fail


174911 - Determining the hardware key
(customer key)

1512766 - Most common reasons for error


message: "Logon not possible (error in
license check)"

193800 - saplicense: Trace functions

FAQ License

Client-Server Technology - License FAQ

How to limit the size of a developer trace le

This is custom documentation. For more information, please visit the SAP Help Portal 233
1/31/2024

Why does the license installation fail

Why does the license installation fail


Why does the license installation fail?

There can be several reasons a license installation might fail. Please check the following
SAP licenses are bound to the SID, the database vendor and the hardware of the system they are
given for. Check if your license data really matches the properties of your system. If it doesn't
match, you might have ordered a license for the wrong system or your system data maintained
in the service market place is improper (please focus especially on the database vendor).

Check if you use the proper way of installing the license. With NetWeaver release 6.40 SAP
introduced a new eld within the SAP license, the system number. If your license has a system
number in it you have to specify it, when installing the license. If your license doesn't have a
system number, just leave the according eld empty.

With NetWeaver release 7.00 SAP introduced a new license type called "digitally signed licenses".
Licenses of that type must be installed differently than licenses of the old type. Please be sure
about having pressed the "New licenses" button in transaction SLICENSE before installing
licenses of the new type. There is no way to install digitally signed licenses with the saplicense
program from the operating system command line.

With NetWeaver release 7.10 the different license types are shown in separate tabs of
transaction SLICENSE. You must have activated the correct tab to install licenses of the new
digitally signed type. Licenses of the old type cannot be installed from 7.10 on.

Flexible License Mechanism communication process

Purpose
This is custom documentation. For more information, please visit the SAP Help Portal 234
1/31/2024

Clari cation about the communication process between the Message Server and the ID generator

Overview

The Flexible License Mechanism is explained in this link of help documentation

Basically, the Message Server uses an ID generator, which is implemented in the SAPHostControl. To
enable this process, it is required to set the parameter slic/netid_servers to the hosts running the
SAPHostControl in the pro le of Message Server. Additional details in this link documentation.

Flexible License Mechanism can be used on both, ABAP and Java systems.

The goal of this Wiki is explain in more details the communication process between Message Server
and the ID generator with the collect intervals times made in distinct scenarios.

Communicaiton Flow

There are two threads involved in the process, the rst one has different behaviors as per the current
situation of communication with the ID generator.

1. The communication with ID generator works since the start up:

If the communication with the ID generator is working, the next connection try will varies in intervals
between 1 to 2 hours each. There is a random time control;

2. No communication with the ID generator since the start up:

In such scenario, the thread will try to communicate with the ID generator every 5 minutes until a
success connections. At the time the communication succeed, the interval change as explained in the
scenario 1;

3. The communication works but is lost after a while:

If the connection is successful and the Key is received, however, it is lost after a while, the interval will
keep happening in a random time as explained in scenario 1 during the next 24 hours (glace period). If
no connection with the ID generator in the interval of these 24 hours, the connection interval will start
to happen every 5 minutes as explained in the scenario 2. After a success connection, the interval will
be back to the random time as explained in scenario 1;

The second thread is used to de ne if the Key in use will came from the ID generator or from the local
Message Server HW Key. This second thread runs every 24 hours. Basically, the Key in use is de ned
in the following scenarios:

This is custom documentation. For more information, please visit the SAP Help Portal 235
1/31/2024
1. The communication with ID generator works since the start up:

It will use the Key provided by the ID generator;

2. No communication with the ID generator since the start up:

It will assume the local MS HW Key until the communication with the ID generator is not possible;

3. The communication works but is lost after a while:

If a success Key is received from ID generator, the system will assume the Key received, however, if
the connection is lost after a while and if the system does not receive a valid ID in a period of 24 hours
(second thread interval execution), the system assume the MS HW Key and replace the previous key
in use (action made by the second thread).
When this change occurs, the Message Server trace le (dev_ms) is updated with the following
information:
"Network Id failure grace period expired, using local hardware Id instead"

At the time the connection with ID generator works, the Key will change back to the received by the ID
generator (control made by rst thread).

SLICENSE: License with new installation number cannot be installed

Purpose
To help with license key installation.

Overview
Digitally signed (new type) SAP license key cannot be installed due to the error:

This system's installation number is "<10 digit number>", but there is a license key for installation number "<another 10
digit number>" in the license key le

Background, steps of resolution.

Background

Digitally signed (new type) license key already exists in the system with different installation
number than de ned in the new license le
This is custom documentation. For more information, please visit the SAP Help Portal 236
1/31/2024

24 digit (old type) license key still exists in the system

Steps of resolution
1. Delete all existing licenses in SLICENSE transaction (both New Licenses and Old Licenses). See License Administration with
Transaction SLICENSE.

As of basis 7.3 the 'New Licenses' and 'Old Licenses' buttons do not exist, only a Digitally-Signed tab. This way deleting of
existing 24 digit license is not possible form SLICENSE. See point 2 and License Administration with Transaction SLICENSE.

2. Check whether old license (24 digit) exists. Command 'saplicense -show' can be used for this.

saplicense -show
LICENSE system: <SID>
hardware key: <HWKEY>
expiration_date: <date> i

This is custom documentation. For more information, please visit the SAP Help Portal 237
1/31/2024
nstallation no: <10 digit number>
key: <24 digit key> u
serlimit: <limit>
productid: <prod ID>
system-nr: <18 digit number>
*** license expired ***

3. Delete the old licenses with 'saplicense -delete'. Follow the instructions.

4. Install the new license via SLICENSE or on operating system level with saplikey command. 'saplikey
pf=/usr/sap/<SID>/SYS/pro le/<instance pro le> -install <path to license le/license le>' (e.g. 'saplikey
pf=/usr/sap/XYZ/SYS/pro le/XYZ_DVEBMGS00_xyzhost -install /home/xyzadm/XYZ_multiple.TXT'

Related Content

Related Documents

License Administration with Transaction SLICENSE (70x)


License Administration with Transaction SLICENSE (73x)
License Administration with Transaction SLICENSE (740)
License Administration with Transaction SLICENSE (750)

Related SAP Notes/KBAs


SAP KBA 1827311 - License with new installation number cannot be installed

SAP Logon Group

In large SAP R/3 environments that require multiple application instances, it´s important to make sure that the system
workload gets distributed among those instances. It allows to distribute dynamically the SAP users to Application servers
instances.

Expert Content Documentation

ABAP Logon Group based Load Balancing

Logon with load balance fails - incorrect IP address is used

SMLG: users are distributed unevenly

Relevant SAP notes FAQ

64015 - Description of test program lgtst How to check the servers assigned to a logon
group
593058 - New RFC load balancing procedure
How to limit the size of a developer trace le

How to test a logon group access

This is custom documentation. For more information, please visit the SAP Help Portal 238
1/31/2024

Why logon group information is not updated

ABAP Logon Group based Load Balancing

Purpose

The main goal of this Expert Content is to clarify few points and questions about the ABAP Logon
group, mainly some gray areas about RFC load balance.

Overview

A Logon Group is a group of servers that belongs to one SAP system. It is maintained in transaction
SMLG.
Logon groups are used to automatically distribute user logons to individual instances or to groups of
SAP instances (Applications Server).

Group "SPACE" is maintained automatically with all active servers. It is possible to manually
overwritten in SMLG this SPACE group.

The group de ned in SMLG contains only active servers and the load each server has its own load
values. The actual members of a logon group and its quality are calculated during runtime by the
report RSRZLLG0. This is triggered on each server of the system by rdisp/autoabaptime (every 5
minutes by default) or after 5 SAPGUI logons. Servers which did not run such a calculation within the
last 5 minutes + 10% are removed. This removes servers which are active but are busy for any reason.

For every group one favorite server is determined and sent to the Message Server.

How does logon group based load balancing work?


SAPGUI

a. The saplogon process connects to the MS and asks for the favorite server of the logon group.
b. The Message Server sends back the IP address and port number of the favorite server.
c. SAPGUI uses this information to connect to the Application Server.
This procedure repeats for every logon.

RFC

a. The saplogon process connects to the MS and asks for the favorite server of the logongroup.
b. If the "Ext. RFC-enable" eld is selected, the RFC client performs load balancing.
If this eld is not set, server that is entered as the best server in the logon group is used and the
system does not perform any further balancing among the servers of a logon group.

This is custom documentation. For more information, please visit the SAP Help Portal 239
1/31/2024

c. RFC client balancing the connection among the servers of this logon group.
d. To the next connection, a check is performed to determine whether the data is still valid
(information from timeout and RFC logons de ned in table RZLLICLASS). In such situations its
structure of data is updated with a next request to the MS and the client then receives the list of all
servers of the group with its quality and delta quality. It reorders the list using random numbers.

HTTP(s)

a. The Message Server redirect the request to the favorite application server.
b. As from this rst connection the URL in the browser change to the application server hostname.

The SAP recommends using SAP Web Dispatcher as load balancer to Web connections.

Load balance Strategy

For each group you can de ne one of the following load balancing type:

B = Best (default value)


The client uses the server with the best quality. The quality of a server is decreased by the delta
quality after each connection.

R = Round Robin
All servers do have the same quality of 1,000 and delta quality of 1.
This may be a problem if many RFC programs start at the same time. It is possible that all RFC
programs select the same application server for the rst logon.
For this reason there is a random number used during the Round Robing load balancing that is used
to choose the application server.

W = Weighted Round Robin


All server do have the same quality of 10,000,000. The delta quality is 10,000 divided by the number
of dialog work processes.

Important to know

- Opening a new mode does not trigger load balancing.

- The user cannot be transferred to another server. If a server is not working any longer, the user has
to open a new connection.

- For RFC connections load balancing is done for every new connection. RFC calls on an existing
connection do not cause load balancing, you stay connected with the same server. To enforce load
balancing you have to close the current RFC connection and open a new one.

This is custom documentation. For more information, please visit the SAP Help Portal 240
1/31/2024

- If you have set the Extended RFC Load Balancing ag for a logon group, load balancing is done
locally at client side.

- The RFC client receives a new list after 120 seconds or 200 connections (default). You can set
different values for each group in table RZLLICLASS.

- Round-Robin and Weighted-Round-Robin do not apply to SAPGUI connections.

- There is no "server-side" load balancing.

- RFC connections do not cause a new calculation of server groups like SAPGUI connections do.

- To validate if the RFC load balance is enable in a logon group, the lgtst tool can be used. Note that
the TRUE means RFC load balancing active.

- There is a program responsible by the load calculation. It is possible to monitor the execution of this
program over:
RZ03 -> Select the APPS -> Utilities -> More utilities -> Contr/St.Area
See program RSRZLLG0.

Recommendation

- Keep the rdisp/autoabaptime equal on all instances of one system;

- Keep the date and time synchronized in all application servers;

- It is not recommended to change the default time of rdisp/autoabaptime (300 seconds);

- If this is a RFC load balance you must select the "Ext. RFC-enable" eld for the group attributes;

- In case of RFC load balance, the con guration of table RZLLICLASS must be properly adjusted as
per the requirements;

Related Content

Related Documents

Logon Load Balancing

Related Notes

This is custom documentation. For more information, please visit the SAP Help Portal 241
1/31/2024

593058 - New RFC load balancing procedure


64015 - Description of test program lgtst
26317 - Set up for LOGON group for autom. load balancing
38119 - SAP Logon: Administration of functions
27044 - Login workload Balancing veri cation test
649008 - HTTP load balancing using the SAP message server
118093 - Concepts of de ning 'limits' in logon load balancing

FAQ Logon Group

Client-Server Technology -Logon Group FAQ

How to check the servers assigned to a logon group

How to limit the size of a developer trace le

How to test a logon group access

Why logon group information is not updated

This is custom documentation. For more information, please visit the SAP Help Portal 242
1/31/2024

How to check the servers assigned to a logon group

How to check the servers assigned to a logon group?


Using the lgtst and the option "-G" to specify the logon group and the "-C" to do it many times:

> lgtst -H <Message Server hostname> -S sapms<SID> -G MYGROUP -C 10


using trcfile: dev_lg
Logon data for logon groups:
------------------------------
Group MYGROUP : [<IP>] [3200] [740] [TRUE] [<application server 01>]
Group MYGROUP : [<IP>] [3202] [740] [TRUE] [<application server 02>]
Group MYGROUP : [<IP>] [3202] [740] [TRUE] [<application server 03>]
Group MYGROUP : [<IP>] [3200] [740] [TRUE] [<application server 01>]
Group MYGROUP : [<IP>] [3202] [740] [TRUE] [<application server 02>]
Group MYGROUP : [<IP>] [3202] [740] [TRUE] [<application server 03>]
Group MYGROUP : [<IP>] [3200] [740] [TRUE] [<application server 01>]
Group MYGROUP : [<IP>] [3202] [740] [TRUE] [<application server 02>]
Group MYGROUP : [<IP>] [3202] [740] [TRUE] [<application server 03>]
Group MYGROUP : [<IP>] [3200] [740] [TRUE] [<application server 01>]

Note that the distribution of requests will depends of the load balance strategy in place.
However, in the last column of the output, you should only see application servers assigned to this logon group.

How to test a logon group access

How to test a logon group access?

There is a tool called lgtst to validate the logon group access. It is possible to test the logon groups and servers assigned using
following:

> lgtst -H <Message Server hostname> -S sapms<SID>


using trcfile: dev_lg
list of reachable application servers
-------------------------------------
[<application server 01>] [<server 1>] [<IP>] [sapdp00] [3200] [DIA UPD BTC SPO UP2 ICM ]
[<application server 02>] [<server 2>] [<IP>] [sapdp02] [3202] [DIA BTC SPO ICM ]
[<application server 03>] [<server 3>] [<IP>] [sapdp02] [3202] [DIA BTC SPO ICM ]
list of selectable logon groups with favorites
------------------------------------------------
[MYGROUP] [<IP>] [3202] [740]
[SPACE] [<IP>] [3202] [740]
[TEST] [<IP>] [3200] [740]

This is custom documentation. For more information, please visit the SAP Help Portal 243
1/31/2024

Why logon group information is not updated

Why logon group information is not updated?


Things to check:

Check SAPMSSY6 execution.


This can be done by transaction SMLG -> Goto -> System diagnosis -> Cyclic system prog.
If "No cyclic system programs were active" error is displayed and No. of problems: is not zero, check the value of
rdisp/autoabaptime pro le parameter.
This parameter controls the time internal in which the SAPMSSY6 is executed. This normally takes place under the dummy
ID SAPSYS.
- A value of 0 deactivates the automatic execution.
- With a value of n > 0, the program is periodically executed in the background every n seconds

Parameter must be set to 300 (default value). It can be changed temporary via RZ11 (dynamic change) and permanently via
RZ10 in instance pro le.

See Note:
1787163 - Message Server: save logon groups feature

The information about the logon groups could be saved and restored (in the le system) during message server stop/start
operations.
The feature is controled by pro le parameter ms/persist_lg_info:
ms/persist_lg_info = { on | off | global }

If parameter rdisp/autoabaptime is deactivated, le /usr/sap/<SID>/<INSTANCE_NR>/work/<SID>_msg_server_adtl_storage


will not be updated.

Related Notes:
1888038 - Logon Group can not be found
16201 - Background program, timeout, SAPMSSY6

Logon with load balance fails - incorrect IP address is used

lg.png

Purpose

Assist with logon issues caused by an incorrect IP address being used, when logging on with load
balance.

Overview

End users are able to logon to each SAP ABAP instance directly.

However, they are unable to logon when trying to use load balance.

This is custom documentation. For more information, please visit the SAP Help Portal 244
1/31/2024

The error seen at the SAP GUI shows that an incorrect IP address is used.

Sample scenario

The SAP servers have multiple IP addresses.

One is the "public IP", which should be used by the end users when logging on to SAP.

The other IPs are "private IPs" that are not reachable by the end users (e.g., IPs for an administration
network, or backup network).

In this example, an end user tried to logon to SAP using load balance.

The logon did not work and the following error was presented (SAP GUI popup layout may vary, but
the highlighted error would be the same):

In this case, the IP address 10.2.134.185 is one of the private IPs of the instance that was chosen by
the load balance mechanism for the user to logon to.

If the user tries to logon directly to that same instance (e.g., using a SAP GUI entry pointing directly
to that instance, using its hostname or public IP), the login works.

The same (incorrect) IP address is observed if the menu "System" -> "Status" -> "Other kernel info" is
accessed (see the image below).

This menu can be accessed from within any transaction, or even the initial screen (right after the
logon).

This is custom documentation. For more information, please visit the SAP Help Portal 245
1/31/2024

Cause

When SAP starts, it determines which is the "primary IP address" of the server (the IP seen at the
"Other kernel info" screen).

This is the IP that will be sent to the end users, when logging on with load balance.

The root cause of the issue is the incorrect IP address being detected as the primary IP address.

Solution

SAP uses hostname resolution to identify the primary IP.

A procedure equivalent to what SAP does is:

1. Execute the operating system level command "hostname";

This is custom documentation. For more information, please visit the SAP Help Portal 246
1/31/2024

2. Execute "ping <result from 'hostname'>" or "niping -v -H <result from 'hostname'>" (as niping
will use the same functions used by the SAP instance).

The IP address returned by the command of item 2 will be the primary IP address of the instance.

The solution is to ensure that name resolution on all SAP servers returns the public IP address.

This is not only at the server itself (in other words, the local name resolution of the server returning
its own public IP for its own hostname), but among all SAP servers.

For example, the SAP server "host1" has the public IP "10.10.10.10". The hostname resolution of the
SAP server "host2" must also determine that "host1" is associated to the IP "10.10.10.10".

After xing the name resolution (if the incorrect IP was used), SAP needs to be restarted so it takes
the new IP address as its primary IP.

One way to "force" the usage of the correct IP address is to edit the "hosts" le ("/etc/hosts" in
Linux/UNIX servers; "\windows\system32\drivers\etc\hosts" in Windows servers) and add an entry
there, pointing the hostnames to the desired IP addresses.

Related Content
Related Documents

Related SAP Notes/KBAs

SAP Note 1365796 - Local host name resolution fails in Windows Failover Cluster

SMLG: users are distributed unevenly

lg.png

Link to this page: https://wiki.one.int.sap/wiki/display/ProdSuppBTP/SMLG%3A+users+are+distributed+unevenly

Purpose
To help with troubleshooting.

Overview

When users are distributed unevenly one (or some) of the instances could become overloaded which then slow down those
users who are logged on to that instance. You want to know what to check to eliminate such issues.

Things to check, steps to do

1. Check SAPMSSY6 by SMLG -> Goto -> System diagnosis -> Cyclic system prog. If No cyclic system programs were active
error is displayed and No. of problems: is not zero, check the value of rdisp/autoabaptime pro le parameter - it must be set to

This is custom documentation. For more information, please visit the SAP Help Portal 247
1/31/2024
300 (change it temporary via RZ11 dynamically and permanently via RZ10 in instance pro le)

2. Check via AL08 what type of users is it about.

Number of Active Users refers to all type of users

Interactive Users refers to dialog users

Number of RFC Users refers to RFC users

Number of Plug-In Users refers to users connected via HTTP

Interactive Users

3. Implement the source code correction of RSRZLQVA report manually. See SAP Note 51789.

>>>> START OF DELETION <<<<<


CONSTANTS: ANSWER_TIME_WEIGHT_FACTOR TYPE I VALUE 5,
USER_AMOUNT_WEIGHT_FACTOR TYPE I VALUE 1,
>>>> END OF DELETION <<<<<<<
>>>> START OF INSERTION <<<<
CONSTANTS: ANSWER_TIME_WEIGHT_FACTOR TYPE I VALUE 1,
USER_AMOUNT_WEIGHT_FACTOR TYPE I VALUE 5,
>>>> END OF INSERTION <<<<<<

Number of RFC Users

4. SMLG > Double click on the instance -> Attributes tab -> Activate Ext. RFC-enabled function. See SAP note 593058 and
1112104. This will allow load balancing of those RFC calls which are programmed that way that they use the logon groups.

5. Check if FAVTYPE of the entries in RZLLICLASS table is set to R (Round Robin) or W (Weighted Round Robin). See SAP Note
1112104.

This is custom documentation. For more information, please visit the SAP Help Portal 248
1/31/2024

Number of Plug-In Users

6. Check the folowing document on SAP Help Portal: Server Selection and Load Balancing Using the SAP Web Dispatcher .

Related Content

Related Documents
Server Selection and Load Balancing Using the SAP Web Dispatcher
Logon Load Balancing

Related SAP Notes/KBAs

SAP Note 2244136: Load is distributed unevenly

SAP Note 51789: Poor user distribution in logon distribution


SAP Note 593058: New RFC load balancing procedure
SAP Note 1112104: Weighted round robin procedure
SAP Note 1040325: HTTP load balancing: Message Server or SAP Web Dispatcher?

SAP Memory Management System

Describes the SAP Memory Management System, its basic functions, hardware and operating system requirement and some of
the most common issues.

Expert Content Documentation

Analyzing the heap memory usage of an ABAP work process


This is custom documentation. For more information, please visit the SAP Help Portal 249
1/31/2024

Clari cation of the PROC memory monitoring at the report RSMEMORY

Es2IResCreate, shmget failed, File exists

High memory allocation or Memory not released

Memory Dumps as of Kernel Release 7.4x

Monitoring Memory Resources Using CCMS Infrastructure

No free memory available on Linux

SAP Extend Global Memory (EG) parameters

SAP Shared Memory Pools 10 and 40 as of Kernel 740

TSV_TNEW_PAGE_ALLOC_FAILED

sappfpar "check" option reviewed

Relevant SAP notes FAQ

117907 - Display of SAP Memory usage in How to analyse the OS memory available
from R3 level
SM04 and ST02
How to limit the size of a developer trace le
1137734 - Assignment of memory areas,
shared memories, and pools Identifying the owner of a shared key

2065315 - Memory leak handling Miscelaneous Info

[WEBINAR] Understanding and Troubleshooting SAP Memory


2249313 - Memory leak analysis
Management

2085980 - New features in memory


management as of Kernel Release 7.40

2148571 - Explanation for higher Extended


Memory (EM) consumption after upgrade to
SAP NetWeaver release 7.4x

2210107 - Default value for parameter


rdisp/PG_MAXFS is 250000 8k blocks (2
GB)

2302718 - Changing the memory allocation


sequence for NONDIA

2224372 - Remove the limit on maximum


segment size on AIX

This is custom documentation. For more information, please visit the SAP Help Portal 250
1/31/2024

1382721 - Linux: Interpreting the output of


the command 'free'

Analyzing the heap memory usage of an ABAP work process

Purpose

Brie y introduce the different memory areas of a SAP NetWeaver ABAP instance and provide guidance to analyze the heap
memory usage of a work process.

Observation: The BC-CST-MM team is not responsible to perform the analysis of heap memory usage of SAP processes. We are
just providing this information to assist with such analysis, since there are features related to heap memory usage/monitoring
at the SAP kernel.

Overview

A SAP NetWeaver ABAP system has different memory areas.

Most of them are called "shared memory areas" because they do not belong to a single process exclusively. For example, all
work processes have access to the ABAP Program Buffer area.

The Extended Memory (EM) is where the user context is stored (like the current transaction/report being executed by the user,
data needed by the transaction, application/business data fetched from the database, and so on). This is also a shared memory
area.

The parameter "ztta/roll_extension" limits the amount of EM that a single user context can use. If more memory is required,
the work process handling the request will start allocating heap (private) memory.

The work process itself needs some memory to "exist". This is also stored at the heap memory of the work process.

Libraries loaded by the work process (operating system – OS – libraries, database client / libraries) also need memory. These
also store their data at the heap memory of the work process.

Sometimes it is believed that a work process is using too much memory when veri ed directly at OS level. It is then difficult to
determine whether such high memory usage is expected for that situation, or which component would be using too much
memory. This Expert Content aims to clarify such analysis, focusing on the analysis of heap memory usage. Some of the tools
that will be used are delivered with the corresponding OS itself.

Some of the SAP speci c features are available only as of the following SAP kernel versions:

em/proc_max_size_MB

SAP kernel 742

em/proc_max_wpsize_MB
rdisp/os_heap_for_restart

This is custom documentation. For more information, please visit the SAP Help Portal 251
1/31/2024
(and the possibility to write the SAP level heap memory consumers at the work process trace le - SAP note 2249313)

SAP kernel 742 patch level 315

SAP kernel 745 patch level 35

rdisp/os_heap_for_restart

(available at the kernel release 72x as of the following patch levels - SAP note 2065315)

SAP kernel 721 patch level 331

SAP kernel 722

Analysis of the heap memory from a work process


It is very important to use the appropriate tools to analyze the heap memory usage of a process.

In case of a work process from an ABAP instance, using the “ps” command from Linux, for example, might show misleading
information. This is because "ps" can also include shared memory areas that are currently in use / mapped by this work process.

Imagine that you have a SAP ABAP instance running on a Linux server that has 32GB – 64GB of physical memory (RAM) and a
similar size con gured for the swap space. If you sum the memory usage of all work processes using "ps -elf", you could reach
the conclusion that all SAP work processes together would be using "terabytes" of memory (depending on the size con gured
for the different shared memory areas, like the EM). Of course, this would not be possible. This happens exactly because "ps" is
including the shared memory areas in the memory "used" by each work process.

Besides using the appropriate tools, it is also important to con rm that the work process is idle. If the work process is executing
a report, then the high memory usage could be normal (as the report could have requested such high amount of memory).

The analysis of heap memory usage is very speci c for each OS. Thus, detailed steps are shown at the following pages.

Analysis on AIX

Analysis on Linux and Solaris

Analysis on Windows

SAP features for limiting heap memory usage


The SAP kernel has features to limit the amount of heap memory that a single work process, or the entire instance, can
allocate. These features are available for all supported operating systems.

You can also read the documentation of each parameter mentioned below through the transaction RZ11, at any ABAP based
system (the documentation of some of the parameters might not be available depending on the SAP NetWeaver / SAP_BASIS
release in use).

Parameters speci c to the ABAP runtime layer of the SAP kernel


abap/heap_area_dia
abap/heap_area_nondia

Limit the amount of heap memory that the ABAP runtime of a single work process (dialog and non-dialog, respectively) can
allocate. For example: when creating internal tables, loading a (part of a) database table into an internal table;

abap/heap_area_total

This is custom documentation. For more information, please visit the SAP Help Portal 252
1/31/2024
Limits the amount of heap memory that the ABAP runtime of all work processes of the instance (all dialog and non-dialog work
processes together) can allocate;

abap/heaplimit

If the ABAP runtime of a work process allocates more memory than what is speci ed at this parameter, the work process
activates an "auto-restart" ag. When this ag is set, the work process will restart after the execution of the current task. For as
long as the data in the heap memory is needed, the work process will not restart. This is a safe mechanism to trigger the restart
of the work process. The restart is required so the heap memory of the work process can be released back to the OS. It is not
recommended to change the value of this parameter, but to use its default value;

Parameters related to the work process as a whole, not related to a speci c layer of
(or libraries loaded by) the SAP kernel
rdisp/os_heap_for_restart

if the work process detects that its heap size is larger than the value de ned by this parameter, the work process sets an "auto-
restart" ag;

em/proc_max_wpsize_MB

the same as the parameters "abap/heap_area_dia" and "nondia", but not restricted to the ABAP runtime layer of the SAP
kernel. The same parameter is used to de ne the threshold for both dialog and non-dialog work processes;

em/proc_max_size_MB

the same as the parameter "abap/heap_area_total", but not restricted to the ABAP runtime layer of the SAP kernel.

Related Content

Related Documents

Memory Management Basic Terminology

Extended memory

Private Memory

PAM

Related SAP Notes/KBAs

2249313 - Memory leak analysis

2085980 - New features in memory management as of Kernel Release 7.40

2019744 - How to limit overall swap space consumption of the ABAP Server in NW 7.40

146289 - Parameter Recommendations for 64-Bit SAP Kernel

This is custom documentation. For more information, please visit the SAP Help Portal 253
1/31/2024

Analysis on AIX

As mentioned in the main page of this Expert Content , the "ps" command is not the ideal tool to analyze
heap memory usage.

The appropriate tool for heap memory analysis on AIX would be "svmon".

You can execute "svmon -P <PID of SAP work process>" and look for "heap" segments.

Using a test system (running on AIX) to simulate a heap memory issue, the following outputs were
collected before the issue was triggered:

servername:sidadm 27> ps -elf


F S UID PID PPID C PRI NI ADDR SZ WCHAN
STIME TTY TIME CMD
(...)
40001 A sidadm 11862052 15859848 0 60 20 86dcc4590 137140
f1000a0200282ca0 Jun 27 - 104:10 dw.sapSID_DVEBMGS00
pf=/usr/sap/SID/SYS/profile/SID_DVEBMGS00_servername
(...)

servername:sidadm 28> svmon -P 11862052 | grep heap


8d1d48 10 work text data BSS heap m 709 0 1
1123
8c9ac9 11 work text data BSS heap m 347 0 641
744
8122a7 80020014 work USLA heap sm 39 0
57 57
servername:sidadm 29>

This is custom documentation. For more information, please visit the SAP Help Portal 254
1/31/2024

If "grep" is available at the OS in use, you can use it (as it is shown above) in order to have a ltered
output from svmon, showing only the relevant lines ("heap" segments).

Notice that there are only two shared memory segments (second column from the output; segments
10 and 11) for heap memory.

These are the outputs from the same commands above, but executed after the heap memory issue
was triggered.

servername:sidadm 29> ps -elf


F S UID PID PPID C PRI NI ADDR SZ WCHAN
STIME TTY TIME CMD
(...)
40001 A sidadm 11862052 15859848 0 60 20 86dcc4590 653364
f1000a0200282ca0 Jun 27 - 104:11 dw.sapSID_DVEBMGS00
pf=/usr/sap/SID/SYS/profile/SID_DVEBMGS00_servername
(...)

servername:sidadm 30> svmon -P 11862052 | grep heap


8b760e 12 work text data BSS heap m 4096 0 0
4096
98d599 13 work text data BSS heap m 2326 0 0
2326
8c9ac9 11 work text data BSS heap m 2047 0 617
2388
8d1d48 10 work text data BSS heap m 775 0 1
1127
8122a7 80020014 work USLA heap sm 39 0
57 57
servername:sidadm 31>

At the "svmon" output, we can see new shared memory segments for heap memory (12 and 13), as
well as the memory allocated at the existing segments (10 and 11) has increased.
The rst number after the column that has "m" indicates the number of blocks in use at that segment.
The "m" indicates the size of the blocks. In this test system, 64KB.
As we can see, this work process is using about 500MB of heap memory.

The corresponding work process was idle during the time all the commands above were collected.
This is custom documentation. For more information, please visit the SAP Help Portal 255
1/31/2024

In order to determine whether the incorrect memory usage was triggered within the SAP kernel, we
can use the transaction SM50, menu path Administration -> Work process -> Write stack
(prerequisite: the SAP kernel in use must be 742 patch level 315 / 745 patch level 35, or higher).

Then, the corresponding trace le (dev_w0, in this case) will have the following information:

M Sat Aug 20 23:21:15 2016


M
M ********** STACKDUMP 1 - begin **********
M
M C-STACK
dw.sapSID_DVEBMGS00[S](LinStackBacktrace+0x8c)[0x65656d]
dw.sapSID_DVEBMGS00[S](LinStack+0x35)[0x1aafd95]
dw.sapSID_DVEBMGS00[S](CTrcStack2+0x4e)[0x656401]
dw.sapSID_DVEBMGS00[S](ThStackHandler()+0x102)[0x4f5923]
dw.sapSID_DVEBMGS00[S](DpTrcOnOff(int)+0x212)[0x45ac89]
<signal handler called> [0x7f1aab924850]
libc.so.6[S](__GI_semtimedop+0xa)[0x7f1aab678faa]
dw.sapSID_DVEBMGS00[S](SemTimedOp+0x47)[0x1780bd7]
dw.sapSID_DVEBMGS00[S](EvtWtRst+0x72)[0x1a2ab82]
dw.sapSID_DVEBMGS00[S](RqQWorkerWaitForRequests(unsigned int, unsigned char,
Q_Q_PRIO, unsigned int*, int)+0x1fa)[0x19e7c1a]
dw.sapSID_DVEBMGS00[S](ThRqCheckQueues(int, REQUEST_BUF**)+0x37c)[0x1a39d5c]
dw.sapSID_DVEBMGS00[S](ThRqGetNextRequest(int, REQUEST_BUF**)+0x2a)
[0x1a3d5fa]
dw.sapSID_DVEBMGS00[S](ThRqWaitFor(int, REQUEST_BUF**)+0x37)[0x1a3d787]
dw.sapSID_DVEBMGS00[S](ThRqAcceptImpl(unsigned char, int,
EQUEST_BUF**)+0xf2)[0x1a3ad32]
dw.sapSID_DVEBMGS00[S](ThRqAcceptNextRequest(int, REQUEST_BUF**)+0x16)
[0x1a3c1f6]
dw.sapSID_DVEBMGS00[S](ThReceive()+0x28)[0x1a3c238]
dw.sapSID_DVEBMGS00[S](TskhLoop()+0x5e)[0x1a5114e]
dw.sapSID_DVEBMGS00[S](ThStart()+0x26c)[0x4f5471]
dw.sapSID_DVEBMGS00[S](DpMain+0x389)[0x19e09e9]
libc.so.6[S](__libc_start_main+0xe6)[0x7f1aab5b7c36]

This is custom documentation. For more information, please visit the SAP Help Portal 256
1/31/2024

M
M Top 50 PROC memory consumers by user tag ID (in bytes)
M
M Tag Allocations Smallest
Biggest Sum
M 'FCLASS'
1 605.814.784 605.814.784 605.814.784
M 'DBI_MM' 12 102.424
4.194.568 17.948.112
M '<free>' 36 56
2.096.928 9.966.120
M 'DBSL ' 1464 144
3.200.656 9.882.184
M 'DYCBOX' 1 5.540.128
5.540.128 5.540.128
M 'CUA___' 3 500.128
500.128 1.500.384
M 'PCACHE' 1 1.376.384
1.376.384 1.376.384
M 'AbFdaM' 1 1.048.704
1.048.704 1.048.704
M 'DYTEMP' 1 1.000.128
1.000.128 1.000.128
M 'DIAGAR' 2 250.128
250.128 500.256
M 'D010TI' 7 1.344
165.168 389.984
M '*RTM_M' 3 16.128
160.128 216.384
M 'DBSLDA' 38 1.920
16.256 167.936
M 'NTALXX' 4 20.128
60.128 160.512
M 'AUTHSO' 1 148.128
148.128 148.128
M 'SHORT_' 1 102.424
102.424 102.424
M 'NTPGTF' 1 77.072
77.072 77.072
M 'NTAB ' 1 65.664
65.664 65.664
M 'BLIN ' 1 65.648
65.648 65.648

This is custom documentation. For more information, please visit the SAP Help Portal 257
1/31/2024

M 'BLOUT ' 1 65.648


65.648 65.648
M 'DBDYNP' 2 32.128
32.896 65.024
M 'AbShCo' 1 42.528
42.528 42.528
M 'RI LBL' 1 32.896
32.896 32.896
M 'BUFFER' 1 32.896
32.896 32.896
M 'RELOBB' 1 32.128
32.128 32.128
M 'RTFDSC' 2 512
28.800 29.312
M '*PXABM' 1 28.800
28.800 28.800
M 'DBSLTL' 2 12.128
12.128 24.256
M 'STAAPC' 4 2.096
6.848 21.968
M 'RSPOD1' 1 20.608
20.608 20.608
M 'STATSM' 4 3.392
6.896 20.384
M 'DIAGUP' 1 20.128
20.128 20.128
M 'STATWE' 2 352
18.480 18.832
M 'STAAMC' 4 3.680
5.120 16.928
M 'APQILS' 2 816
15.984 16.800
M 'PCHASH' 1 16.512
16.512 16.512
M
M Sat Aug 20 23:21:15 2016
M 'RSCRSR' 13 256
5.504 14.784
M 'AbRegx' 3 1.152
8.320 11.648
M '*PXAML' 1 10.528
10.528 10.528
M '*PXATL' 1 10.528

This is custom documentation. For more information, please visit the SAP Help Portal 258
1/31/2024

10.528 10.528
M 'STATTR' 2 512
9.872 10.384
M 'TRANFL' 1 10.128
10.128 10.128
M 'STAHC2' 1 9.632
9.632 9.632
M 'STATES' 3 704
6.176 9.264
M 'STAHS2' 1 9.104
9.104 9.104
M 'STAHC1' 1 9.056
9.056 9.056
M 'abtsor' 2 824
8.024 8.848
M 'DIAGOK' 1 8.320
8.320 8.320
M 'STAHS1' 1 8.096
8.096 8.096
M 'STARS2' 1 7.952
7.952 7.952
M
M ********** STACKDUMP 1 - end **********
M

We can see that the "FCLASS" tag is allocating the 500MB of memory that should not be there.
Thus, we should search for SAP notes that would address a memory issue ("memory leak") related to
the "FCLASS" tag.
Notice that:

"FCLASS" was a tag name used for the example above. It may not exist;

This was a straightforward example, when one tag made only one allocation that matched the
issue exactly. It is possible that the memory leak would occur over several small allocations
instead of a single large allocation.

If the information at the trace le does not indicate that any of the tags is causing the issue, then you
should continue with the analysis from different areas, like the OS libraries and the database client /
libraries.

<back to main page>

Analysis on Linux and Solaris


This is custom documentation. For more information, please visit the SAP Help Portal 259
1/31/2024

As mentioned in the main page of this Expert Content , using the "ps" command to analyze heap memory
usage is not helpful because "ps -elf" can (and most likely will) include the shared memory areas used
by the work process. This can happen in both Linux and Solaris.

The appropriate tool for heap memory analysis would be "pmap".

You can execute "pmap <PID of SAP work process>" and look for "heap" and "anon" blocks. Depending
on the OS, pmap will also provide a summary at the end of its output.

Using a test system (running on Linux) to simulate a heap memory issue, the following outputs were
collected before the issue was triggered:

servername:sidadm 60> ps –elf


F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME
CMD
(...)
1 S sidadm 16912 16853 0 80 0 - 1748628 - 19:00 ? 00:00:42
dw.sapSID_DVEBMGS20 pf=/usr/sap/SID/SYS/profile/SID_DVEBMGS20_servername
(...)

servername:sidadm 61> pmap 16912 | egrep '(START|writable|anon|heap)'


START SIZE RSS PSS DIRTY SWAP PERM MAPPING
0000000004109000 72892K 7012K 4798K 7012K 0K rw-p [heap]
0000000008838000 57636K 25028K 25028K 25028K 0K rw-p [heap]
00007f1912623000 4K 0K 0K 0K 0K ---p [anon]
00007f1912624000 8192K 8K 8K 8K 0K rw-p [anon]
00007f194e791000 1204K 108K 108K 108K 0K rw-p [anon]
00007f195527e000 3412K 792K 792K 792K 0K rw-p [anon]
00007f195b03b000 1960K 1828K 1828K 1828K 0K rw-p [anon]
00007f196b184000 184K 0K 0K 0K 0K rw-p [anon]
00007f196bb7b000 652K 48K 48K 48K 0K rw-p [anon]
00007f196bffb000 316K 48K 48K 48K 0K rw-p [anon]
00007f196c6bd000 108K 28K 28K 28K 0K rw-p [anon]
00007f197735e000 380K 256K 15K 256K 0K rw-p [anon]
00007f1a90450000 1232K 952K 944K 952K 0K rw-p [anon]
00007f1aa1593000 8K 4K 0K 4K 0K rw-p [anon]
00007f1aa9c08000 4K 0K 0K 0K 0K rw-p [anon]
00007f1aab596000 12K 8K 8K 8K 0K rw-p [anon]
00007f1aab910000 20K 20K 20K 20K 0K rw-p [anon]

This is custom documentation. For more information, please visit the SAP Help Portal 260
1/31/2024

00007f1aabb2e000 16K 4K 4K 4K 0K rw-p [anon]


00007f1aac2b2000 84K 16K 0K 16K 0K rw-p [anon]
00007f1aac79f000 12K 12K 0K 12K 0K rw-p [anon]
00007f1aadb23000 40K 40K 2K 40K 0K rw-p [anon]
00007f1aaf631000 12K 0K 0K 0K 0K rw-p [anon]
00007f1aafd83000 260K 4K 4K 4K 0K rw-p [anon]
00007f1ab099d000 8K 8K 0K 8K 0K rw-p [anon]
00007f1ab1911000 28K 28K 16K 28K 0K rw-p [anon]
00007f1ab1d74000 176K 4K 4K 4K 0K rw-p [anon]
00007f1ab1dcc000 772K 768K 48K 768K 0K rw-p [anon]
00007f1ab1e8d000 256K 256K 15K 256K 0K rw-p [anon]
00007f1ab1f0c000 48K 48K 29K 48K 0K rw-p [anon]
00007f1ab1f24000 4K 0K 0K 0K 0K rw-p [anon]
00007f1ab1f40000 4K 4K 4K 4K 0K rw-p [anon]
00007f1ab1f42000 8K 8K 4K 8K 0K rw-p [anon]
00007f1ab1f46000 4K 4K 4K 4K 0K rw-p [anon]
155272K writable-private, 225480K readonly-private, 6613760K shared, and
428468K referenced
servername:sidadm 62>

If "egrep" is available at the OS in use, you can use it (as it is shown above) in order to have a ltered
output from pmap, showing only the relevant lines (header line, all "heap" and "anon" blocks, and the
summary line from the end).

The summary line (highlighted in bold) shows that this work process (the work process itself) is using
around 380MB of memory: around 155MB of heap (private) writable memory plus around 225MB of
heap readonly memory. The latter would be the executable itself (the "disp+work" binary le) that is
loaded into the memory so it can be executed.

But the "ps" output showed that this same process is using 1748628 blocks of memory. In the OS
used to collect these outputs, the size of each block is 4KB. Therefore, "ps" would be showing that
this process would be using around 6.9GB of memory.

If we go back to the "pmap" summary line, we will notice that this process is "using" around 6.6GB of
shared memory. The "catch" is that each work process is using the same 6.6GB shared memory area
(thus the name "shared memory" :-)).

These are the outputs from the same commands above, but executed after the heap memory issue
was triggered.

This is custom documentation. For more information, please visit the SAP Help Portal 261
1/31/2024

servername:sidadm 70> ps –elf


F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME
CMD
(...)
1 S sidadm 16912 16853 0 80 0 - 1787029 semtim 19:00 ? 00:00:42
dw.sapSID_DVEBMGS20 pf=/usr/sap/SID/SYS/profile/SID_DVEBMGS20_servername
(...)

servername:sidadm 71> pmap 16912 | egrep '(START|writable|anon|heap)'


START SIZE RSS PSS DIRTY SWAP PERM MAPPING
0000000004109000 72892K 7012K 4798K 7012K 0K rw-p [heap]
0000000008838000 57636K 25028K 25028K 25028K 0K rw-p [heap]
00007f1909022000 153604K 8K 8K 8K 0K rw-p [anon]
00007f1912623000 4K 0K 0K 0K 0K ---p [anon]
00007f1912624000 8192K 8K 8K 8K 0K rw-p [anon]
00007f194e791000 1204K 108K 108K 108K 0K rw-p [anon]
00007f195527e000 3412K 792K 792K 792K 0K rw-p [anon]
00007f195b03b000 1960K 1828K 1828K 1828K 0K rw-p [anon]
00007f196b184000 184K 0K 0K 0K 0K rw-p [anon]
00007f196bb7b000 652K 48K 48K 48K 0K rw-p [anon]
00007f196bffb000 316K 48K 48K 48K 0K rw-p [anon]
00007f196c6bd000 108K 28K 28K 28K 0K rw-p [anon]
00007f197735e000 380K 256K 15K 256K 0K rw-p [anon]
00007f1a90450000 1232K 952K 944K 952K 0K rw-p [anon]
00007f1aa1593000 8K 4K 0K 4K 0K rw-p [anon]
00007f1aa9c08000 4K 0K 0K 0K 0K rw-p [anon]
00007f1aab596000 12K 8K 8K 8K 0K rw-p [anon]
00007f1aab910000 20K 20K 20K 20K 0K rw-p [anon]
00007f1aabb2e000 16K 4K 4K 4K 0K rw-p [anon]
00007f1aac2b2000 84K 16K 0K 16K 0K rw-p [anon]
00007f1aac79f000 12K 12K 0K 12K 0K rw-p [anon]
00007f1aadb23000 40K 40K 2K 40K 0K rw-p [anon]
00007f1aaf631000 12K 0K 0K 0K 0K rw-p [anon]
00007f1aafd83000 260K 4K 4K 4K 0K rw-p [anon]
00007f1ab099d000 8K 8K 0K 8K 0K rw-p [anon]
00007f1ab1911000 28K 28K 16K 28K 0K rw-p [anon]
00007f1ab1d74000 176K 4K 4K 4K 0K rw-p [anon]
00007f1ab1dcc000 772K 768K 48K 768K 0K rw-p [anon]
00007f1ab1e8d000 256K 256K 15K 256K 0K rw-p [anon]
00007f1ab1f0c000 48K 48K 29K 48K 0K rw-p [anon]
00007f1ab1f24000 4K 0K 0K 0K 0K rw-p [anon]
00007f1ab1f40000 4K 4K 4K 4K 0K rw-p [anon]
00007f1ab1f42000 8K 8K 4K 8K 0K rw-p [anon]

This is custom documentation. For more information, please visit the SAP Help Portal 262
1/31/2024

00007f1ab1f46000 4K 4K 4K 4K 0K rw-p [anon]


308876K writable-private, 225480K readonly-private, 6613760K shared, and
428600K referenced
servername:sidadm 72>

Notice that the "ps" output does not change signi cantly (because it shows usage of 4KB blocks), but
it still shows much more memory than the work process itself is using (it is still including the shared
memory areas).

At the "pmap" output, we can see a new "anon" segment of about 150MB. We also see that the
writable heap memory area has increased (at the summary line).

The corresponding work process was idle during the time all the commands above were collected.

In order to determine whether the incorrect memory usage was triggered within the SAP kernel, we
can use the transaction SM50, menu path Administration -> Work process -> Write stack
(prerequisite: the SAP kernel in use must be 742 patch level 315 / 745 patch level 35, or higher).

Then, the corresponding trace le (dev_w8, in this case) will have the following information:

M Mon Jun 27 21:33:04 2016


M
M ********** STACKDUMP 1 - begin **********
M
M C-STACK
dw.sapSID_DVEBMGS20[S](LinStackBacktrace+0x8c)[0x65656d]
dw.sapSID_DVEBMGS20[S](LinStack+0x35)[0x1aafd95]
dw.sapSID_DVEBMGS20[S](CTrcStack2+0x4e)[0x656401]
dw.sapSID_DVEBMGS20[S](ThStackHandler()+0x102)[0x4f5923]
dw.sapSID_DVEBMGS20[S](DpTrcOnOff(int)+0x212)[0x45ac89]
<signal handler called> [0x7f1aab924850]
libc.so.6[S](__GI_semtimedop+0xa)[0x7f1aab678faa]
dw.sapSID_DVEBMGS20[S](SemTimedOp+0x47)[0x1780bd7]
dw.sapSID_DVEBMGS20[S](EvtWtRst+0x72)[0x1a2ab82]
dw.sapSID_DVEBMGS20[S](RqQWorkerWaitForRequests(unsigned int, unsigned char,
This is custom documentation. For more information, please visit the SAP Help Portal 263
1/31/2024

Q_Q_PRIO, unsigned int*, int)+0x1fa)[0x19e7c1a]


dw.sapSID_DVEBMGS20[S](ThRqCheckQueues(int, REQUEST_BUF**)+0x37c)[0x1a39d5c]
dw.sapSID_DVEBMGS20[S](ThRqGetNextRequest(int, REQUEST_BUF**)+0x2a)
[0x1a3d5fa]
dw.sapSID_DVEBMGS20[S](ThRqWaitFor(int, REQUEST_BUF**)+0x37)[0x1a3d787]
dw.sapSID_DVEBMGS20[S](ThRqAcceptImpl(unsigned char, int,
EQUEST_BUF**)+0xf2)[0x1a3ad32]
dw.sapSID_DVEBMGS20[S](ThRqAcceptNextRequest(int, REQUEST_BUF**)+0x16)
[0x1a3c1f6]
dw.sapSID_DVEBMGS20[S](ThReceive()+0x28)[0x1a3c238]
dw.sapSID_DVEBMGS20[S](TskhLoop()+0x5e)[0x1a5114e]
dw.sapSID_DVEBMGS20[S](ThStart()+0x26c)[0x4f5471]
dw.sapSID_DVEBMGS20[S](DpMain+0x389)[0x19e09e9]
libc.so.6[S](__libc_start_main+0xe6)[0x7f1aab5b7c36]
M
M Top 50 PROC memory consumers by user tag ID (in bytes)
M
M Tag Allocations Smallest
Biggest Sum
M 'FCLASS' 1 157.286.424
157.286.424 157.286.424
M 'DBI_MM' 12 102.424
4.194.568 17.948.112
M '<free>' 36 56
2.096.928 9.966.120
M 'DBSL ' 1464 144
3.200.656 9.882.184
M 'DYCBOX' 1 5.540.128
5.540.128 5.540.128
M 'CUA___' 3 500.128
500.128 1.500.384
M 'PCACHE' 1 1.376.384
1.376.384 1.376.384
M 'AbFdaM' 1 1.048.704
1.048.704 1.048.704
M 'DYTEMP' 1 1.000.128
1.000.128 1.000.128
M 'DIAGAR' 2 250.128
250.128 500.256
M 'D010TI' 7 1.344
165.168 389.984
M '*RTM_M' 3 16.128
160.128 216.384

This is custom documentation. For more information, please visit the SAP Help Portal 264
1/31/2024

M 'DBSLDA' 38 1.920
16.256 167.936
M 'NTALXX' 4 20.128
60.128 160.512
M 'AUTHSO' 1 148.128
148.128 148.128
M 'SHORT_' 1 102.424
102.424 102.424
M 'NTPGTF' 1 77.072
77.072 77.072
M 'NTAB ' 1 65.664
65.664 65.664
M 'BLIN ' 1 65.648
65.648 65.648
M 'BLOUT ' 1 65.648
65.648 65.648
M 'DBDYNP' 2 32.128
32.896 65.024
M 'AbShCo' 1 42.528
42.528 42.528
M 'RI LBL' 1 32.896
32.896 32.896
M 'BUFFER' 1 32.896
32.896 32.896
M 'RELOBB' 1 32.128
32.128 32.128
M 'RTFDSC' 2 512
28.800 29.312
M '*PXABM' 1 28.800
28.800 28.800
M 'DBSLTL' 2 12.128
12.128 24.256
M 'STAAPC' 4 2.096
6.848 21.968
M 'RSPOD1' 1 20.608
20.608 20.608
M 'STATSM' 4 3.392
6.896 20.384
M 'DIAGUP' 1 20.128
20.128 20.128
M 'STATWE' 2 352
18.480 18.832
M 'STAAMC' 4 3.680

This is custom documentation. For more information, please visit the SAP Help Portal 265
1/31/2024

5.120 16.928
M 'APQILS' 2 816
15.984 16.800
M 'PCHASH' 1 16.512
16.512 16.512
M
M Mon Jun 27 21:33:04 2016
M 'RSCRSR' 13 256
5.504 14.784
M 'AbRegx' 3 1.152
8.320 11.648
M '*PXAML' 1 10.528
10.528 10.528
M '*PXATL' 1 10.528
10.528 10.528
M 'STATTR' 2 512
9.872 10.384
M 'TRANFL' 1 10.128
10.128 10.128
M 'STAHC2' 1 9.632
9.632 9.632
M 'STATES' 3 704
6.176 9.264
M 'STAHS2' 1 9.104
9.104 9.104
M 'STAHC1' 1 9.056
9.056 9.056
M 'abtsor' 2 824
8.024 8.848
M 'DIAGOK' 1 8.320
8.320 8.320
M 'STAHS1' 1 8.096
8.096 8.096
M 'STARS2' 1 7.952
7.952 7.952
M
M ********** STACKDUMP 1 - end **********
M

We can see that the "FCLASS" tag is allocating exactly the 150MB of memory that should not be
there.

This is custom documentation. For more information, please visit the SAP Help Portal 266
1/31/2024

Thus, we should search for SAP notes that would address a memory issue ("memory leak") related to
the "FCLASS" tag.
Notice that:

"FCLASS" was a tag name used for the example above. It may not exist;

This was a straightforward example, when one tag made only one allocation that matched the
issue exactly. It is possible that the memory leak would occur over several small allocations
instead of a single large allocation.

If the information at the trace le does not indicate that any of the tags is causing the issue, then you
should continue with the analysis from different areas, like the OS libraries and the database client /
libraries.

<back to main page>

Analysis on Windows

At Windows servers, you can verify whether the version of the "sapntkill" tool (delivered with the SAP
kernel) currently available at the server has the "MEM" and "HEAP" signals available.

Simply execute "sapntkill" without any arguments and verify the "signal" section.

C:\>sapntkill
usage: sapntkill [-force] [-signal]|[-CPU n,n,...]|[-PRIO <low|normal|high>]|[-
ENV name=value] pid-list
signal
(HUP|INT|QUIT|KILL|USR1|USR2|SEGV|MEM|SEM1|SEM2|HEAP|INFO|INFO2|TIME)
-CPU Change affinity of a process For example,
to run the application on CPU 2 and CPU 4, enter:
"-CPU 2,4".1 is the lowest numbered CPU.

This is custom documentation. For more information, please visit the SAP Help Portal 267
1/31/2024

-PRIO Change priority of a process.


-ENV Set environment variable in specified process
Environment string is restricted to at most 60 ASCII characters
pid-list Specifies space-separated list of process ids
-force Attempts to bypass normal security restrictions via enabling
debug privilege

C:\>

You can then execute "sapntkill -MEM <PID of SAP work process>" and "sapntkill -HEAP <PID of SAP
work process>".

Observation: it is strongly recommended NOT to send the MEM or HEAP signals in production
environments. This is because these signals can block the work process for a long time.

The output from both signals will be written to a le at the "work" folder.

The name of the le created by the MEM signal is "adrspc_X" (where "X" is the number of the work
process).

This signal writes a "pmap-like" output ("pmap" is a tool available in Linux and UNIX systems).

The name of the le created by the HEAP signal is "heap_X" (where "X" is the number of the work
process).

Using a test system (running on Windows) to simulate a heap memory issue, this was the output of
the "heap_4" le collected before the issue was triggered:

Heap - Information
------------------------------------------------

|Heap|Address | Size|Status |
|----|----------------|----------|----------|
| 0| 2190000| 1048576|Region |
(...)
| 40| 180b0a80| 5440|Reserved |
| 40| 180b2000| 516096|Reserved |

------------------------------------------------

This is custom documentation. For more information, please visit the SAP Help Portal 268
1/31/2024

Total heap size : 80433 K


Virtual memory regions : 87438 K
Uncommitted heap memory : 51940 K
Allocated heap memory : 25909 K
Moveable heap memory : 0 K
DDE shared heap memory : 11783 K
------------------------------------------------

This is the output from the "heap_4" le that was generated after the heap memory issue was
triggered.

Heap - Information
------------------------------------------------

|Heap|Address | Size|Status |
|----|----------------|----------|----------|
| 0| 2190000| 1048576|Region |
(...)
| 40| 180b0a80| 5440|Reserved |
| 40| 180b2000| 516096|Reserved |

------------------------------------------------

Total heap size : 324573 K


Virtual memory regions : 87438 K
Uncommitted heap memory : 51940 K
Allocated heap memory : 270058 K
Moveable heap memory : 0 K
DDE shared heap memory : 255924 K
------------------------------------------------

The summary at the end of the "heap_X" le can easily indicate a heap memory issue.

In this case, we can see that the "Total heap size" has increased by about 250MB.

The corresponding work process was idle during the time all the commands above were collected.
This is custom documentation. For more information, please visit the SAP Help Portal 269
1/31/2024

In order to determine whether the incorrect memory usage was triggered within the SAP kernel, we
can use the transaction SM50, menu path Administration -> Work process -> Write stack
(prerequisite: the SAP kernel in use must be 742 patch level 315 / 745 patch level 35, or higher).

Then, the corresponding trace le (dev_w4, in this case) will have the following information:

M Sun Aug 21 19:35:23 2016


M
M ********** STACKDUMP 1 - begin **********
M
M C-STACK
dw.sapSID_DVEBMGS00[S](LinStackBacktrace+0x8c)[0x65656d]
dw.sapSID_DVEBMGS00[S](LinStack+0x35)[0x1aafd95]
dw.sapSID_DVEBMGS00[S](CTrcStack2+0x4e)[0x656401]
dw.sapSID_DVEBMGS00[S](ThStackHandler()+0x102)[0x4f5923]
dw.sapSID_DVEBMGS00[S](DpTrcOnOff(int)+0x212)[0x45ac89]
<signal handler called> [0x7f1aab924850]
libc.so.6[S](__GI_semtimedop+0xa)[0x7f1aab678faa]
dw.sapSID_DVEBMGS00[S](SemTimedOp+0x47)[0x1780bd7]
dw.sapSID_DVEBMGS00[S](EvtWtRst+0x72)[0x1a2ab82]
dw.sapSID_DVEBMGS00[S](RqQWorkerWaitForRequests(unsigned int, unsigned char,
Q_Q_PRIO, unsigned int*, int)+0x1fa)[0x19e7c1a]
dw.sapSID_DVEBMGS00[S](ThRqCheckQueues(int, REQUEST_BUF**)+0x37c)[0x1a39d5c]
dw.sapSID_DVEBMGS00[S](ThRqGetNextRequest(int, REQUEST_BUF**)+0x2a)
[0x1a3d5fa]
dw.sapSID_DVEBMGS00[S](ThRqWaitFor(int, REQUEST_BUF**)+0x37)[0x1a3d787]
dw.sapSID_DVEBMGS00[S](ThRqAcceptImpl(unsigned char, int,
EQUEST_BUF**)+0xf2)[0x1a3ad32]
dw.sapSID_DVEBMGS00[S](ThRqAcceptNextRequest(int, REQUEST_BUF**)+0x16)
[0x1a3c1f6]
dw.sapSID_DVEBMGS00[S](ThReceive()+0x28)[0x1a3c238]
dw.sapSID_DVEBMGS00[S](TskhLoop()+0x5e)[0x1a5114e]
dw.sapSID_DVEBMGS00[S](ThStart()+0x26c)[0x4f5471]
This is custom documentation. For more information, please visit the SAP Help Portal 270
1/31/2024

dw.sapSID_DVEBMGS00[S](DpMain+0x389)[0x19e09e9]
libc.so.6[S](__libc_start_main+0xe6)[0x7f1aab5b7c36]
M
M Top 50 PROC memory consumers by user tag ID (in bytes)
M
M Tag Allocations Smallest
Biggest Sum
M 'FCLASS'
1 249.999.360 249.999.360 249.999.360
M 'DBI_MM' 12 102.424
4.194.568 17.948.112
M '<free>' 36 56
2.096.928 9.966.120
M 'DBSL ' 1464 144
3.200.656 9.882.184
M 'DYCBOX' 1 5.540.128
5.540.128 5.540.128
M 'CUA___' 3 500.128
500.128 1.500.384
M 'PCACHE' 1 1.376.384
1.376.384 1.376.384
M 'AbFdaM' 1 1.048.704
1.048.704 1.048.704
M 'DYTEMP' 1 1.000.128
1.000.128 1.000.128
M 'DIAGAR' 2 250.128
250.128 500.256
M 'D010TI' 7 1.344
165.168 389.984
M '*RTM_M' 3 16.128
160.128 216.384
M 'DBSLDA' 38 1.920
16.256 167.936
M 'NTALXX' 4 20.128
60.128 160.512
M 'AUTHSO' 1 148.128
148.128 148.128
M 'SHORT_' 1 102.424
102.424 102.424
M 'NTPGTF' 1 77.072
77.072 77.072
M 'NTAB ' 1 65.664
65.664 65.664

This is custom documentation. For more information, please visit the SAP Help Portal 271
1/31/2024

M 'BLIN ' 1 65.648


65.648 65.648
M 'BLOUT ' 1 65.648
65.648 65.648
M 'DBDYNP' 2 32.128
32.896 65.024
M 'AbShCo' 1 42.528
42.528 42.528
M 'RI LBL' 1 32.896
32.896 32.896
M 'BUFFER' 1 32.896
32.896 32.896
M 'RELOBB' 1 32.128
32.128 32.128
M 'RTFDSC' 2 512
28.800 29.312
M '*PXABM' 1 28.800
28.800 28.800
M 'DBSLTL' 2 12.128
12.128 24.256
M 'STAAPC' 4 2.096
6.848 21.968
M 'RSPOD1' 1 20.608
20.608 20.608
M 'STATSM' 4 3.392
6.896 20.384
M 'DIAGUP' 1 20.128
20.128 20.128
M 'STATWE' 2 352
18.480 18.832
M 'STAAMC' 4 3.680
5.120 16.928
M 'APQILS' 2 816
15.984 16.800
M 'PCHASH' 1 16.512
16.512 16.512
M
M Sun Aug 21 19:35:23 2016
M 'RSCRSR' 13 256
5.504 14.784
M 'AbRegx' 3 1.152
8.320 11.648
M '*PXAML' 1 10.528

This is custom documentation. For more information, please visit the SAP Help Portal 272
1/31/2024

10.528 10.528
M '*PXATL' 1 10.528
10.528 10.528
M 'STATTR' 2 512
9.872 10.384
M 'TRANFL' 1 10.128
10.128 10.128
M 'STAHC2' 1 9.632
9.632 9.632
M 'STATES' 3 704
6.176 9.264
M 'STAHS2' 1 9.104
9.104 9.104
M 'STAHC1' 1 9.056
9.056 9.056
M 'abtsor' 2 824
8.024 8.848
M 'DIAGOK' 1 8.320
8.320 8.320
M 'STAHS1' 1 8.096
8.096 8.096
M 'STARS2' 1 7.952
7.952 7.952
M
M ********** STACKDUMP 1 - end **********
M

We can see that the "FCLASS" tag is allocating the 250MB of memory that should not be there.
Thus, we should search for SAP notes that would address a memory issue ("memory leak") related to
the "FCLASS" tag.
Notice that:

"FCLASS" was a tag name used for the example above. It may not exist;

This was a straightforward example, when one tag made only one allocation that matched the
issue exactly. It is possible that the memory leak would occur over several small allocations
instead of a single large allocation.

If the information at the trace le does not indicate that any of the tags is causing the issue, then you
should continue with the analysis from different areas, like the OS libraries and the database client /
libraries.

<back to main page>

This is custom documentation. For more information, please visit the SAP Help Portal 273
1/31/2024

Clari cation of the PROC memory monitoring at the report RSMEMORY


mm.png

Purpose

Clarify the meaning of the columns seen at the PROC monitoring screen of the report RSMEMORY.

Overview

You can use the report RSMEMORY to monitor the PROC memory usage of an ABAP instance.

The meaning of the columns displayed at the report might not be completely clear.

PROC memory monitoring with the report RSMEMORY

The report RSMEMORY can be executed from the transactions SE38 or SA38.

The report has two buttons related to the PROC memory.

This is custom documentation. For more information, please visit the SAP Help Portal 274
1/31/2024

The button "Work Processes" show the current PROC memory usage of all work processes and of the
SAP Web Dispatcher process of the local instance, individually.

The button "Server" shows a summary of the PROC memory usage.

The list below explains the meaning of each column seen at the "Server" PROC memory screen.

"Used": the PROC memory currently in use by the work process that is executing the report
RSMEMORY;

"Used Peak": the PROC memory peak usage of the work process that is executing the report
RSMEMORY;

"Glob. Used": the PROC memory currently in use by all work processes and the SAP Web
Dispatcher of the local instance (a sum of all values seen at the "Work Processes" button);

"Glob. Peak":

If the PROC memory quota is active (parameter "em/proc_max_size_MB" set to a value


higher than zero), this column will show the peak usage of PROC memory of the instance
(sum of all work processes and the SAP Web Dispatcher);

If the PROC memory quota is not active (parameter "em/proc_max_size_MB" set to zero
or not set at all, as its default value is zero), the global peak usage is not calculated. In this
scenario, this column shows the size of the largest PROC memory allocation made since
the instance startup, considering all allocations made by any of the work processes or the
SAP Web Dispatcher;

"Glob. Quota": the current value of the parameter "em/proc_max_size_MB".

Related Content

Related Documents

The rsmemory Report

Related SAP Notes/KBAs

Es2IResCreate, shmget failed, File exists

mm.png

This is custom documentation. For more information, please visit the SAP Help Portal 275
1/31/2024

Link to this page: https://wiki.one.int.sap/wiki/display/ProdSuppBTP/Es2IResCreate%2C+shmget+failed%2C+File+exists

Purpose

To help with troubleshooting.

Overview

Following error appears in dev_disp trace le while starting the SAP system:

ERROR => Es2IResCreate: shmget failed (size= <size>. (17: File exists)

Due to this the system cannot start.


We'll check how to solve this.

Background

SAP Virtual Machine Container (VM) is activated by 'vmcj/enable = on' pro le parameter

SAP_ES2_<instance nr>_<nr> memory mapped le exists

Possible resolution steps

Stop still running SAP processes by stopsap (stopsap r3 <instance> <hostname>).

Stop sapstartsrv process as well by sapcontrol (sapcontrol -nr <instance nr> -function
StopService)

Cleanup shared memory (IPC) by cleanipc (cleanipc <instance nr> remove).

Start SAP system.

Related Content

Related Documents

Related SAP Notes/KBAs


SAP Note 17108: Shared memory still present, startup fails
SAP KBA 1827388: System cannot start due to Es2IResCreate - shmget failed - File exists error
SAP KBA 2195077: ShmCreate errors

FAQ Memory

Client-Server Technology - Memory FAQ

How to analyse the OS memory available from R3 level

How to limit the size of a developer trace le

Identifying the owner of a shared key

This is custom documentation. For more information, please visit the SAP Help Portal 276
1/31/2024

How to analyse the OS memory available from R3 level

How to analyse the OS memory available from R3 level?


It is possible to check over ST06 transaction:

This is custom documentation. For more information, please visit the SAP Help Portal 277
1/31/2024

Going to Environment -> Old ST06 there is another view of the same statistics:

Identifying the owner of a shared key

Identifying the owner of a shared key


To identify the owner of a shared key it is required to identify the address rst with "showipc <instance number>":

> showipc 02
Show/Cleanup SAP-IPC-Objects V2.3, 94/01/20
===========================================
Running SAP-Systems (Nr)...:

Show IPC-Objects of Sap-System 2


OsKey: 58900102 0x0382be86 SCSA Shared Memory Key: 58900000 Size: 4096 0.0 MB

Using ipcs tool like "ipcs | grep <key>" to identify the owner:

> ipcs | grep be86


m 16777258 0x382be86 rw-rw-rw- wsoadm sapsys

in this example, WSOADM is the owner of this shared key.

This is custom documentation. For more information, please visit the SAP Help Portal 278
1/31/2024

High memory allocation or Memory not released

Purpose

How to check situations where the memory is not released and/or we observe a high memory allocation.

Overview
The user contexts are stored in the extended memory rst, and if more memory is needed, in the heap memory, which is the
local memory of the work process. The extended memory is where the large part of the user context is allocated.

The Extended Memory consists of two layers: the EM, used by ABAP, and the ES, which is operating system-dependent. The ES is
the layer which maps operating system blocks together to an EM block. In transaction SM04 you see the memory which was
allocated by ABAP.

When a user context releases local process memory, it remains occupied from the operating system point of view. It only
becomes available for other processes when the process itself is ended. That’s why work processes are restarted. This behavior
is controlled by parameter abap/heaplimit.

Checks depending on the operative system

The rst thing would be to identify the process consuming a lot of memory at OS level.

In WINDOWS you can use the task manager for this purpose.

In UNIX you can run the following script at OS level. It monitors the 10 largest processes every 30 seconds:

while (1)
date >> pssize.log
ps alwg | sort -n +10 | tail -10 >> pssize.log

sleep 30

end

As of release 740 SP08, the memory leak analysis can be done easier using RSMEMORY, thanks to the new memory class
"PROC-Memory". The recommendations given in point 3 of the following SAP note is helpful: 2085980 - New features in memory
management as of Kernel Release 7.40

This is custom documentation. For more information, please visit the SAP Help Portal 279
1/31/2024
AIX. To analyze a high memory consumption, you can execute the command “svmon -P <pid>“, explained in the following SAP
note 1971698 - High Memory Consumption on AIX

The analysis sorted by memory can be obtained executing “ usagesvmon -U <user_id>”.

SOLARIS. You could run "prstat -s rss -can 10 5 40". In the column SIZE will show the virtual memory and the column RSS what
the process actual use.

General checks
Other checks that should be done:

SM04/SM66 -> to check if the session of an user and its memory allocation remains, even
when rdisp/plugin_auto_logout seconds have passed. Please note that in a SM66 screencapture
the user allocating a lot of memory won’t be shown if he isn't active at the speci c timestamp
when you collect the screenshot.

STAD to check what the user is executing and in which work process. This will help to look for
possible error entries in the work processes log les (dev_w*)

ST02 -> Detailed Analysis Menu -> SAP Memory -> Mode list, to see the extended memory
allocation for users. The list can’t be sorted.

ST03N -> Memory use statistics

Check the SAP regression note for your kernel patch level to discard a possible kernel bug or
memory leak at OS level. You can nd the corresponding note using the keyword KRNLxxxPLyyy
in the SAP note search.

Check value of the following parameters:

abap/heaplimit -> perhaps it's set too large

rdisp/plugin_auto_logout -> it may be set to 0, meaning that the resources for the
HTTP(s) sessions are never released

rdisp/gui_auto_logout -> the same but for the GUI sessions

rdisp/wp_auto_restart

If we are working with web services, it is also important to check if there is any other timeout
de ned in SICF for that webdynpro.

Check the memory parameters are correctly set according to the platform / kernel release the
system is running

Check if there was some memory shortdumps in transaction ST22.

Related Content

Related Documents
Types of memory

ABAP Heap Limit

This is custom documentation. For more information, please visit the SAP Help Portal 280
1/31/2024
CST Expert Content Memory Management

Related SAP Notes/KBAs


SAP Note 158346: Periodic restart of work processes

SAP Note 2065315: Memory leak handling

SAP Note 2019744:- How to limit overall swap space consumption of the ABAP Server in NW 7.40

SAP Note 2065315: Memory leak handling

SAP note 1971698: High Memory Consumption on AIX

SAP Note 2085980: New features in memory management as of Kernel Release 7.40

Memory Dumps as of Kernel Release 7.4x

mm.png

Purpose

Demonstrate how the shortdumps below can be misleading due to the new design of the memory
management in 7.40.

#1. LOAD_NO_ROLL*

#2. TSV_TNEW_BLOCKS_NO_ROLL_MEMORY*

#3. SYSTEM_NO_ROLL*

#4. STACK_STATE_NO_ROLL_MEMORY*

#5. TSV_TABH_POOL_NO_ROLL_MEMORY*

*example of short dumps giving the wrong idea of something related to ROLL memory

This is custom documentation. For more information, please visit the SAP Help Portal 281
1/31/2024

Overview

Before the introduction of extended memory in release 3.0A, the implementation of our roll
mechanism actually implied copying memory areas to les and back. With extended memory, this has
long been replaced by more elegant memory mapping solutions. But the old roll memory was still
used, e.g for ABAP session memory, user info, the SPA structure and many other parts of the ztta
structure. Now the whole classic roll functionality became obsolete since all data that was stored in
the classic ROLL area is now allocated in Extended memory, which become easily con gurable with the
Zero Administration Memory Management approach.

As effect of these changes the following memory parameters formerly describing roll memory have
been removed:

Parameter name Description

ztta/roll_ rst Initial allocation from the roll area

ztta/roll_area Total size of the roll area in bytes

rdisp/roll_SHM Size of the roll buffer in 8 KB blocks

rdisp/roll_MAXFS Size of the roll le in 8 KB blocks

Roll section removed from the Memory Overview in ST02.

Prior to NW7.4 base system, ST02 shows the "Roll area" info like below:

Since NW74, there is no more "Roll area" info like this:

This is custom documentation. For more information, please visit the SAP Help Portal 282
1/31/2024

Conclusion

The dump information provided by the system can be inaccurate as the roll area is no longer used
with the new design of SAP Web Dispatcher and taskhandler in 7.40. Thus, the actual root cause
should considered as applications consuming to much memory, high user load on the server or
simple not enough memory available due to a HW or memory parameter(s) limitation.

Parameters to be evaluated according to the memory requirements:

EM Parameters Description

em/initial_size_MB (em/total_size_MB if Entire EM available for an instance, Exhaustion can be indicated by the Max use in
running on AIX) ST02.

ztta/roll_extension User quota for the system. The short dump and developer trace information shows if
quota was reached.

ztta/max_memreq_MB As per SAP note 353579: SYSTEM_NO_ROLL

HEAP Parameters Description

abap/heap_area_dia Heap memory quota (HEAP) for dialog work processes.

abap/heap_area_nondia Heap memory quota (HEAP) for non-dialog work processes.

abap/heap_area_total Heap memory quota all work processes can allocate in total.

This is custom documentation. For more information, please visit the SAP Help Portal 283
1/31/2024

Important

The “kernel regression collection notes” should be checked against memory leak problems as it
can make a strong in uence on the cause of those dumps. For each patch level such notes
provides up-to-date links where known newly introduced problems can be nd. See SAP note
941735: Finding information about regressions in the SAP kernel

Related Documents

SAP Help Portal: Functions of the Memory Management System - BC-CST-MM

SAP Help Portal: What's New in SAP NetWeaver 7.4 (Release Notes)

ABAP Keyword Documentation: roll area

SCN: Memory Management Simpli cations

Additional Info Notes

SAP note 1680814: "EmAlloc failed" and other memory allocation problems

SAP note 2085980: New features in memory management as of Kernel Release 7.40

Platform Speci c Notes

SAP note 941735: SAP memory management system for 64-bit Linux systems

SAP note 88416: Zero administration memory management for the ABAP server (Windows)

SAP note 789477: Large extended memory on AIX (64-bit) as of Kernel 6.20

This is custom documentation. For more information, please visit the SAP Help Portal 284
1/31/2024

Monitoring Memory Resources Using CCMS Infrastructure


mm.png
Purpose
The purpose of this page is to explain how the memory resources of an SAP instance can be monitored through the CCMS
infrastructure.

Overview
This page provides details about the CCMS monitoring infrastructure, speci cally focused in the memory resources monitoring,
providing details about how to nd the monitoring functions and how to con gure them accordingly.

CCMS Transaction RZ20


The CCMS monitoring infrastructure, a solution within SAP NetWeaver, centrally monitors any IT environments - from individual
systems through networked SAP NetWeaver solutions, to complex IT landscapes incorporating several hundred systems. In this
section, you learn about the Alert Monitor (transaction RZ20) and its monitoring functionalities.

The memory monitoring functionalities are basically divided in two different parts, which are: Operating System Memory
Resources and SAP System Memory Resources.

Monitoring Operating System Memory Resources


The CCMS Infrastructure allows you to monitor the memory resources available in the Operating System through the
transaction RZ20. This MTE tree can be found in the below RZ20 path:

RZ20 transaction → SAP CCMS Monitor Templates → Operating System → <Instance Name> → Memory.

See below an image displaying the OS memory monitoring tree.

This is custom documentation. For more information, please visit the SAP Help Portal 285
1/31/2024

As you can see in the above image, these MTEs are monitoring resources such as free memory in the server, allowing you to
monitor either the total value or the free memory percentage. You can also monitor the swap details, including the free swap,
the total swap size, the maximum swap size and others. The paging monitoring landscape is very complete in this monitoring
tree, including the option to monitor pages per second, kilobytes per second and also the measurement with RAM.

Monitoring SAP Instance Memory Resources


The CCMS Infrastructure allows you to monitor the Memory resources available in the ABAP instance through the transaction
RZ20. This MTE tree can be found in the below RZ20 path:

RZ20 transaction → SAP CCMS Monitor Templates → Entire System → <SID> → Application Server → <Instance Name> →
R3BasisSystem → Memory Management → R3MemMgmtResources.

See below an image displaying the SAP memory monitoring tree.

This is custom documentation. For more information, please visit the SAP Help Portal 286
1/31/2024

The MTEs for ABAP instance memory resource monitoring shown above can monitor the following resources. See the SAP
online documentation Displayed Values at Instance Level - Memory for more details about each of the below areas.

Extended Memory Monitoring

EsTotal - Total size of extended memory


EsPeak - Extended memory higher water mark since startup
EsRecentPeak - Extended memory higher water mark since last query
EsAct - Extended memory snapshot of ll status
EsAttached - Amount of extended memory in user contexts that is active in work processes now

Heap Memory Monitoring

HeapTotal - Maximum allowed amount of heap memory (abap/heap_area_total)


HeapPeak - Heap memory higher water mark since startup
HeapRecentPeak - Heap memory higher water mark since last query
HeapAct - Currently amount allocated to heap memory

Extended Memory Slots Monitoring

EmSlotsTotal - Maximum number of extended memory management slots


EmSlotsPeak - Higher water mark of extended memory management slots since startup
EmSlotRecentPeak - Higher water mark of extended memory management slots since last query
EmSlotsAct - Amount currently allocated to EM management slots

Work Process Monitoring

PrivWpNo - Current number of WPs in PRIV mode


HoldWpNo - Current number of WPs in HOLD status.
WpDiaRestart - No. of dialog WP restarts (because abap/heaplimit exceeded) since startup
WpNonDiaRestart - No. of batch WP restarts (because abap/heaplimit exceeded) since startup

Monitoring Scenarios Examples

This is custom documentation. For more information, please visit the SAP Help Portal 287
1/31/2024
1. Using the Free Memory MTE under the Operating System monitoring tree, you can set up a monitoring scenario to raise
an alert when you have a small amount of free memory available in your server, therefore preventing a situation where
the memory would be completely exhausted. The Free MTE provides the same monitoring functionality, however,
showing of the percentage of the total memory which is currently free.

2. Using the EsAct MTE under the R3BasisSystem MTE tree, you can set up a monitoring scenario to raise an alert when
you have a small amount of extended memory left in your SAP instance, according to your total amount of extended
memory con gured. This functionality is specially important as from kernel 7.4x, when the roll memory concept is
included in the extended memory, making the extended memory a extremely important and crucial resource for the
instance operations. See SAP Note 2085980.

3. Using the HeapAct MTE under the R3BasisSystem MTE tree, you can set up a monitoring scenario to raise an alert when
you have a small amount of heap memory left in your SAP instance, according to your total amount of heap memory
con gured. Such monitoring scenario helps to prevent the dumps TSV_TNEW_PAGE_ALLOC_FAILED, since you can
recon gure your memory settings in canse the memory consumption increases. See SAP KBA 2180736 for more details
about this dump.

CCMS Auto-Reaction Methods


In the CCMS monitoring infrastructure, you can set up any MTE available in transaction RZ20 to automatically trigger email
alerts in case the values reported by them meet the threshould values de ned. The next chapters will explain more details
about the con guration process to achieve this.

De ning Threshold Values for the Monitored MTEs

The rst step is to de ne which MTEs you want to monitor in transaction RZ20, with this, you can start to set up their
thresholds accordingly, so you are alerted in the correct scenario. Follow the Adjusting the Threshold Values chapter from
the Con guring Alert Triggering and Alert Reactions SAP online help documentation for a detailed step by step on how to
achieve this.

This is custom documentation. For more information, please visit the SAP Help Portal 288
1/31/2024

De ning and Assigning Auto-Reaction Methods for the Monitored MTEs

The second step to achieve this con guration is to de ne and assign the auto-reaction methods to the desired MTEs in the
CCMS monitoring infrastructure. In order to perform this con guration, follow the steps mentioned in the De ning an
Automatic Alert Noti cation SAP online help documentation.

Alternatively, you can choose to de ne Central auto-reaction methods, which will trigger the email alert from the central system
instead of the local system. For this con guration, refer to the SAP online help Setting Up Central Auto-Reaction Methods for
more details.

This is custom documentation. For more information, please visit the SAP Help Portal 289
1/31/2024

Displaying MTE Performance Information Graphically

Withing the CCMS transaction RZ20, you can display the performance values shown by an speci c MTE as a graphic, allowing
you to make faster and more accurate analysis based on the reported data. In order to display the MTE values as a graphic,
follow the below steps.

1. Select the Performance MTE in RZ20.

2. Click in the Display Details button.

3. Select whether you want to display the last 30 minutes or 24 hour value.

4. Click in the "Display performance values graphically" button.

5. The graphic is nally shown in the below format.

This is custom documentation. For more information, please visit the SAP Help Portal 290
1/31/2024

Related Content

Related Documents
De ning an Automatic Alert Noti cation

Con guring Alert Triggering and Alert Reactions

Setting Up Central Auto-Reaction Methods

Displayed Values at Instance Level - Memory

Related SAP Notes/KBAs


SAP Note 939616 - CCMS auto-reactions: Help with troubleshooting

SAP Note 176492 - Automatic email when an alert occurs (RZ20)

SAP Note 2085980 - New features in memory management as of Kernel Release 7.40

SAP KBA 2180736 - TSV_TNEW_PAGE_ALLOC_FAILED

No free memory available on Linux

Purpose

Provide clari cation about the output of the command "free" on Linux operating systems.

Overview
This is custom documentation. For more information, please visit the SAP Help Portal 291
1/31/2024

The command "free" shows high memory consumption.

This page provides references to documentation that explains how to interpret the output of the
command "free" correctly.

Read the documents at the "Related Content" section.

Related Content

Related Documents

Linux ate my RAM (external website)

Related SAP Notes/KBAs

SAP note 1382721: Linux: Interpreting the output of the command 'free'

SAP Extended Global Memory (EG) parameters

mm.png

Purpose

Explain the SAP parameters involved in the EG shared memory area.

Overview

EG are shared segments shared globally among all work processes.


This is a Memory area that belongs to the Extended Memory (EM). The goal of this Expert Content is
to explain what are the memory parameter that determine the total size of EG memory.

Extend Global Memory area

The size of the EG is obtained from the total of the parameter values:

As from 74.X Kernel

em/global_area_MB + abap/shared_objects_size_MB + zcsa/table_buffer_area +


zcsa/db_max_buftab

Before 74.X Kernel

em/global_area_MB + abap/shared_objects_size_MB

This is custom documentation. For more information, please visit the SAP Help Portal 292
1/31/2024

It is required that the address space for EG can be provided by the EM and also by the Operating
System.
In order to monitor the EG area it is possible to use different tools:

SE38 -> RSMEMORY -> EG Overview or

SE38 → RSMEMORY → EG Consumer (to displays the different consumers using EG memory)
as from Netweaver 7.4

transaction SHMM displays the content of the abap/shared_objects area

ST02 --> Detail analyis menu --> SAP Memory --> Mode list", in the colunm "I-Mode Gl" and with
the user-id via SM50 you could identify the work process using the EG memory at that time

Different applications use this memory area:

ITS services that can be monitorized via SITSPMON transaction

RTM (Runtime monitor) : the memory speci ed along with pro le parameter
"abap/rtm_high_water" is being allocated out of the overall extended global memory area

Coverage Analizer (transaction SCOV)

Batch jobs generating spool outputs. If these processes don't issue a commit for sometime
there could occupied EG memory

Related Content

Related Documents

Related SAP Notes/KBAs

2148571 - Explanation for higher Extended Memory (EM) and Extended Global Memory (EG)
consumption after upgrade to SAP Kernel 7.4x

SAP Memory Management Implementations (In Process)

mm.png

Purpose

Help you to understand the different SAP memory management implementations available in the SAP system.

Overview
This page contains information about the SAP memory management implementations and their differences, demonstrating the
relevant parameters for each one of them.

This is custom documentation. For more information, please visit the SAP Help Portal 293
1/31/2024

SAP Memory Management Implementations


The parameter es/implementation is responsible for controlling which memory implementation is active in the SAP system.
Depending on your operating system, different implementation strategies can be used, which consequently brings different
parameters to control the Extended Memory area. The parameter ES/TABLE also modi es the behavior of the Extended
Memory implementation. This parameter needs to be set to a different value depending on the Operating System.

Memory Implementations "map" and "view"


The memory implementations "map" and "view" represent the same strategy, however, as highlighted in the above image, the
"map" implementation is used in Linux and Unix systems (except AIX), while the "view" implementation is the default for the
Windows operating system.

Strategy and Characteristics

The "map" memory implementation causes the activation of a signi cantly simpli ed method for con guring memory
management. This implementation is recommended for 32-bit Linux operating systems as described in detail in SAP
Note 386605.

In this memory implementation strategy, only the currently active user context is mapped to the address space of the work
process. This is considered a classic model where a roll-in corresponds to mapping a context in the extended memory, and a roll-
out corresponds to unmapping this context. The below image shows an example of this process.

As represented above, each work process has an extended memory area reserved to the mapping of the current user context.
The context is mapped from the shared resource, which contains all the user contexts, and once the processing is over,
the context is returned back in the shared resource by making the context visible again.

Parameters and De nitions

em/initial_size_MB - This parameter speci es how much SAP extended memory is available on the SAP system.

em/max_size_MB - Maximum size of the SAP extended memory.

This is custom documentation. For more information, please visit the SAP Help Portal 294
1/31/2024
em/address_space_MB - Quantity of Extended Memory that each single user context may fully occupy provided
ztta/roll_extension has not yet been reached; this interval is reserved from the start of the instance.

Memory Implementations "STD" and " at"


The memory implementations "STD" and " at" represent the same strategy, however, as highlighted in the above image, the
"STD" implementation is used in Linux and Unix systems, while " at" is valid only for Windows.

Strategy and Characteristics

In this memory implementation strategy, the extended memory uses a memory-mapped le with memory protection. All the
user contexts are always mapped in the virtual address space for each work process in the SAP system. All the user contexts
are initially protected.

The roll-in, in this memory implementantion strategy, means removing the protection from a user context in the extended
memory and roll-out means protecting a context again. The advantage of this memory model is the reduced number of soft
page faults, because the process working set is stable. The disadvantage is the overhead of the memory protection, which
results in higher kernel-mode CPU usage.

In the above image you can see one work process removing the protection from a user context, while this same context is
locked for all other work processes. Once the work process which removed the protection from the user context performs the
roll-out and protects the user context again, this same user context can be now acessed by the other work process.

Parameters and De nitions

em/initial_size_MB - This parameter speci es how much SAP extended memory is available on the SAP system.

es/max_seg_size_MB - Speci es the maximum size of an extended memory segment in the SAP system.

es/max_segments - Speci es the number of extended memory segments in the SAP system.

This is custom documentation. For more information, please visit the SAP Help Portal 295
1/31/2024

Memory Implementation "SHM_SEGS"

The parameter ES/TABLE determines the function table used to provide ES functionality. There are two ES/TABLE
implementations available. These are UNIX_STD, which is the default, and SHM_SEGS. At present only AIX supports the
SHM_SEGS implementation.

Strategy and Characteristics

Parameters and De nitions

EM/TOTAL_SIZE_MB - This parameter speci es how much SAP extended memory is available on the SAP system.

ES/SHM_SEG_SIZE - Size of the AIX system segments (in megabytes)

ES/SHM_PROC_SEG_COUNT - Speci es the number of shared memory segments that are used as shared and privately.

ES/SHM_MAX_SHARED_SEGS - Speci es the number of shared memory segments that are used privately.

ES/SHM_MAX_PRIV_SEGS - Speci es the number of shared memory segments. The value comes from
ES/SHM_PROC_SEG_COUNT – ES/SHM_MAX_PRIV_SEGS

ES/SHM_USER_COUNT - The maximum number of users in all open sessions.

This is custom documentation. For more information, please visit the SAP Help Portal 296
1/31/2024
ES/SHM_SEG_COUNT - The maximum number of AIX system segments that ESSHM uses.

Related Content

Related Documents
Memory Management on Linux

Implementing the Extended Memory on Windows

Memory Management Under Linux

Implementing the Extended Memory Under UNIX

Old or New Memory Management?

Con guration for AIX

Con guration for AIX

Release of SAP Memory for the Operating System

Related SAP Notes/KBAs


SAP Note 1458065 - Extended memory restricted to 64G

SAP Note 941735 - SAP memory management system for 64-bit Linux systems

SAP Note 1002587 - Flat Memory Model on Windows

(Use the following Hyperlink with SAP Note/KBA number at end: https://service.sap.com/sap/support/notes/123456)

SAP Shared Memory Pools 10 and 40 as of Kernel 740

mm.png

Purpose
Help you to understand the shared memory pools 10 and 40 concept as of kernel 740 and how they are sized in the ABAP
application server environment.

Overview

This page contains information about the shared memory pools 10 and 40 and the new mechanism to calculate their size as of
kernel 740.

Shared Memory Pools Sizing before SAP Kernel 740


Before the Kernel 740, depending on the size of the buffers inside of the shared memory pools 10 and 40, it was recommended
to increase the size of the buffer so the content could t inside it and the system could start successfully and work without
issues. This sizing was made by using the parameters ipc/shm_psize_10 and ipc/shm_psize_40 as per the SAP
documentation Adjusting Pool Sizes. Also, the pool sizes could automatically be increased in the start up moment, writting
entries informing this in the SAP Web Dispatcher trace.

Shared Memory Pools Sizing as of SAP Kernel 740


This is custom documentation. For more information, please visit the SAP Help Portal 297
1/31/2024
As of the Kernel 740 many memory managent concepts have changed. The SAP Note 2085980 explains many of these changes.
For example the abolition of the classic Roll Memory which is now a part of the Extended Memory and the availability of Zero
Administration Memory Management to UNIX platforms between others.

As you can see in the below image, many memory and buffer parameter are now by default based on formulas which are directly
and indirectly dependent on the value of the PHYS_MEMZINE parameter, which has the value of the total available memory in
the server.

Some of the above buffer parameters like rsdb/ntab/ftabsize, rsdb/ntab/irbdsize and rsdb/ntab/sntabsize are contained by
default inside of a shared memory pool (in this case the pool 40) and as you can see their values are also by default de ned
based on a formula which indirectly related to PHYS_MEMSIZE. Based on this fact, it makes no sense to have statical values for
the size of the shared memory pool buffers de ned in the pro les and also default statical values in case the parameters are
not de ned, since it could easily cause a situation where the pool is too small for the size of the buffers contained on it and as
consequence the system would not be able to start.

This is custom documentation. For more information, please visit the SAP Help Portal 298
1/31/2024

In order to prevent start up problems and authomatize the sizing of the shared memory pools, if the ipc/shm_psize_10 and
ipc/shm_psize_40 are not de ned in the pro les, the kernel will automatically calculate the size of the pools 10 and 40 in the
moment of the start up based on the size of the buffers contained on them. This explains the fact that documentation in RZ11
for the parameters ipc/shm_psize_10 and ipc/shm_psize_40 recommends the parameters not to be changed and speci ed as
of this release.

ipc/shm_psize_40:
"Size of SHM pool 40. This parameter should no longer be changed as of Release 7.40 SP2."

ipc/shm_psize_10
"Size of SHM Pool 10. This parameter should not be used from release 7.40 upwards."

Note:

1. As of 74x kernel onward, the Kernel will not follow the manual con guration of shared pools, it automatically
calculate the shared memory.

2. You can ignore the error entry from the sappfpar regarding ipc/shm_psize_10 or ipc/shm_psize_40 . (For example
ERROR: Size of shared memory pool 40 too small )

Memory Administration and Sizing of the Pools

The shared memory pools in all the kernel versions are normal shared memories, therefore there is no size restriction for them.
However, the administration inside the pools handle the different memory keys still with a 32bit model (since it has to be
compatible with 32bit executables which will have to attach to pools from outside). This characteristic leads to problems
whenever the shared memory pool sizes grows biggrer than 2GB, since some of the shared memory keys inside the pool will
share the same memory spaces, causing a system crash.

In case a shared memory pool needs more than 2GB of space since some of the areas contained inside it are occupying a huge
space, These areas must be located outside of any memory pool as described in the SAP Note 1137734. This will make sure
information can be written in the segment without corrupting the next memory area and therefore the system can still work
correctly.

Related Content

Related Documents
Adjusting Pool Sizes

Related SAP Notes/KBAs


SAP Note 2085980: New features in memory management as of Kernel Release 7.40
SAP Note 1998242: Changes about Roll area from SAP_BASIS 7.40 SP2
SAP Note 88416: Zero administration memory management for the ABAP server
SAP Note 1137734: Assignment of memory areas, shared memories, and pools

TSV_TNEW_PAGE_ALLOC_FAILED
mm.png

This is custom documentation. For more information, please visit the SAP Help Portal 299
1/31/2024

Before reading this page

You may nd official documentation in SAP KBA 2180736 - TSV_TNEW_PAGE_ALLOC_FAILED

Purpose

This document's intent is to help customers with the analysis and resolution of the TSV_TNEW_PAGE_ALLOC_FAILED shortdump, which is not
an error or bug in the software but purely related to customizing of resources on the SAP application server. This guide will help you to analyze
every occurrence and to conclude what team needs to be involved in the further steps of troubleshooting.

Overview

First and foremost, we have to keep in mind that this shortdump will be raised in one of the following scenarios:

1.
A single work process attempts to allocate more memory than it is allowed (alone). System protection mechanism. Current system load is irrelevant.

2.
System is busy and there are lots of processes requesting memory. In this scenario, the current memory usage is high. As soon as the very next work
process requests an amount that crosses the threshold of the global total of memory, we have the shortdump.

Analysis of scenario #1:

The required analysis begins in the ST22 transaction where more information on the dump can be checked. Once in ST22, select the desired
occurrence of TSV_TNEW_PAGE_ALLOC_FAILED and scroll to the "Memory consumption" area. This area reports the memory usage at the time
of the dump. We have below one example of such information (please be aware that the dots were added in fields "EM" and "Heap" for education
purposes):

The shordump information for this occurrence in specific, tells us that the process has used 2 GB of extended memory
Memory
(EM) plus 2 GB of heap memory (Heap). We then conclude that at the time of the dump, a little bit more than 4 GB of
consumption
memory was being used by the process, which failed as no more memory could be provided.

Roll.... 0
EM......
2.000.000.000
Heap....
2.000.000.000
Page....
16384
MM used.
1157760496
MM free.
2294495840

With the following information in mind, we have to check what are the current memory parameters related to the values that we just saw. One way to
do it, is through transaction ST02. From ST02, you can click twice on "Extended memory" field and then "Current parameters". On that screen, we
are interested in the following parameters (please be aware that the dots were added for education purposes):

Looking at these parameter's values brings us to conclude that the process that

This is custom documentation. For more information, please visit the SAP Help Portal 300
1/31/2024
Memory settings raised the shortdump could successfully allocate the full assigned memory quota for
Extended memory "ztta/roll_extension" and assigned quota for HEAP memory which
em/initial_size_MB... 12.000 can break into one of the two following parameters: "abap/heap_area_dia" for a
ztta/roll_extension.. 2.000.000.000 dialog process OR "abap/heap_area_nondia" for a non dialog one. See specific
abap/heap_area_dia... 2.000.000.000 parameters / platform below.
abap/heap_area_nondia 2.000.000.000
abap/heap_area_total. 4.000.000.000

If the work process could allocate all of the amount available for a single process, for both EXTENDED MEMORY and HEAP areas and yet failed,
we can conclude that this case fits into scenario #1 described above.

Analysis of scenario #2:

Lets assume the same dump happened and we are heading for the analysis just as in the previous example. This is what we see in the consumption
area:

Now we have a slightly different scenario. We already know that a maximum of 2 GB of extended memory is available for
Memory
that process but still it has dumped after having used only 1 GB. The only explanation would be that there are no other
consumption
1GB available for the application server as a whole.
Roll.... 0
EM......
1.000.000.000
Heap.... 0
Page....
16384
MM used.
1157760496
MM free.
2294495840

In order to confirm/ rule out that assumption, we move the analysis once again to ST02 transaction. Our focus is once again on the SAP MEMORY
tab. We look now to the "Extended memory" field where simple by relating the two fields "MaxUse" and "In Mem", its possible to confirm that, at
least once in the current uptime, all of the extended memory was used. Assuming that it was our dump the responsible, the current Extended memory
of the instance was around 11GB (from the 12 GB available) and our program has allocated just the 1GB that not yet taken.

SAP MEMORY Curr.Use % CurUse[KB] MaxUse[KB] In Mem[KB]

Page area 0,12 308 11.512 131.072

Extended memory 14,69 1.679.360 12.000.000 12.000.000

Heap memory 0 100.509 0

That would be a perfect example of scenario #2.

Operating System Speci cs

The quota of extended memory EM per platform is defined by:

AIX (ES/TABLE = SHM_SEGS)

This is custom documentation. For more information, please visit the SAP Help Portal 301
1/31/2024
ztta/roll_extension: Defines the quota of extended memory (EM) in the excerpt above. If the value shown in the dump for EM is much lower than
this parameter it is generally because the total amount of EM that can be allocated by ALL sessions of an application server has been reached. This
can be confirmed in transaction ST02. For additional AIX memory parameters, see SAP Note 789477.

Linux / Windows (es/implementation = map )

ztta/roll_extension;
em/address_space_MB: This parameter specifies in MB the size of the address space that is provided for the memory class "Extended Memory" in a
work process. Therefore, it should be set higher than ztta/roll_extension.

For additional information regarding memory management on Linux with MAP implementation, see SAP Note 386605.
For additional information regarding memory management on Windows, see SAP Note 88416.

Other UNIX platforms (ES/TABLE = UNIX_STD implementation)

ztta/roll_extension: see case "a".

For additional information regarding memory management on Linux 64 bit (ES/TABLE = UNIX_STD), see SAP Note 941735.

The quota of Heap memory is set by the following parameters:

abap/heap_area_dia Heap memory quota (HEAP) for dialog work processes.

abap/heap_area_nondia Heap memory quota (HEAP) for non-dialog work processes

abap/heap_area_total Heap memory quota all work processes can allocate in total

On all operating systems (i.e. Heap parameters are operating system independent).

abap/heap_area_dia: Heap memory quota (HEAP) for dialog work processes.


abap/heap_area_nondia: Heap memory quota (HEAP) for non-dialog work processes.
abap/heap_area_total: Heap memory quota all work processes can allocate in total.

Memory quotas can be increased temporarily (on the fly) without restarting the system by running program RSMEMORY. For details, refer to The
rsmemory Report. If the system is a production one, this could be the best way for already known programs consuming memory quotas.

The total Extended memory available is set by the parameters:

a) AIX (ES/TABLE = SHM_SEGS)

EM/TOTAL_SIZE_MB: This parameter limits the TOTAL amount of Extended Memory that can be allocated by ALL sessions of an application
server.

b) Linux ( es/implementation = map ) and Windows:

em/max_size_MB: This parameter limits the TOTAL amount of Extended Memory that can be allocated by ALL sessions of an application server.

This is custom documentation. For more information, please visit the SAP Help Portal 302
1/31/2024
c) Other UNIX plaforms (UNIX_STD implementation):

em/initial_size_MB: This parameter limits the TOTAL amount of Extended Memory that can be allocated by ALL sessions of an application server.

As of kernel 7.40, availability of Zero Administration Memory Management is available for all platforms (see SAP Note 2085980).

Conclusion
In any of the below described cases, where it is confirmed that the memory mechanism works as designed, it falls to the application team (SAP or
customer's) to analyze the abnormal memory consumption. Most of the times it's possible to increase the memory quotas up to a certain threshold
with no depth understanding on the requirements of the associated application but this is entirely a system admin's call to make. In case the affected
program is indeed custom made and the parameters were already tuned (meaning that no more memory will be spared) then the customer team which
developed the application should perform this analysis.

Related Content

Platform-Specific Description of Memory Management

Related Documents

ztta/roll_extension_dia: EM Quota for Dialog Processes


abap/heap_area_total: Total Quota for Heap Memory
abap/heap_area_dia: Heap Memory Limit for Dialog Work Processes

Related SAP Notes/KBAs

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Luckiest+Guy' is not on the allowlist. If you want to
include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

sappfpar "check" option reviewed

Purpose

This page aims to clarify each the tests that are made by sappfpar "check" function.

Overview

The sappfpar is a standalone program used by checking SAP con guration and make tests validating customer scenarios.

Besides multiple options the program can evaluate, the option "check" from sappfpar runs a range of tests and veri cation on
SAP parameters, de nitions, and memory con guration. The most recent release of sappfpar (as from kernel 749) improve
some old veri cations and also include additional ones that are illustrated above.

Detailed function overview


The header of the output returns additional details about the SAP kernel release, patch level, Operating System and Memory
Management implementation. Each OS has its own SAP memory implementation that can be split into 2 or more different
implementations.

This is custom documentation. For more information, please visit the SAP Help Portal 303
1/31/2024

================================================================
== Checking profile: <profile file path>
== SAP Release 7760
== SAP Patch 0
== System ID 390 (AMD/Intel x86_64 with Linux)
== ES Implementation std
================================================================

All of the additional checks will use its own headers to report the action and what is being checked. The analysis made by the
function is an overview of all manually con gured parameters and, in the end, we have the memory speci c analysis.

The metadata check validates the value that each parameter is currently set. For each parameter, SAP de nes ranges or values
and if the current parameter con guration does not follow the recommendation, a warning is triggered and the warning counter
increase/

Metadata Parameters Analysis


================================================
***WARNING: Parameter abap/heap_area_total = 0
Parameter value out of range (20000000 1024000000000)

Based on speci c requirements, some parameters will need special de nitions besides the default size in use (Kernel 777 only).
This is a special parameter analysis based on note 2757220. This check creates warnings.

Special Parameters Recommendations


================================================
***WARNING: Kernel default is no longer recommended. Note 2757220: auth/check/calltransaction = 2,

This option will check all parameters that are de ned multiple times. Multiple de nitions are considered errors as could lead to
mask con guration and, during system troubleshooting, lead to wrong conclusions.

Parameters Redefinitions
================================================
***ERROR DIR_INSTANCE defined 2 times in /net/usr.work/I822853/runsap/CGK_ALX/profil_gen.txt
***ERROR abap/buffersize defined 2 times in /net/usr.work/I822853/runsap/CGK_ALX/profil_gen.txt

This returns parameters classi ed as unknown that are parameters not de ned in sapparam project, this means "non-official"
parameters. Note that these unknown parameters may work only to few speci c kernel releases and these warnings returned
by sappfpar does not mean that the parameters are not "valid" for the kernel releases running on the system. The function also
returns obsolete parameters that are not really valid for your kernel release. For obsolete parameters, the component
responsible by it is also returned on the output.

Unknown and Obsolete Parameters


================================================
***WARNING: unknown parameter: enq/client/serverinst =10
***WARNING: obsolete parameter: eu/iwb/help_type =1
component: KM-KW

This is custom documentation. For more information, please visit the SAP Help Portal 304
1/31/2024
There are SAP parameters de ned by formulas in SAP kernel. These are parameters where its required/recommended size
depends on a combination of other parameters. These are considered formula based parameters. If the current size does not
follow the output of the expected formula, a warning is triggered.

Formula Based Parameters


================================================
***WARNING: Formula parameter: abap/buffersize = 1000000 found in c:\MakeSap\local_R3_NTAMD64\ALX\p

This is an additional check from the previous one where the formula based prints the default size based on the formula and the
current size of the parameter if it diverges.

Parameter changes if default formulas would be used:


================================================
EM/TOTAL_SIZE_MB: 10240 --> 11166
ES/SHM_SEG_SIZE: 4102 --> 4096
abap/buffersize: 350000 --> 2289664
abap/cov_buffersize: 75264 --> 95126

Additional Memory and OS Specific Checks


================================================

----------------------------------------------------------------
***WARNING: Unexpected value found: abap/heap_area_total = 0
SOLUTION: A wrong setting of abap/heap_area_total may increase
the consumption of memory at Operating System level
----------------------------------------------------------------

----------------------------------------------------------------
***ERROR: Unexpected value found: abap/heap_area_dia = 0
The estimation of Heap worst case will not be precise
SOLUTION: The whole Operating System memory may be consumed by
dialog work process. Configure the parameter abap/heap_area_dia
----------------------------------------------------------------

This is a summary of shared pools. Here we can see the size estimated by SAP kernel to each pool that is the size initialized.
The following view disposes of the shared key inside and outside of the pools. Is it also possible to see the size
required/calculated for each key.

Shared Memory Disposition Overview


================================================
Shared memory pools
Key: 10 Pool
Size configured.....: 160000000 ( 152.6 MB)
Size min. estimated.: 157122000 ( 149.8 MB)
Advised Size........: 160000000 ( 152.6 MB)

Key: 40 Pool for database buffers


Size configured.....: 1800000000 (1716.6 MB)
Size min. estimated.: 1796107716 (1712.9 MB)
Advised Size........: 1800000000 (1716.6 MB)

Shared memories inside of pool 10


Key: 11 Size: 600000 ( 0.6 MB) Factory calender buffer
Key: 12 Size: 6000000 ( 5.7 MB) TemSe Char-Code convert Buf.
Key: 13 Size: 60500000 ( 57.7 MB) Alert Area
Key: 14 Size: 40000000 ( 38.1 MB) Presentation buffer
Key: 16 Size: 21360 ( 0.0 MB) Semaphore activity monitoring

Shared memories inside of pool 40

This is custom documentation. For more information, please visit the SAP Help Portal 305
1/31/2024
Key: 42 Size: 485602656 ( 463.1 MB) DB TTAB buffer
Key: 43 Size: 928001424 ( 885.0 MB) DB FTAB buffer
Key: 44 Size: 200641424 ( 191.3 MB) DB IREC buffer
Key: 45 Size: 118721424 ( 113.2 MB) DB short nametab buffer
Key: 46 Size: 160 ( 0.0 MB) DB sync table
Key: 47 Size: 3175424 ( 3.0 MB) DB CUA buffer
Key: 48 Size: 2760160 ( 2.6 MB) Number range buffer
Key: 49 Size: 7204020 ( 6.9 MB) Spool admin (SpoolWP+DiaWP)

Shared memories outside of pools


Key: 1 Size: 512 ( 0.0 MB) System administration
Key: 2 Size: 25417032 ( 24.2 MB) Disp. administration tables
Key: 3 Size: 243712000 ( 232.4 MB) Disp. communication areas
Key: 4 Size: 1042192 ( 1.0 MB) statistic area
Key: 6 Size: 372736000 ( 355.5 MB) ABAP program buffer
Key: 7 Size: 33376 ( 0.0 MB) Update task administration
Key: 8 Size: 267387380 ( 255.0 MB) Paging buffer
Key: 18 Size: 6788760 ( 6.5 MB) Paging administration
Key: 20 Size: 78634094 ( 75.0 MB) New Table buffer tbi
Key: 21 Size: 8951952 ( 8.5 MB) Request Queue Admin
Key: 23 Size: 446401424 ( 425.7 MB) DB-TLOB-Buffer
Key: 30 Size: 9328 ( 0.0 MB) Taskhandler runtime admin.
Key: 41 Size: 25010000 ( 23.9 MB) DB statistics buffer
Key: 51 Size: 35000000 ( 33.4 MB) Extended memory admin.
Key: 52 Size: 180000 ( 0.2 MB) Message Server buffer
Key: 54 Size: 167276544 ( 159.5 MB) Export/Import buffer
Key: 56 Size: 535528 ( 0.5 MB) Application statistics
Key: 57 Size: 1992294 ( 1.9 MB) Profilparameter in shared mem
Key: 58 Size: 2076 ( 0.0 MB) Enqueue ID for reset
Key: 62 Size: 23068672 ( 22.0 MB) Memory pipes
Key: 63 Size: 409600 ( 0.4 MB) ICMAN shared memory
Key: 64 Size: 4227072 ( 4.0 MB) Online Text Repository Buf.
Key: 65 Size: 4227072 ( 4.0 MB) Export/Import Shared Memory
Key: 73 Size: 60211232 ( 57.4 MB) CCMS Extended Alert Area
Key: 76 Size: 1185920 ( 1.1 MB) Ext. Segment Administration
Key: 77 Size: 8056 ( 0.0 MB) Ext. Memory Administration
Key: 78 Size: 4248 ( 0.0 MB) Ext. Global Memory Admin
Key: 81 Size: 35168 ( 0.0 MB) Security Audit Log
Key: 83 Size: 77070336 ( 73.5 MB) ABAP Coverage Analyzer
Key: 85 Size: 53240 ( 0.0 MB) ACM Trace and others

Shared memory resource requirements estimated


Total Nr of shared segments required.....: 34
Nr of shared segments successful tested..: 100
Shared memory segment size required min..: 1800000000 (1716.6 MB)
Currently available maximum segment size.: 34359738368 (32768.0 MB)
R/3-imposed maximum segment size.........: 21474836480 (20480.0 MB)

This is a summary of memory required from OS level. The summary splits the results into memory areas like shared memory,
OS heap memory (processes) and the Extended Memory. It also creates a "worst case requirement" overview.

Memory Space Requirements Estimated *


================================================
Shared memory....................: 3923 MB
Extended Memory .................: 5600 MB
SAP Heap Memory .................: 8000 MB
Gateway process .................: 95 MB
ICM process .....................: 195 MB
All Processes ...................: 1660 MB ( 13 WPs)
------------------------------------------------
Total, minimum requirement........: 11183 MB
Process local heaps, worst case...: 9660 MB
Total, worst case requirement.....: 19183 MB

* These are only estimated values,


final sizes may change

** Shared Pools are automatically


calculated by Kernel

This is custom documentation. For more information, please visit the SAP Help Portal 306
1/31/2024

The last information is about the number of Errors and Warnings detected.

================================================
Errors detected..................: 1
Warnings detected................: 54
================================================

Related Content

Related Documents

Related SAP Notes/KBAs

2693275 - sappfpar "check" option xes

2777079 - sappfpar "check" option memory analysis information

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAP Message Server

Management

icmbnd on Message Server

Troubleshooting

Kernel incompatible to already connected instances

START_CALL_SICK - can't establish connection to message server

Top relevant SAP notes

This is custom documentation. For more information, please visit the SAP Help Portal 307
1/31/2024

64015 - Description of test program lgtst

1250737 - SMMS: Trace le dev_ms could not be opened

636938 - Description of msprot test program

916398 - HTTP access control for message server

649008 - HTTP load balancing using the SAP message server

Useful Tools

msmon Monitoring Program

F.A.Q.

How to control the HTTP(s) Message Server access

How to limit the size of a developer trace le

What is the HTTP(s) Message Server Port

Is it possible to bind Message server ports to speci c interfaces?

Message Server - Frequently asked questions (FAQ)

How to control the HTTP(s) Message Server access?

It is possible to create access control creating an access list using the parameter ms/permission_table.
WIth this list you can de ne who can access the informations provided by Message Server and also who cannot access.

Further details over note 916398.

916398 - HTTP access control for message server

How to limit the size of a developer trace le

It is possible to limit the size of trace les using the parameter rdisp/TRACE_LOGGING. Details about how to setup this
parameter in SAP note 112.

112 - Trace and error information in the "dev_" les

With SAP kernel 72X the traces are rotated by speci c triggers that occurs in speci c time intervals, however, these time
intervals may vary depends of the component or even the action a work process is doing. In some speci c situations the trace
can increase further than the size set in the parameter.

With 74X kernel the rotation are much more precise avoiding the traces to grow much more than the speci ed.

This is custom documentation. For more information, please visit the SAP Help Portal 308
1/31/2024
See also:

1370207 - Creating work process trace les


2020096 - How to increase sapstartsrv trace level and limit the trace le size

What is the HTTP(s) Message Server Port?


The HTTP(s) Message Server port is con gured by the parameter ms/server_port_X.

Another way to identify the HTTP(s) port is checking the dev_ms trace le:

[Thr 123456789] set HTTP state to LISTEN


[Thr 123456789] *** HTTP port 8101 state LISTEN ***

Is it possible to bind Message server ports to speci c interfaces?


It is possible to choose speci c interfaces to bind message server's HTTP(s) ports only, de ned via parameter
ms/server_port_X.

MS server ports 36xx and 39xx are automatically bound to all interfaces (e.g. 0.0.0.0:36xx)

Is it possible to reload the the message server ACL le in runtime from the OS level
(e.g. using MSMON program)?
It is not possible.

Such feature does not exist for security reasons. The only way to reload the message server ACL contents at runtime is via
transaction SMMS (message server monitor).

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

icmbnd on Message Server

Purpose
You want to use icmbnd program on Message Server.

Overview
Parameter 'ms/server_port_<xx>' can be used in the Message Server port/service speci cation for a protocol. It can open
multiple ports, while the number <xx> must always be different.
This parameter must be set in the pro le of the instance where the message server is located.

Description

This parameter has the following syntax:


ms/server_port_<xx> = PROT=<protocol name>, PORT=<port or service name> [, EXTBIND=1, HOST=<host name>,
VHOSTIDX=n, TIMEOUT=n, PROCTIMEOUT=n]

The Message Server reads until it nds no more pro le parameters 'ms/server_port_<xx>' to
the next number. The maximum number of ports is limited by the 'http_max_ports' parameter.

Only PROT=HTTP or PROT =HTTPs are allowed for the protocol eld.

This is custom documentation. For more information, please visit the SAP Help Portal 309
1/31/2024
Optional parameters:

EXTBIND = 1, so that port is bound using the program icmbnd. This allows in UNIX to also bind
ports <1024, for which the message server normally does not have permission.

HOST =<host name>, the port is only bound to this IP address.

VHOSTIDX = n, number of virtual hosts for this port.

TIMEOUT = n, maximum idle time for an HTTP requests, unless the value of the parameter
'ms/http_timeou't is speci ed. 'ms/http_timeout' sets the timeout for HTTP and HTTPS
requests.

PROCTIMEOUT = n, maximum processing time for an HTTP request, unless the value of the
parameter' ms/http_proctime' is speci ed.

This parameter replaces the 'ms/http_port' and 'ms/https_port' parameters that were used previously.

While the Message Server is running, ports can be con gured in the message server monitor.
This pro le parameter 'ms/server_port_<xx>' can be dynamically maintained in transaction "SMMS", Menu path Goto >
Parameters > Change.
A port/service can also be de ned or removed without restarting the Message server with transaction “SMMS”, Menu path
Goto > Services.

Related Content

Related SAP Notes/KBAs


421359 - ICM: Binding ports < 1024 on UNIX

540379 - Ports and services used by SAP

649008 - HTTP load balancing using the SAP message server

1513530 - Icmbnd issues with message server

SAP Miscellaneous Information

The root page SUPSI:@self could not be found in space Product Support BTP - Core Platform Services.

This is custom documentation. For more information, please visit the SAP Help Portal 310
1/31/2024

Archive Development Kit BC-CCM-ADK

Purpose
Welcome to the Archive Development Kit WIKI page (components BC-CCM-ADK and BC-CCM-ADK-AS) . The purpose of this
page is to provide informations regarding the behaviour and common issues related to data archiving (transaction SARA) and
archive information system (transaction SARI).

Please note, that this wiki page is not related to ArchiveLink service. Regarding ArchiveLink visit the following wiki page .

Overview
You can use the data archiving functions to archive any completed business transactions that are no longer relevant for your
daily operations. You store the archived data in archive les to which the system has read-only access. Archiving Objects de ne
which data is to be bundled into completed business objects in data archiving and which archiving programs are to be executed.
From a technical point of view, data archiving from ABAP application system is based on the archiving objects of the Archive
Development Kit (ADK).

Related KBAs Important SAP Notes Related blogs

MESSAGE_TYPE_X dump with


1667078 35992 error message BA008 occurs
while data archiving
- Store step of data archiving fails - Application archiving le Related Documents

with error BA111 and BA194 or with names/directory For general info check online
dump help.
MESSAGE_TYPE_UNKNOWN
For standard training in relation
to data archiving check available
courses like:
53068

- Copy archived data into BIT660 - Data


1736010 Archiving
other systems
- Program PPARCHA1 cancels with BIT665 - Information
Lifecycle
"P_ORDER does not contain
Managment (SAP
structure J_3ABSSI / NetWeaver ILM)
J_3ABUNDL"
460620 BIT670 - Data
Archiving & ILM -
- Migrating archive les Programming

Data Volume Management

1738672 SAP Data Volume Management


(DVM) can help customers
control the growth rate and

This is custom documentation. For more information, please visit the SAP Help Portal 311
1/31/2024

- MESSAGE_TYPE_X dump - 577847 existing sizes of their systems.


For more information, check
Message number "Q6 220"
- Optimizing data archiving following KBA:

2243625

- Data Volume Management -


SAP Enterprise Support
1774768
597646
- "Archive File Not Accessible" is
- Deleting retrieved archive
seen for Archive Files in the Also you can participate on the
les (Report
DVM
Archive Administration
RSARCH_LIST_RETRIEVED)
Jam page

Here you can nd


1780241
671421
DVM introduction video
- How to create an Information
- FAQ: Archive Information
Structure in the Archive
System
Information System

697317
1791466
- Changing database index f.
- How to avoid running out of
info structure w/o
available le names when
reconstruction
archiving

781802
1791628
- Resetting number ranges
- Write job for MM_EINA archive
after archiving data
object cancels with error BA 048

921206
1796922
- Statistics: Tables with elds
- How to mark archive sessions for
of type LRAW and LCHR
deletion by the BC_ARCHIVE
object

This is custom documentation. For more information, please visit the SAP Help Portal 312
1/31/2024

1495178

1875430 - Filling and emptying


archive infostructures acc.
- How to determine if the variant
to date
for the archive delete program is
set correctly

1871681

1891105 - Data archiving: Data


objects larger than 2 GB
- Error "BA 164" "Free space in %
cannot be determined at present"

1918417

1899424 - Checking and verifying


archive les
- Error "BA 354- Error determining
the selection parameters- object-
BUS2000110" in check job

2003678

- ADK: Database-based
1900309 statistics

- HowTo- Archiving ArchiveLink


connection entries from tables
Related Wikis
TOA01, etc. for Business
documents and TOADL for Print How to nd suitable application area for a
data archiving issue
lists and Logging tables
Assignment of Archiving Objects to
Application Components

Informations about AIS (Archive


Information System)

Related Transactions
1907539 SARA: Archive Administration

- Archive write program causes SARI: Archive Information System -


SAPSQL_ARRAY_INSERT_DUPRECMaintaining eld catalogs, information
dump in relation with table structures; accessing the Archive Explorer

ADMI_VARIA AS_AFB: Archive File Browser - Where


content of archive les can be checked
This is custom documentation. For more information, please visit the SAP Help Portal 313
1/31/2024
DB15: Data Archiving: Database Tables - To
nd tables for an archiving object or vica
versa

1919283

- Reload option for an archiving


object

1934522

- BA354 "Error determining the


selection parameters..." message
occurs while executing check
program ARCDEL_VERIFY_PARA
in SARA

1936505

- Error BA308 "Jobs of type XXX


cannot be released" occurs while
executing an archiving step in
transaction SARA

1936642

- Archive write step results error


message BA302 "Archiving
session &1 was interrupted when
total le size &2 was reached"

1954602

- Error Q6071 "Table ... does not


match infostructure..." occurs

This is custom documentation. For more information, please visit the SAP Help Portal 314
1/31/2024

while archiving data via


transaction SARA

1983684

- How to resolve error BA 161-


Operating system message- No
such le or directory

1987072

- How to De ne a Server Group for


Archiving

1990075

- How to automate the archive


delete program to execute after
the end of the archive write
program

2024409

- Error BA123 (Structure is not


known in the ABAP Dictionary)
occurs while executing write
program of archiving object
BC_ARCHIVE

2093604

This is custom documentation. For more information, please visit the SAP Help Portal 315
1/31/2024

- Dead lock happen when parallel


archive job running

2170671

- Error DB607 occurs in joblog


while archiving data with archiving
object CV_DVS via transaction
CG50

2179637

- Performance problem when


accessing infostructure tables

2222074

- Collective informations regarding


Archive Development Kit (ADK)
and Archive Information System
(AIS)

2439376

- How to interrupt/pause archive


write jobs with possibility to
continue them later

Error Free space in XXX cannot be determined at present occurs

See the following KBA:


- Error BA164 "Free space in % cannot be determined at present" occurs while using "Archive Directory" in SARA

This is custom documentation. For more information, please visit the SAP Help Portal 316
1/31/2024

How to nd out the relevant area in case of a Data Archiving issue

Purpose

Providing information how to nd the most suitable area while having a Data Archiving issue.

Overview
While data archiving via transaction SARA/SARI problem/error occurs. It is important to nd the most suitable
area/component for the issue to be able to narrow down search criteria or to chose component in case customer incident
needs to be opened. The following wiki page shows a list of archiving objects and corresponding application areas/components.
Generally this list helps in most cases to identify the suitable component.

However it is not always easy to nd out the correct area/component for the occured problem, and sometimes it is only
possible after a deep analysis. Checking some data/attributes in system can help to better narrow down the involved area.

For Guided Answer version of this content, check following link.

Archiving data via transaction SARA


1. Introduction

As a starting point it needs to be mentioned, that archiving object de nition with all it's settings and con guration can be
found in transaction AOBJ.
After clicking on the appropriate archiving object (for example on BC_DBLOGS), the inital screen comes up which also
shows all the the archiving object speci c programs.

If in transaction SARA a write step/job is executed for archiving object BC_DBLOGS, the write report maintained in
transaction AOBJ will be executed, for BC_DBLOGS this write report is BC_DBLOGS_WRI. (This process is the same for
the other archive steps: delete, reload, preprocessing, postprocessing and also for read)

2. It needs to be identi ed, in which archiving step the error occured

There can be several steps during data archiving. In each step different program is executed:

1. Archiving object dependent programs, such as write, delete, reload, preprocessing, postprocessing and read
program (which can be checked in transaction AOBJ under "Read Programs" of an archiving object)

2. Archiving object independent programs: store, retrieve

3. After identifying the step, the relevant area/component can be checked

1. Archiving object dependent programs:


Archiving object and archiving object dependent programs are delivered by the relevant application. The relation
between archiving object and application area can be found here.

This is custom documentation. For more information, please visit the SAP Help Portal 317
1/31/2024

Checking our example, according to this note the application area for archiving object BC_DBLOGS is BC-CUS-
TOL-ALO. This means all archiving object related programs are delivered also by the appropriate application area
(e.g. write program BC_DBLOGS_WRI belongs to BC-CUS-TOL-ALO also).

If archiving object is not listed here, check point 5.

So if any error/problem occurs while executing archiving object dependent programs (write, delete, reload,
preprocessing, postprocessing, index build, index delete), generally the relevant application is responsible. The
found application area can also be used for searching solutions (Notes, KBAs, etc.).

2. Archiving object independent programs:


These programs (store, retrieve) are general programs used by all archiving object, and they belong to
application area BC-CCM-ADK.

4. Exceptions for point 3

Exceptions can exist for identifying relevant application area. If any archiving object dependent program is executed
(mainly in background as a job) and error message with message class BA* or Q6* occurs, it could be related to a data
archiving modul:

Message class BA* : application area BC-CCM-ADK

Message class Q6* : application area BC-CCM-ADK-AS

(Message classes can be checked in transaction SE93. Here choosing "Attributes" under
"Subobjects" and double clicking on "Package" the relevant application area can be found)

5. Identifying application area if archiving object is not listed in wiki page or if program name is known

If archiving object is not listed in above page, relevant application area can be checked for example via the application
area of the executed program:

1. Call transaction SE38

2. Enter the appropriate program (as an example BC_DBLOGS_WRI)

3. Choose "Attributes" under "Subobjects"

4. Double click on "Package" (in our example STAB)

5. Check value of "Application Component" (in our example BC-CUS-TOL-ALO)

This is custom documentation. For more information, please visit the SAP Help Portal 318
1/31/2024

6. Question regarding how to archive entries from a speci c table

Regarding how to archive entries from a speci c table, always the corrresponding application is responsible:

This is custom documentation. For more information, please visit the SAP Help Portal 319
1/31/2024
1. In transaction SE11 enter the name of the database table and click on button "Display"

2. Go to tab "Attributes" and double click on package

3. Field "Application Component" contains the relevant component

It is also possible to nd out whether archiving objects exist for a speci c table, which are also considering the entries of
this table:

1. In transaction DB15 choose checkbox "Archiving Objects"

2. In eld "Objects for Table" enter the speci c table

3. As a result all archiving objects will be displayed which are considering this table in any way during archiving with
the archiving object

7. Database table size/space not decreased (reduced) after successfull data archiving

If data archiving was succesfull - e.g. the neccessary archived business data were correctly deleted from corresponding
database tables - and size/space of these involved tables are still not decreased/reduced, it indicates to check the
situation from database point of view. Certain databases need additional steps (reorganization, etc.) to adjust the
size/space after huge amount of data was deleted.
The used database of the SAP System can be checked as follows:

Menu: System > Status > Database System

The databases have their own components within SAP: BC-DB* (for Oracle, ); HAN-DB*
(for Hana database)

8. Question regarding how to dispaly archived data in application transaction/program (so outside of SARA/SARI)

Whether archived data can be displayed in an application transaction/report and how this can be achieved and what are
the prerequisites, is to be checked at application side and not at ADK level. To nd out the application, check component
of

1. the transaction (via tr. SE93 >> Package >> Application Component)

2. the report (via Tr. SE38 >> Attributes >> Package >> Application Component)

3. the archiving object here

Archive Information System (Infostructure/ eld catalog) issues


1. Infostructure or eld catalog is inconsistent

The main transactions of Archive Information System are SARI (Central Management) and SARJ (Archive Retrievel
Con gurator).

Standard elds catalogs and infostructures are delivered by the application. If there is any inconsistency in relation to
standard (and unchanged) eld catalogs or infostructures, the relevant archiving object can be determined as follows:

Infostructure
1. Call transaction SARJ

2. Enter infostructure in eld "Archive Infostructure"

3. Button "Display (F7)"

4. Check eld "Archiving Object"

Field Catalog

1. Call transaction SARJ

2. Choose menu "Environment >> Field Catalogs"

This is custom documentation. For more information, please visit the SAP Help Portal 320
1/31/2024
3. Search for eld catalog and choose column "Archiving Object"

After archiving object is determined, check the list for relevant application area.

2. Filling or Deleting (Emptying) Infostructures based on standard delivered eld catalog

Filling (program RSAINDBU) or deleting infostructure (program RSAINDDL) mainly belongs to application area BC-CCM-
ADK-AS.

3. Standard Infostructure/Field Catalog does not exist for an Archiving object

Based on the archiving object check list for relevant application area.

4. Displaying archived data via transaction SARI using Archive Explorer

If lled infostructure exist for an archiving object, the data can be displayed via transaction SARI with option "Archive
Explorer". By double clicking on an archive business document a popup might comes up where the desired display
function can be selected, like:

1. Technical View

2. Display Originals

3. DRB: ....

4. etc.

If "Technical View" does not work as expected, the area/component is BC-CCM-ADK-AS.

In all other cases the application is responsible to display the data. To nd out the relevant area/component follow the
steps:

1. Call transaction SE16 and choose table AIND_STR5

2. Enter the appropriate archiving object and click on "Execute"

3. The available display functions with corresponding function modules will be listed. From this list choose the
function module which is linked to the problematic display function
(for "Technical View" no function module will be displayed which is the standard setting)

4. Go to transaction SE37, enter the function module name and display it

5. In tab "Attributes" double click on the package and check the eld "Application Component"

Related Content

Related Documents
Archive Development Kit online help for SAP Netweaver 7.3

Archive Developmen Kit (ADK) wiki page

Related SAP Notes/KBAs

__________________________________________________________________________________________________________

This is custom documentation. For more information, please visit the SAP Help Portal 321
1/31/2024

Assignment of Archiving Objects to Application Components


This document contains all available archiving objects delivered by SAP as of April 2016 and their corresponding application
component. This list will be updated when required.
It replaces note 102446: Archiving objects - Application areas of customer messages that will not be maintained any longer.
Instead the note will point to this Wiki page on his part.

Please note that not all archiving objects are listed by their names. If possible objects with the same pre x belonging to the
same application component are summarized to the pre x with a closing wildcard (e.g. FIBA_*)

Exceptions from this summarization are listed beneath the summary entry, e.g.

/IDEXGE/* IS-U-LIB-DE-EL

/IDEXGE/RD IS-U-IDX

Attention: HR archiving objects (i.e. all archiving objects that belong to Personal Administration (PA), Personnel Time
Management (PT) or Payroll (PY) are listed in a separate table:
Assignment of HR Archiving Objects to Application Components

/2ABCD EFGHIJKLM NOPQRSTU VW

Text Topic
Object

/AARE/* Accounting Rules Engine XX-PROJ-CDP-280

/AIF/PERSX Archiving object for the AIF XML persistency CA-GTF-AIF

/AIN/ARCH Archiving Object for SAP Auto-ID Infrastructure AIE-AII

/BA1/P1_RD Bank Analyzer: Processing Framework Runs (PA) FS-BA-AN-PA

/BA1/P4_DT Bank Analyzer: Rule Entries of Derivation Tool FS-BA-TO-DE

/BA1/P6_BD BA: Basic Data for Customer Migration Analysis FS-BA-AN-PA

/BA1/P6_RD Bank Alyzer: Result Data From Cust. Migr. Analysis FS-BA-AN-PA

/BEV4/* Pendulum List SD-BIL-RB-PL

/BOFU/* Example of Archiving BOPF BO CA-EPT-BRC

/BSNAGT/AO BSNAGT object for Archiving les LOD-FSN-AGT

/CCEE/LOHR Archiving Object for E-Invoice Croatia Fisc FI-LOC-LO-HR

/CDPRLDB/F Read Logging : GUI / RFC / Web Services XX-PROJ-CDP-020

/CPD/MC_* Milestone Checklist /CPD/MC_BO

/CPD/PFP_P Plan Header CA-CPD-FP

/CPD/PWS_M Master Projects CA-CPD-WS

This is custom documentation. For more information, please visit the SAP Help Portal 322
1/31/2024
/CPD/RM_* Risk Management CA-CPD

/CUM/* Compatible Units Management PM-WOC-MO-CUM

/CYT/* Capital Yield Tax Management FS-CYT

/DBM/* Dealer Business Management IS-A-DBM

/DSD/DEX DSD: Archiving object for DEX streams LE-DSD

/DSD/SL DSD: Archiving Object for Settlement Documents LE-DSD-RA-SL

/DSD/VC DSD: Archiving Object for Visit List LE-DSD-VC

/FAAM/* Asset Lifecycle Accounting FI-AF-ALA

/FATCA/01 Archiving for Tax Compliance Classi cation Logs FS-FBS-TXC

/FMP/* Catch Weight Management IS-CWM

/FOM/ARO Archiving object for ARO FI-AF-ARO

/FSCBM/* Checkbook Management FS-AM-CBM

/FSPD/* Payment Distribution FS-AM-PD

/GSINS/* Financial Services Localization FS-CM-LC

/IAM/* Generic IAM Engine CA-IAM-ENG

/IBS/CY_IT OBSOLETE FS-CYT

/IDEXGE/* Germany - Electricity IS-U-LIB-DE-EL

/IDEXGE/RD IDEX-GE: REQDOC IS-U-IDX

/ISDFPS/CD Change Documents: Distributed System Landscape IS-DFS-BIT-DIS

/LOGWIN/ET Archiving for External Log XX-PROJ-CDP-ACS-007

/MRSS/* Multi-Resource Scheduling CA-MRS

/OSA/STATU Archiving OSA Status Log MOB-APP-OSA

/PE1/* Payment Engine FS-PE-ARC

/PICM/* Commercial Project Management CA-CPD-PCM

/PL9/* Process Object Type: POL CA-FS-POL

/PLMB/RCP Recipe Data in Recipe Development PLM-WUI-RCP

/PLMB/SID Archiving of PLM Authorization Runtime Tables PLM-WUI-APP-ACC

/PM0/* Policy Management FS-PM

/PMG/PPP FS-PM Premium Per Piece FS-PM

/POSDW/* POS CA-RT-CAR-PIP

/PRA/* Production and Revenue Accounting IS-OIL-PRA

/PREPAY/DC Archive Prepayment Documents IS-U-IDX

/SAPBOQ/01 Composite for service master record IS-ADEC-BOQ-SRV

/SAPCE/ADP Budget billing and Invoicing for Poland XX-CSC-PL-IS-U

/SAPCE/APM Archiving Object for IS-U Advance payment CZ/SK XX-CSC-CZ-IS-U

This is custom documentation. For more information, please visit the SAP Help Portal 323
1/31/2024
/SAPCE/SB* Archiving ob Subsidy Data XX-CSC-XX

/SAPCE/TXV Archiving of Tax Invoice XX-CSC-UA-IS-U

/SAPPCE/DP Down Payment Chain FI-AF-DPC

/SAPPO/PPO Postprocessing Orders CA-GTF-TS-PPO

/SCMTMS/RA Rate Tables - Partial Archiving TM-MD-CM

/SCMTMS/SC Scale Items - Partial Archiving TM-MD-CM-CS

/SOIN/* Flexible Solution Billing SD-BIL-IV-CB

/SRMERP/SC Example of Archiving Shopping cart MM-PUR-SSP

/STTP/* SAP Advanced Track and Trace for Pharmaceuticals IS-PHA-ATT

/TMRU/CTR Business Documents for CargoTransportationRequest TM-LOC-RU

/TXINTF/TD SETI: Tax Documents XX-PROJ-CDP-090

/TXS/* Funding Management FS-TXS

/UIM/MSK Archiving Object for UI Masking XX-PROJ-CDP-266

/UTPFM/DA EPM Deal IS-U-EPM

/XNFE/* Communication Management & Monitoring SLL-NFE-MGM

^ TOP

Text Topic
Object

2001 Process Object Type: LoanQuoteVariant FS-XA-AO-LQV

2005 Process Object Type: NewLoanBoarding FS-XA-AO-NLB

2018 Process Object Type: DepositAccountClosure FS-XA-DPS-POT

^ TOP

Text Topic
Object

AC_TR_LOG Transaction Log Archiving GRC-AC

ADFSH_* Flight Scheduling IS-AD

ADS2KIP_AR Spec 2000: IP Data Archiving IS-AD-SPC-PR

AM_ACCOUNT OBSOLETE: Account FS-AM-ARC

AM_ASSET Asset - Master Data, Values and Transactions FI-AA-AA

AM_CARD Obsolete: Card FS-AM-ARC

AM_STEUER Asset - Control Tables FI-AA-AA

This is custom documentation. For more information, please visit the SAP Help Portal 324
1/31/2024
ANALYSIS_A Object for Analysis GRC-RM

APPREQUEST IM: Appropriation request IM-FA-IA

AP_IBASE iBase: Archiving for Application Platform AP-MD-IBA

ARCH0817 Archiving Object for BUS0817 BC-SRV-ARL

ARCHIVELNK ArchiveLink Link Entries BC-SRV-ARL

ARCHIVELOG Archiving Object for Application Log ArchiveLink BC-SRV-ARL

ARCHIVELOP Archiving Object for Log Entry Print Lists BC-SRV-ARL

ARCHIVEPRI Archiving Object Print Lists BC-SRV-ARL

AS_TEST Test for the Archive Information System BC-CCM-ADK-AS

^ TOP

Text Topic
Object

BA1HM_HR Hedging Relationship in Hedge Management FS-BA-PM-HP

BA1_B0_* Bank Analyzer FS-BA

BA1_B1_* Bank Analyzer FS-BA

BA1_B6_BO Bank Analyzer: Balance Objects Manager FS-BA-AN-FSP-BO

BA1_B7_AT Bank Analyzer: Aggregration Transaction FS-BA-AN-FSP-AT

BA1_B8_GL Bank Analyzer: GL Connector FS-BA-AN-GL

BA1_F1_* Bank Analyzer: Primary Objects FS-BA-SD-PO-MSD

BA1_F2_* Bank Analyzer: Primary Objects FS-BA-SD-PO

BA1_F4_* Market Data CA-FS-MKD

BA1_F5_016 Bank Analyzer: Archiving of Generated Market Data FS-BA-SD-PO

BA1_FK_* Correction Services FS-BA-IF-CS

BA1_PFW_* Extraction & Reporting Services FS-BA-IF-ERS

BA1_R0_FVS Bank Analyzer: Detail Log for Fair Value Server FS-BA-PM-GM-PVC

BA1_R4_* Bank Analyzer: Result Database FS-BA-TO-RDB

BBP_* SRM Archiving SRM-EBP-ARV

BC_ARCHIVE Archiving of Archive Administration Data BC-CCM-ADK

BC_BCSET BC Set Archiving BC-CUS-TOL-BCD

BC_DBLOGS Archiving Changes to Customizing Tables BC-CUS-TOL-ALO

BC_E071K Archive E071K Keys BC-CTS-ORG

BC_HROBJ HR Object BC-BMT-OM

BC_LOIO Demo Archiving Object Logical Documents BC-SRV-KPR-DMS

This is custom documentation. For more information, please visit the SAP Help Portal 325
1/31/2024
BC_SAL Security Audit Log - Log Data BC-SEC-SAL

BC_SBAL Archiving Object for Application Log BC-SRV-BAL

BC_SBOOK Example Archiving Object (ADK Archiving) BC-CCM-ADK

BC_SBOOK_T SAP internal test (XML Archiving) BC-CCM-ADK

BC_SBOOK_X Example Archiving Object (XML Archiving) BC-CCM-ADK

BC_SFLIGHT Demonstration Archiving Object Flight Booking BC-CCM-ADK

BC_STRUKT Test Object for Structure Archiving BC-CUS-TOL-HMT

BEA_* Royalty Accounting CRM-IM-IPM-RO

BKKPRENOTE Prenote IS-B-BCA

BNKCOM_ARC Bank communication archiving object FIN-FSCM-BNK

BP_TAXEXEM Archiving Object for BP Tax Exemption Process CRM-BF-TAX

BUDSUM Budget Totals Records in Funds Management PSM-FM

BWREQARCH Archiving of Request Administration Data BW-WHM-DST

^ TOP

Text Topic
Object

CACS* Comission Management ICM-TO

CATPROARCH CATT - Log/Procedure BC-TWB-TST-CAT

CATS_DATA Time Sheet Data CA-TS

CA_BUPA Archiving Business Partners AP-MD-BP

CA_DARTX XML-Based Data Retention Tool CA-GTF-DRT

CA_PACA Archiving Payment Cards AP-MD-BP

CA_PCA_SEC Encrypted Payment Card Data AP-MD-PCA

CA_SE16NCD Archiving Change Documents SE16N CO-OM

CA_SEPA Single Euro Payments Area (Mandate) CA-BK

CA_WFA_* Workforce Management Application CA-GTF-WFA

CCM* Customer-Interaction-Center CS-CI-CIC

CDOCS_CONT PLM CDOCS: Content PLM-DOC

CDTEST Test; Writing of Change Document Objects BC-SRV-ASF-CHD

CEM_RPH Rolling Purchase History CRM-EM

CFB_WL Food and Beverage Function: Weight Logs PP-PI-CFB

CHANGEDOCU Change Documents BC-SRV-ASF-CHD

CIAP CIAP Archiving Object LO-INT-TMF

This is custom documentation. For more information, please visit the SAP Help Portal 326
1/31/2024
CML* Consumer and Mortgage Loans FS-CML

CMS_* Point of Sale CRM-CHM-POS

CMS_CEMI Entitlements Inbound CRM-EM

CMS_CEMO Entitlements outbound duelist CRM-EM

CMS_CI Channel Inventory CRM-CHM-CIM

CMS_RTCM Resale Tracking and Claim Management CRM-CHM-POS

CMX_* XSteps PP-PI-PMA

CM_QMEL Claims PS-CLM

COINT_TPOS Amount Allocation CO-OM

CONS_* Consolidation EC-CS-CSF-M

COPA* CO-PA CO-PA

CORRSPND Correspondence CA-GTF-COR

COUNTER Obsolete: FS-AM: Counter FS-AM-ARC

CO_* Overhead Cost Controlling CO-OM

CO_COPC Archiving Product Costing Data CO-PC-PCP

CO_FIXEDPR Fixed Price Agreements and Settlements PS-REV-TRF

CO_ML_* Actual Costing/Material Ledger CO-PC-ACT

CO_PR_EB Valuation alternatives CO-PC-ACT

CPROJECTS Collaboration Projects Archiving PPM-PRO

CRM_4SAPPL Social Application CRM CRM-BF-AR

CRM_4SSDP Social Deduction Plan CRM CRM-BF-AR

CRM_4SSRVP Social Service Plan CRM CRM-BF-AR

CRM_ACT_ON CRM Activity CRM-BF-AR

CRM_BILREQ CRM Billing Request CRM-BF-AR

CRM_CLACCR CRM Chargeback Recovery CRM-BF-AR

CRM_CLACPP CRM Claim Prepayment Request CRM-BF-AR

CRM_CLACSD CRM Claim Submission Document CRM-BF-AR

CRM_CLACSR CRM Claim CRM-BF-AR

CRM_CLM Call List Management Data CRM-CIC-CAM

CRM_COMP CRM Complaint CRM-BF-AR

CRM_COMPTX Composite Transaction CRM-BF-AR

CRM_DSMAGR CRM ISU DSM Agreement CRM-BF-AR

CRM_DSMAPL CRM ISU DSM Application CRM-BF-AR

CRM_DSM_PR Demand Side Management Program Archiving CRM-IU-DSM-PRG

CRM_EDR archiving object for edr CRM-IT-BI

This is custom documentation. For more information, please visit the SAP Help Portal 327
1/31/2024
CRM_FM_BPO Budget Postings CRM-BF-AR

CRM_FM_DFP Dynamic Funding Plan CRM-FM-DF

CRM_FM_FND Funds Management - Funds CRM-BF-AR

CRM_FM_FNP Funds Plan CRM-BF-AR

CRM_FM_FPO Fund Postings CRM-FM-FPO

CRM_FM_FU Fund Usages CRM-FM-FU

CRM_FM_LRP Live Rates Plan and Planning Element CRM-FM-LR

CRM_FS_PFS Personal Financial Statement of a Business Partner CRM-IFS-FST

CRM_GAC Archiving for Grantor Claim CRM-BF-AR

CRM_GAG Service Contract CRM-BF-AR

CRM_GAP CRM Service Process CRM-BF-AR

CRM_GC Web Channel Gift Card CRM-BF-GC

CRM_GPM Grantor Program Archive Object CRM-IPS-MD-PRG

CRM_IBASE Ibase/Installations CRM-MD-INB

CRM_INCDNT IT Service Management Incident CRM CRM-BF-AR

CRM_IND_RT Relationship Table for Indirects CRM-MKT-MPL-TPM-IND

CRM_INTADJ Leasing: Evaluate Floating Rate Adjustments CRM-BTX-BF-FIN

CRM_IPM* Intellectual Property Management CRM-BF-AR

CRM_ISUPRO IS-U Archiving: CRM Pro les CRM-IU-S

CRM_ISU_CC Utilities check cockpit CRM-IU-XC

CRM_KA CRM Knowledge Article archive object CRM-BF-AR

CRM_LEAD Lead CRM CRM-BF-AR

CRM_LEAS* CRM FS Leasing CRM-BF-AR

CRM_MAC* CRM Multiple-Asset Contract CRM-BF-AR

CRM_MDFRES CRM MDF Reservation CRM-BF-AR

CRM_MKTPL 4Marketing Project CRM-MKT-MPL

CRM_MKTSC Marketing Scenario Planning CRM-MKT-MPL-SP

CRM_MKTSET Segmentation Model CRM-MKT-SEG-TGR

CRM_MKTTG Target Groups CRM-MKT-SEG-TGR

CRM_MKTVOU Marketing vouchers CRM-MKT-MPL-ST-VOC

CRM_MPOINT Measuring Points and Readings CRM-BF-COU

CRM_OAGRMT CRM Outline Agreement CRM-BF-AR

CRM_OPPT CRM Opportunity CRM-BF-AR

CRM_PPR Partner Product Ranges CRM-MD-PPR

CRM_PROBLM IT Service Management Problem CRM CRM-BF-AR

This is custom documentation. For more information, please visit the SAP Help Portal 328
1/31/2024

CRM_PRV* Provider Transactions CRM-BF-AR

CRM_PSDBA Decision Basis CRM Public Services CRM-BF-AR

CRM_PSDMEA CRM Enforcement Action (Debt Management) CRM-BF-AR

CRM_RAGR CRM Rebate Agreement CRM-BF-AR

CRM_SACONT CRM Sales Contract CRM-BF-AR

CRM_SALDOC CRM Sales Transaction CRM-BF-AR

CRM_SDB* Solution Database CRM-MD-SDB

CRM_SERORD CRM Service Process CRM-BF-AR

CRM_SRCONT Service Contract CRM-BF-AR

CRM_SRVCON CRM Service Con rmation CRM-BF-AR

CRM_SRVPLN Service Plan CRM-BF-AR

CRM_SUR Product Service Letter CRM CRM-BF-AR

CRM_TAXEXM CRM Tax Exemption Certi cate CRM-BF-TAX

CRM_TERR Territory Archiving Object CRM-MD-TM

CRM_TSSEVT Service Time Stamp CRM-ANA-SRV-BW

CRM_UBBPOL UBB Pool Contracts CRM-BF-AR

CRM_VALSH CRM Validation Sheet CRM-CLA-VWS

CRM_WTYCLM Warranty Claim CRM-BF-AR

CS_BOM PP Object Lists LO-MD-BOM

CUHD Customs Document SLL-LEG-ARC

CUPED Supplementary Customs Declaration SLL-LEG-ARC

CUS* Global Trade Services: Archiving SLL-LEG-ARC

CV_DVS Document Management CA-DMS

^ TOP

Text Topic
Object

DAC_APPL Digital Access Logging Data CA-GTF-DA

DATAFDLOG TR-TM: Record all accesses to the datafeed TR-TM-TM

DCS_MD DCS based Market Data CA-GTF-TRB

DISPORDER OBSOLETE : FS-PCO: Posting Control Order FS-AM-ARC

DIWPS_REV Revision Archiving Object (IS-DIMP) IS-ADEC-MEB

DI_ACL Logbook Archiving Object (IS-DIMP) IS-ADEC-LBK

DLV_* Delivery Processing SCM-EWM-DLP

This is custom documentation. For more information, please visit the SAP Help Portal 329
1/31/2024
DOCB Archiving for Document Builder CA-GTF-DOB

DRF_REPSTA DRF Replication Status CA-MDG-DRF

DRM_* IS-HT: Distributor-Reseller-Management IS-HT-DRM

DS_ARCH Archiving Object for Digital Signature Tool CA-DSG

^ TOP

Text Topic
Object

EAML_* Equipment and Technical Objects PM-EQM

ECATT_LOG eCATT Logs BC-TWB-TST-ECA

EC_PCA_* Pro t Center Accounting EC-PCA

EDOCUMENT eDocument CA-GTF-CSC-EDO

EHHSS_* Risk Assessment EHS-MGM-RAS

EHHSS_INC Incidents EHS-MGM-INC-REC

EHPRC_IMDS IMDS Documents EHS-MGM-PRC

ELR_LTXTS Archive Long Text Log LO-ELR

EMMA_* Enhanced Message Analysis CA-EMA

EPIC_BACOM Bank Communication Information for Electronic Paym XX-CSC-CN

EPM_GI EPM Goods Issues BC-ILM-IRM

EPM_SO EPM Sales Order BC-ILM-IRM

EPM_SO_INV EPM Sales Order Invoices BC-ILM-IRM

EWM_* Extended Warehouse Management SCM-EWM-ARC

EXAMPLE Sample Object BC-CCM-ADK

^ TOP

Text Topic
Object

FAGL_REORG Archiving of Reorganization Plans FI-GL-REO

FARR_* Revenue Accounting FI-RA

FDM_PROC Integration Dispute Cases and Promises to Pay FIN-FSCM-DM-AR

FERC FERC Reporting FI-RRU

FIBA_* Bank Current Accounts IS-B-BCA-MD

FIGURES Obsolete: FS-AM: Transaction Figures FS-AM-ARC

This is custom documentation. For more information, please visit the SAP Help Portal 330
1/31/2024
FIKZ_* Electronic VAT Invoices (Kazakhstan) XX-CSC-KZ-FI

FI_ACCOUNT G/L Account Master Data FI-GL-GL-E

FI_ACCPAYB Vendor master data FI-AP-AP-E

FI_ACCRECV Customer master data FI-AR-AR-E

FI_BANKS Bank Master Data CA-BK

FI_CBR_PT Central Bank Reporting (Portugal) FI-AP-AP-B1

FI_DEFTAX Deferred Taxes FI-GL-GL-F

FI_DOCUMNT Financial accounting documents FI-GL-GL-E

FI_ECSPL15 ILM enabement of EC Sales and Purchase list data FI-GL-GL-F1

FI_ELBANK Electronic bank data FI-BL-BL

FI_ES_* VAT on Cash for Spain XX-CSC-ES-FI

FI_FICA FI-CA: Contract Accounts FI-CA

FI_ID_VAT VAT: Country speci c implementations FI-GL-GL-F1

FI_LAE_OBJ Leasing Contract Object FI-LA

FI_LC_ITEM FI-LC: Journal Entry. Obsolete, Read Access Only FI-LC-LC

FI_LC_SUM FI-LC: Totals Records. Obsolete, Read Access Only FI-SL-IS

FI_MKK* FI-CA FI-CA

FI_MONTHLY Sales gures A/P, A/R, G/L (old) FI-GL-GL-E

FI_NO_* Archiving Object for Norway FI-GL-GL-F1

FI_PAYRQ Payment Requests FI-BL-PT-PR

FI_SAFAALU Standard Audit File for Tax Purpose (SAFT) for LU XX-CSC-FIAA

FI_SCHECK Prenumbered Checks FI-GL-GL-E

FI_SK_VAT Archiving object for VAT Reporting (Slovakia) XX-CSC-SK-FI

FI_SL_DATA FI Special Ledger: Totals and Line Items FI-SL-SL-E

FI_TCJ_DOC FI Cash Journal Documents FI-BL-PT-CJ

FI_TF_* Transaction Figures FI-GL-GL-E

FKKBIX* Convergent Invoicing FI-CA-INV

FKKIDBRBOL Boleto for FICA-Accounts Receivable FI-LOC

FKKIDCZVAT VAT Ledger Additional Data (Czech Republic) XX-CSC-CZ-FICA

FKKIDDKCPR CPR/CVR number (Denmark) FI-LOC

FKKIDNOEIN Status of eFaktura(Norway) FI-LOC

FKKIDSKVAT Electronic VAT Ledger (Slovakia) XX-CSC-SK-FICA

FKKID_EXP Con rmation of Special VAT Operations XX-CSC-CZ-FICA

FKKID_VAT VAT Transfer of Credit Memos XX-CSC-CZ-FICA

FKKINV* Convergent Invoicing FI-CA-INV

This is custom documentation. For more information, please visit the SAP Help Portal 331
1/31/2024
FKK_GEN* FI-CA: Generic Tax Reporting FI-CA

FKK_TAXINV Tax Invoices XX-CSC-FICA

FLC_OBJECT Totals Records and Journal Entries in FI-LC FI-SL-IS

FMCA_* Public Sector Contract Accounting IS-PS-CA

FMEUF_* FMEUF PSM-EC

FM_* Funds Management PSM-FM-AR

FM_BCS_* Budgeting PSM-FM-BCS-BU

FM_BEL_CA Act. commitment line item - Cash budget management TR-CB-IN

FSBP_* Obsolete FS-BP-BA

FSC_BAINT FI-CA: Archive of Acct Bal. Interest Calc. History FI-CAX

FS_* Account Management FS-AM-ARC

FS_BILLING Transaction Banking: Billing FS-AM-EP-BL

FS_INFOITM Transaction Banking: Info Item FS-AM-IM-IT

FS_MCM* Master Contract Management FS-MCM

FS_OR_CNCL Transaction Banking: Loan Cancellation FS-AM-ARC

FS_PNS_* Posting Noti cation FS-AM-IM-PNS

FS_WRK_ITM Bank Work Items FS-XA

FT_* Foreign Trade: Basic Functions SD-FT-PRO

F_PCARD_* Payment Cards PSM-FM-MD

FI_MKKDPDR archive object for history and message table FI-CAX

^ TOP

Text Topic
Object

GFD_ARCH1 Archiving of GFD Content table IS-HER-CM

GHO_ALLOC Actual allocation results PP-PN-ALN

GHO_NETMOD Archiving object for the network modeler PP-PN-OWN

GHO_OWN* Production Network: Ownership PP-PN-OWN

GLE_ECS ECS: Archiving Object for ECS AC-INT-ECS

GLX-OBJEKT FI-SL: Transaction Data. Obsolete. New FI_SL_DATA FI-SL-SL

GM_* Grants Management PSM-GM-GTE

GRACACTUS Archiving for GRACACTUSAGE table records GRC-SAC-ARA

GRACEAM Archiving for GRC AC 10.1 EAM Logs GRC-SAC-EAM

GRFNMSMP Archiving for GRC AC 2010 Requests GRC-SAC-ARQ

This is custom documentation. For more information, please visit the SAP Help Portal 332
1/31/2024
GRFNPLAN Archiving for GRC Planner and Planner Monitor GRC-SPC-MT

GTRBILLDOC Grantor Billing Documents (AP/AR) PSM-GM-GTR

GTRCRMGPM Grantor CRM Program Management: ERP Mapping Data PSM-GM-GTR

GTR_TRANSL Grantor Translator PSM-GM-GTR-UP

^ TOP

HR archiving objects are listed in a seperate table: Assignment of HR Archiving Objects to Application Components

Text Topic
Object

HRIQUK_STM Archiving Object for Student Master Data - UK IS-HER-CM-GB

HRIQ_AGR IS-HER-CM: Appraisal IS-HER-CM-AD

HRIQ_AUDF IS-HER-CM: Requirement Pro les IS-HER-CM-AD

HRIQ_AUDR IS-HER-CM: Audit Runs IS-HER-CM-AD

HRIQ_EXTTR IS-HER-CM: Student External Transcripts IS-HER-CM

HRIQ_FEE IS-HER-CM: Fee Calculation Document IS-HER-CM-AD

HRIQ_PROC IS-HER-CM: Activity Document IS-HER-CM-AD

HRIQ_STGRT IS-HER-CM: Student Grants IS-HER-CM

HRIQ_STMD Archiving Object for Student Master Data IS-HER-CM

HRIQ_STYDT IS-HER-CM: Study Data IS-HER-CM-AD

HRIQ_ST_US Archiving Object for US IS-HER-CM-US

HRIQ_US Archiving Object for US IS-HER-CM-US

HRMSS_NOTE Archiving object for notes CA-MSS-HCM

^ TOP

Text Topic
Object

IAOM_EXTOB Account Assignment Manager CO-PC-OBJ

ICH_* Work Order SCM-ICH-WO

ICL_* Claims Management FS-CM

IDGT_AOBJ Archiving Object for Golden Tax FI-LOC-GTI

IDOC IDoc - Intermediate Document BC-MID-ALE

IDREPFWREP Reporting Framework FI-LOC-FI

IHC_ARC IHC Archiving Object for Payment Order Data FIN-FSCM-IHC

INDCOND Obsolete: FS-AM: Individual Conditions FS-AM-ARC

This is custom documentation. For more information, please visit the SAP Help Portal 333
1/31/2024
INV_* Bill/Payment IS-U-TO-ARC

IS-DFS_EPA Integrated Product and Process Engineering (EPA) IS-DFS-OF-MPA

IS-DFS_LOS Loss Management IS-DFS

IS-DFS_MC Integrated Product and Process Engineering (MC) IS-DFS-OF-MPO

IS-DFS_MPO Integrated Product and Process Engineering (MPO) IS-DFS-OF-MPO

IS-DFS_VPA Integrated Product and Process Engineering (PPA) IS-DFS-OF-MPA

ISH_FALL IS-H: Case IS-H-PA

ISJP Invoice Summary (Japan) FI-LOC-FI-JP

ISU_* IS Utilities IS-U-TO-ARC

IS_AD_GPD GPD Archiving Object IS-AD-GPD

IS_OIFSPBL IS-Oil Business Location IS-OIL-DS-MRN

IS_PODIN Test archiving object Utilities POD IS-U-TO-ARC

IS_SR_* Statutory Reporting FS-SR

^ TOP

Text Topic
Object

JB_* SEM Banking IS-B-RA

JIT* JIT Calls IS-A-JIT

J_1BNF Notas Fiscais XX-CSC-BR-FI

J_1G_ML GR - Material Ledger XX-CSC-GR-FI

J_1I* Country-Speci c Developments: India XX-CSC-IN-MM

J_2GLP GR - Legal printed docs: Print data XX-CSC-GR-FI

J_3* Country-Speci c Developments: Russia XX-CSC-RU-FI

J_ISM_* Media Product Sales IS-M-SD-MS

J_ISM_BV Employment Relationship IS-M-MD

J_ISM_J* Advertising Management IS-M-AM

J_ISP* Periodical Sales IS-M-SD-PS

J_SC_ROWA Archiving for table ROWA XX-CSC-ABPL-SCM

^ TOP

Text Topic
Object

This is custom documentation. For more information, please visit the SAP Help Portal 334
1/31/2024
KMTPREF Preference Statement of Document Bills of Material SLL-LEG

^ TOP

Text Topic
Object

LCLIC License SLL-LEG-ARC

LE_HU Handling Units LO-HU-BF

LIME_* LIME AP-LIM

LOY_ATC Loyalty Management Anonymous Temporary Card Object CRM-LOY-MSH-CRD

LOY_CARD Loyalty Management Card- Object CRM-LOY-MSH-CRD

LOY_MA Loyalty Management Member Activity - Object CRM-LOY-MA

LOY_MSH Loyalty Management Membership - Object CRM-LOY-MSH

LOY_PPT Loyalty Management Partner Point Transactions CRM-LOY

LOY_PTACCT Loyalty Management Point Account Set - Object CRM-LOY-PA

LOY_PT_TXN Loyalty Management Point Account Transactions CRM-LOY-PA

LO_BH_BRO Batch History index table LO-BM

LO_CHANGEM Engineering Change Management CA-GTF-ECM

LO_CHVW Batch Management Data LO-BM

LO_CMM_AD Period-End Valuation: Accrual Document LO-CMM

LO_DS_DELI Archiving Object for DS - Delivery Documents FI-LOC

LO_DS_SBC Archiving Object for DS - Self-billing & Consi FI-LOC-LO-PT

LO_EUVAT_V Archiving Object for EU VAT-Vendor Functionality FI-LOC-FI

LO_WIPB WIP Batch where-used data PP-SFC

LXYRD_ACT Yard Management LE-YM

^ TOP

Text Topic
Object

MC_S* Logistics: Infostructure S* LO-LIS-DC

MC_S036 IS-OIL-EXG Infostructure : S036 IS-OIL-DS-EXG

MC_SELVS LIS: Stored selection versions LO-LIS-DC

MES_SPLIT SPLIT TABLE IN MES OBJECT IS-A

MM_ACCTIT MM- Accounting interface posting data FI-SL-SL

This is custom documentation. For more information, please visit the SAP Help Portal 335
1/31/2024
MM_AMPL Archive materials from LZHT MM-IM

MM_ASMD Service Master MM-SRV

MM_EBAN Purchase requisitions MM-PUR-GF-ARC

MM_EINA Purchasing info records MM-PUR-GF-ARC

MM_EKKO Purchasing Documents MM-PUR-GF-ARC

MM_HDEL Archiving program for MBEWH, QBEWH, EBEWH MM-IM-GF-ARC

MM_INVBEL Materials management: Inventory documents MM-IM-PI

MM_MATBEL Materials management: Material documents MM-IM-GF-ARC

MM_MATNR MM: Material master records LO-MD-MM

MM_PREF Preference determination, archiving customs log SD-FT-PRO

MM_PREW Preference determination MatGrp archiv. TarifProt. SD-FT-PRO

MM_REBEL Materials Management: Invoice Documents MM-IV

MM_SPSTOCK LO: Batches and Special Stock LO-MD-MM

MSR_TRC Tracking Tables in Advanced Returns Management LO-ARM

^ TOP

Text Topic
Object

NM_QMEL General Noti cation QM-QN

NOW_ABS Obsolete: Available Balance Series FS-AM-OM-AC-NA

^ TOP

Text Topic
Object

OIB_QTCD IS-OIL QCI Conversion Defaults IS-OIL-DS

OIB_TRKNR IS-Oil Tracking Numbers IS-OIL-DS-HPM

OIG_* IS-Oil Transportation and Distribution IS-OIL-DS-TD

OIH_* IS-Oil Tariffs, Duties and Permits IS-OIL-DS-TDP

OIJ_* IS-Oil Traders and Schedulers Workbench IS-OIL-DS-TSW

OIO_* IS-Oil Offshore Logistic IS-OIL-OL

OIR_* IS-Oil Service Station Retailing IS-OIL-DS-SSR

OIUH_JE_GL IS-Oil PRA Journal entry IS-OIL-PRA-REV

OIUOW_TRF IS-Oil PRA Ownership IS-OIL-PRA-REV-OW

This is custom documentation. For more information, please visit the SAP Help Portal 336
1/31/2024
OIUPR_VOL IS-Oil PRA Production IS-OIL-PRA-PRD

OIURV_CA IS-Oil PRA CA IS-OIL-PRA-REV-CA

OIURV_VAL IS-Oil PRA Valuation IS-OIL-PRA-REV-VAL

OIURY_REP IS-Oil PRA Royalty Reporting IS-OIL-PRA-REP-ROY

OIUTX_REP IS-Oil PRA Tax Reporting IS-OIL-PRA-REP-TAX

ORDER_* Obsolete FS-AM-ARC

^ TOP

Text Topic
Object

PAYMITEM OBSOLETE: FS-AM: Payment Item FS-AM-ARC

PAYMORDER Obsolete: Payment Order FS-AM-ARC

PCA_OBJECT EC-PCA: Transaction Data, Obsolete, New EC_PCA_* EC-PCA

PFO_* Portfolio Assignment ICM-PFO

PH_PARCT Official Receipts FI-LOC-FI-PH

PI_PLAN Master Recipe PP-PI-MD-MRC

PLMDOC Obsolete: PLM Document FS-AM-ARC

PLM_* Audit Management CA-AUD

PM_EQUI Equipment PM-EQM-EQ

PM_IBASE IBase CS-IB

PM_IFLOT Functional Locations PM-EQM-FL

PM_IMRG Measurement Documents PM-EQM-SF-MPC

PM_MPLAN Maintenance Plans PM-PRM-TL

PM_NET Object links, master data PM-EQM-ON

PM_OBJLIST Serial Number History LO-MD-SN

PM_ORDER Service and Maintenance Orders PM-WOC-MO

PM_PLAN Routings PM-PRM-TL

PM_QMEL Maintenance Noti cations PM-WOC-MN

PP_BKFLUSH Document Log PP-REM

PP_CONF PP Con rmations IS-A-PPC

PP_ORDER Production Order PP-SFC-CPL

PP_PLAN Routings PP-BD-RTG

PP_SUMJITC Summarized JIT calls PP-KAB

PP_WIPCHVW WIP Batch Where-Used List PP-SFC

This is custom documentation. For more information, please visit the SAP Help Portal 337
1/31/2024
PP_WKC Work Centers PP-BD-WKC

PRENOTE_B Obsolete: FS-AM: Prenotes (PRENOTE_B) FS-AM-ARC

PRENUM Archiving Object for Pre-Numbering FI-LOC-SD-CN

PREVD Vendor Declaration SLL-LEG-ARC

PRFCALC Log of Preference Determination SLL-LEG-ARC

PRPREF Preference Statement of Product SLL-LEG-ARC

PR_OBJ Archiving: GTS Product Master Records SLL-LEG-ARC

PR_ORDER Process Order PP-SFC-CPL

PSSC_* Social Services IS-PS-4S

PS_* Project System PS-ST

^ TOP

Text Topic
Object

QIE_INSP Archiving of QIE Inspection Documents CA-QIE

QM_CERT Quality Certi cate QM-CA

QM_CHARACT QM Master Inspection Characteristics QM-PT-BD

QM_CONTROL Inspection Lot Transaction Data QM-IM

QM_DEFECT Defect QM-QN-DEF

QM_FMEA Failure Mode and Effects Analysis QM-PTA-FA

QM_METHOD QM Inspection Methods QM-PT-BD

QM_PLAN Inspection Plans QM-PT-IP

QM_QINF Quality Info Records in Procurement QM-PT-RP-PRC

QM_QMEL Quality Noti cation QM-QN

QM_QTASK Quality Task QM-QN-TSK

QM_QVDM Quality Info Record in Sales QM-PT-RP-SD

QM_SAMPLE Sample QM-IM-SM

^ TOP

Text Topic

Object

RDBAA_* RDB Accounting Analyzer FIN-FSCM-TRM-AN

RDBPA_* RDB Portfolio Analyzer FIN-FSCM-TRM-PA

This is custom documentation. For more information, please visit the SAP Help Portal 338
1/31/2024

RDBRA_* RDB Risk Analyzer FIN-FSCM-TRM-MR

REFX_AO Architectural Object RE-FX-BD

REFX_AT Adjustment Measure RE-FX-AJ

REFX_ATPS Prestage Adjustments for Adjustment Measure RE-FX-AJ

REFX_BE Business Entity RE-FX-BD

REFX_BU Buildings RE-FX-BD

REFX_CG Comparative Group of Apartments RE-FX-AJ

REFX_CN Real Estate Contract RE-FX-CN

REFX_CNCF Cash Flow of Contracts RE-FX-CN

REFX_JL Joint Liability RE-FX-LM

REFX_LR Land Register RE-FX-LM

REFX_MP RE: Move Planning RE-FX-RS

REFX_NA Notice of Assessment RE-FX-LM

REFX_OF Contract Offer RE-FX-OR

REFX_OO Offered Object RE-FX-OR

REFX_OR Option Rate Determination per Object/Subobject RE-FX-IT

REFX_PE Other Public Register RE-FX-LM

REFX_PG Participation Group RE-FX-SC

REFX_PL Parcel of Land RE-FX-LM

REFX_PR Property RE-FX-BD

REFX_RADOC RE Document RE-FX-RA

REFX_RC Parcel Update RE-FX-LM

REFX_RO Rental Object RE-FX-BD

REFX_ROCF Cash Flow of Rental Objects RE-FX-BD

REFX_RR RE Search Request RE-FX-OR

REFX_RS Reservation RE-FX-RS

REFX_RSREC Recurring Reservation RE-FX-RS

REFX_SCSE Service Charge Settlement RE-FX-SC

REFX_SU Settlement Unit RE-FX-SC

REFX_TC Correction Object RE-FX

REFX_XC_FR RE-FX French Localization: Transactional Data FI-LOC

RELEASELOG FS-AM: Release Object FS-AM-ARC

RESPONSE Object for Response GRC-RM

RE_* RE Real Estate RE-BD

RL_* Warehouse Management LE-WM-GF-AR

This is custom documentation. For more information, please visit the SAP Help Portal 339
1/31/2024

RM_SVSTATE SEM Banking+CFM: Risk Mgmt-Data Pool Statuses FIN-FSCM-TRM-TM

RPM_* Portfolio and Project Management PPM-PFM

RSECPROT BI Authorization Logs BW-BEX-OT

RSEC_CHLOG BI Change Logs for Security BW-BEX-OT

RV_LIKP Deliveries LE-SHP-GF-AR

RXPCALC Re-Export: Calculation Log SLL-LEG-ARC

^ TOP

Text Topic
Object

SAWE_SA Lean Staffing Assignment IS-PRS-LS

SBWAP_TRN Archiving Object for SD Self-Billing SD-BIL-IV-SBI

SCMG Case Management: Case Archiving BC-SRV-CM

SCMTMS* Transportation Management TM-BF

SCPBOD IP/PUCC Settlement SLL-LEG

SDOE_CDT Archiving content delivery tool logs BC-MOB-MGW

SDOE_ESD Archiving SOAP logs BC-MOB-MGW

SD_AGREEM Agreements and conditions SD-MD-CM-AR

SD_COND Pricing condition records SD-MD-CM-AR

SD_VBAK Sales Documents SD-SLS-GF-AR

SD_VBKA Contacts SD-CAS-SA

SD_VBREV RevRec: Archiving Revenue Recognition Tables SD-BIL-RR

SD_VBRK Billing Documents SD-BIL-GF-AR

SD_VFKK Shipment Costs LE-TRA-FC-AR

SD_VTTK SD Transport LE-TRA-FC-AR

SETTLEMENT Obsolete: FS-AM: Settlement FS-AM-ARC

SFLIGHTAR Flight Bookings CA-FS-ARE

SMI_* Social Media Intelligence CA-EPT-SMI

SM_QMEL Service Noti cations PM-WOC-MN

SN_* CDE: Snapshots BC-ILM-RW

SOBL New Object Links Packgage SOBL BC-SRV-GBT-OBL

SPL_* SPL SLL-LEG-ARC

SPM_* Superuser Privilege Management GRC-SAC-EAM

SRAL* Read Access Logging BC-SEC-RAL

This is custom documentation. For more information, please visit the SAP Help Portal 340
1/31/2024

SRMGSP Records Management: Generic Service Provider BC-SRV-RM

SRT_CFGL Web Service Con guration Log BC-ESI-WS-ABA-CFG

STANDORDER Obsolete: Standing Order FS-AM-ARC

S_AUT_LTXT Audit Trail (ILM) - Long Text Logs BC-SRV-ASF-AT

^ TOP

Text Topic
Object

TM_* Transportation Management SCM-EWM-TM

TRTM_* Transaction Manager FIN-FSCM-TRM-TM

TRTM_BPAR TR-TM: Business partners CA-FS-BP

TSHD Tax Statement SLL-LEG-ARC

^ TOP

Text Topic

Object

US_* User Master Change Documents BC-SEC-USR-ADM

^ TOP

Text Topic
Object

VEG_JOB VEG Job Log monitor Archiving CA-EPT-VE-VEG

VEHICLE Archiving of Vehicles VMS IS-A-VMS

VERSIONS Repository Object Versions BC-UPG-NA

VHURL_* Packaging Material Logistics IS-A-RL

VHU_PI HU Master Data Packing Instruction LO-HU-MD-PI

VVKK_* FS-CD: Collections and Disbursements FS-CD

^ TOP

Text Topic
Object

This is custom documentation. For more information, please visit the SAP Help Portal 341
1/31/2024

WB2 Trading contracts LO-GT-TC

WBU Agency Business: Posting List LO-AB

WCB_COCO Condition Contract LO-GT-CHB

WCI Agency Business: Customer Settlement LO-AB

WCM_* Work clearance management PM-WCM

WEC_PERS Archiving Object for Personalization related table WEC-APP-CI-REV

WEC_PERSON Archiving Object for Personalization related table WEC-APP-PER

WEC_RATING Archiving Object for Rating related tables WEC-APP-CI-REV

WLF Agency Business: Vendor Billing Documents LO-AB

WME_* Extended Warehouse Management SCM-EWM-ARC

WORKITEM Work Items from Work ow System BC-BMT-WFM

WRECH Agency Business: Remuneration Lists LO-AB

WREG Agency Business: Settlement Request Lists LO-AB

WSI Agency Business: Expense Settlements LO-AB

WS_ACSITE Retail: Site master record LO-RFM-MD-SIT

WTADDI Retail: additional LO-RFM-ADM

WZR Agency Business: Settlement Requests LO-AB

W_KALK Pricing: Pricing documents LO-RFM-MD-CON

W_MARKDOWN Retail: Markdown Planning LO-RFM-MD-PR

W_PROMO* Retail: Promotion LO-MD-PR

W_SOR Object for listing condition + modules LO-RFM-MD-LST

W_VKAB Retail: Sales value change documents LO-RFM-LG-SPV

^ TOP

Assignment of HR Archiving Objects to Application Components

This document contains all available archiving objects that belong to Personal Administration (PA), Personnel Time
Management (PT) or Payroll (PY) delivered by SAP as of April 2016 and their corresponding application component. This list will
be updated when required.

All other archiving objects are listed here:


Assignment of Archiving Objects to Application Components

Country-speci c archiving objects for Austria, Germany and Switzerland are speci ed in a seperate table in the lower section of
this page.

Object Text Topic

HR3PR_REM Bank transfers to third parties PY-US-FP-TP

HR99SOFFNS Sanctions/Offense Group PY-XX-RS

This is custom documentation. For more information, please visit the SAP Help Portal 342
1/31/2024
HR99STERM Termination Group PY-XX-RS

HRASR_EREC HR Administrative Services: Recruitment Processes PA-AS

HRASR_PA HR Administrative Services: Employee Processes PA-AS

HRASR_PD HR Admin. Services: Organizational Processes PA-AS

HRC99APD Additional Personal Data PY-US

HRC99APID Additional Personal Identity Data PY-LOC-PID

HRC99AWDEC Award/Decorations Data PY-LOC-UR

HRC99CCAR Company Car PY-LOC-CC

HRC99ELEC Online Election Data PY-LOC-XF

HRC99GARDO Garnishment Data (CIS) PY-RU

HRC99I3213 Pension Plan PY-LOC-XF

HRC99PAY Awards Data PY-LOC-PID

HRC99PEDOC Documents and Certi cates (CIS) PY-RU

HRC99PEROR Personnel Orders (CIS) PY-RU

HRC99PFUND HR: Tax Card Information CZ PA-PF-XX

HRC99REST Residence Status PY-LOC-UR

HRC99TAXDE Tax Privileges (CIS) PY-RU

HRC99TAXEX Tax and Social Ins. Payments (CIS) PY-RU

HRCBG0935 Contract Elements (BG) PY-BG

HRCBG0936 Education (BG) PY-BG

HRCBG0937 Previous Employers (BG) PY-BG

HRCBG0938 Income from previous/others ER (BG) PY-BG

HRCBG0939 Tax Properties (BG) PY-BG

HRCBG0940 Year End Income Tax Adjustment (BG) PY-BG

HRCBGBT00 Bank Transfers (BG) PY-BG

HRCCZEPAY External Payment CZ PY-CZ

HRCCZI0620 Pension/handicap CZ PA-PA-CZ

HRCCZINSU HR: Health And Social Insurance Info. CZ PA-PA-CZ

HRCCZLNOT Law Noti cations CZ PY-CZ

HRCCZOTTB HR: One Time Tables CZ PY-CZ

HRCCZPUBS Person's addition data - Public sector CZ PY-CZ

HRCCZPUBS1 Length Practice CZ PY-CZ

HRCCZTAX HR: Tax Card Information CZ PA-PA-CZ

HRCEGSINF Social Insurance EG PA-PA-EG

HRCEGSISP Social Insurance Add Service Period EG PA-PA-EG

This is custom documentation. For more information, please visit the SAP Help Portal 343
1/31/2024
HRCEGTINF Egypt: Tax Information PA-PA-EG

HRCEGTPOOL Tax Pool Element PA-PA-EG

HRCESADMEV Administrative Events ES PA-PA

HRCESBENEF Bene ts Data ES PA-RC

HRCESFSIND Fiscal Income Data ES PA-PA-ES

HRCESI0061 Social Insurance ES PA-PA-ES

HRCESI0092 Seniority ES PA-PA-ES

HRCESI0714 ERE Data ES PA-PA-ES

HRCESI0768 FDI Message Data ES PA-PA-ES

HRCESI0799 AFI Message Data ES PA-PA-ES

HRCESI0887 Garnishments ES PA-PA-ES

HRCESI0912 Disciplinary Actions ES PA-PA

HRCESI0968 Delt@ ES PA-PA-ES

HRCESI3231 Certi c@ ES PA-PA-ES

HRCESI3299 Compatibilities ES PA-PA

HRCESI3300 CEPIT ES PA-PA

HRCESSTMNG Status Management ES PA-PA-ES

HRCEST5EC1 Payroll Directory Results ES PY-ES

HRCFIGARN Garnishements Finland PA-PA-FI

HRCFISOCI Social Insurance Info. Finland PA-PA-FI

HRCFITAX TAX CARD INFORMATION FINLAND PA-PA-FI

HRCFRABSN Regrouping object for absence destruction PA-PA-FR

HRCFRBACON Regrouping object for basic contract destruction PA-PA-FR

HRCFRCORR Regrouping object for correction destruction PA-PA-FR

HRCFRDECI Regrouping object for decision destruction PA-PA-FR

HRCFRGARN Regrouping object for garnishment destruction PA-PA-FR

HRCFRPRSH Regrouping object for pro t sharing destruction PA-PA-FR

HRCFRPSBC Regroup. object for basic contract PS destruction PA-PA-FR

HRCGBABSSO Absence Scheme Override PY-GB-PS

HRCGBAQUAL Academic Quali cation PY-GB-PS

HRCGBARCGP Great Britain Archive Group PA-PA-GB

HRCGBCCAR Company Cars Data GB PA-PA-GB

HRCGBCCARS Company Cars GB PA-PA-GB

HRCGBCCUNV Company Car Unavail. GB PA-PA-GB

HRCGBCLNCD Clinical Details PY-GB-PS

This is custom documentation. For more information, please visit the SAP Help Portal 344
1/31/2024

HRCGBCTORD Court Orders GB PA-PA-GB

HRCGBHECNT HE Contract Data PY-GB-PS

HRCGBHEQ High Education Data GB PY-GB-PS

HRCGBHESAM HESA Master Data PY-GB-PS

HRCGBHESAS HESA Submitted Data PY-GB-PS

HRCGBNATIN National Ins. GB PA-PA-GB

HRCGBNINFT Great Britain Non-Infotype Table Group PA-PA-GB

HRCGBOFFSS Offshore Social Security GB PA-PA-GB

HRCGBOFFTX Offshore Tax GB PA-PA-GB

HRCGBPENRF Pensions Reform PA-PA-GB

HRCGBPNFND Pension Funds GB PA-PA-GB

HRCGBPQUAL HE Professional Quali cations PY-GB-PS

HRCGBPYMTM Payment Made in Error GB PA-PA-GB

HRCGBPYPNA Predetermination PAYE and NIC Adjus PA-PA-GB

HRCGBSMPSP SMP/SAP/SPP GB PA-PA-GB

HRCGBSSP Statutory Sick Pay GB PA-PA-GB

HRCGBSSP1L SSP1(L) Form Data GB PA-PA-GB

HRCGBSSPCT SSP Control GB PA-PA-GB

HRCGBSSPSM SSP/SMP Exclusions GB PA-PA-GB

HRCGBSWFCT SWF Contract Details PY-GB-PS

HRCGBSWFIT School Work Force Infotypes GB PY-GB-PS

HRCGBSWFQL SWF Quali cations PY-GB-PS

HRCGBSWFST SWF Staff Details PY-GB-PS

HRCGBSWFTB School Work Force Tables GB PY-GB-PS

HRCGBTAHP Personnel numbers for AHP process model GB PA-PA-GB

HRCGBTASHE ASHE Return Data GB PY-GB

HRCGBTAX Tax Data GB PA-PA-GB

HRCGBTAXCR Tax Credit GB PA-PA-GB

HRCGBTCLS CLASS CPX INTERFACE Snapshot Table GB PY-GB-PS

HRCGBTEF Store Info Coming In From GG (GB) PA-PA-GB

HRCGBTESPD Employment Starter and Pension Detail GB PA-PA-GB

HRCGBTEYUU Upload Table for EYU Forms GB PY-GB

HRCGBTNITO National Insurance Data Take-on GB PY-GB

HRCGBTP46 Archive for P46-Forms GB PA-PA-GB

HRCGBTPAE PAE Data Take On Notice Sent GB PY-GB

This is custom documentation. For more information, please visit the SAP Help Portal 345
1/31/2024

HRCGBTTONI National Insurance Data Take-on GB PY-GB

HRCGBTTPS TPS Annual return records GB PY-GB-PS

HRCGBWFDPT WFTC/DPTC GB PA-PA-GB

HRCGRSOCI Social Insurance GR PA-PA-GR

HRCGRTAX Payroll Data GR PA-PA-GR

HRCHKAPD Additional Personal Data Group PA-PA-HK

HRCHKPAY Payroll Group PA-PA-HK

HRCHRANINC Annual Income Statement for Employee Croatia PA-PA-HR

HRCHRI0562 Personal Data Croatia PA-PA-HR

HRCHRI0563 Family data Croatia PA-PA-HR

HRCHRI0564 Tax data Croatia PA-PA-HR

HRCHRI0575 Other/Previous employers Croatia PA-PA-HR

HRCHRJOPPD JOPPD Legal Reporting On Income Croatia PY-HR

HRCHU0163 Tax and Tax Allowance HU PY-HU

HRCHU0164 Contributions HU PA-PA-HU

HRCHU0175 Supplementary Personal Data HU PA-PA-HU

HRCHU0176 Statistical Data HU PA-PA-HU

HRCHU0178 Paying Office HU PA-PA-HU

HRCHU0193 Carry Over Tax Data HU PA-PA-HU

HRCHU0307 Tax Additional Data HU PA-PA-HU

HRCHU0441 Corrections for Reports HU PA-PA-HU

HRCHU0635 School Leaving Certi cate HU PY-HU

HRCHU0637 Incompatibility HU PY-HU

HRCHU0638 Examinations HU PY-HU

HRCHU0640 Classi cation data HU PY-HU

HRCHU0641 Further training data HU PY-HU

HRCHU0642 Data related to managers HU PY-HU

HRCHU0643 State Guarantee & Disciplinary Punishment HU PY-HU

HRCHU0644 Legal relationship termination data HU PY-HU

HRCHU0660 Carry Forward SI Data HU PA-PA-HU

HRCHU3234 Irregular Incomes HU PY-HU

HRCHU3260 Leave Quota HU PY-HU

HRCHU3263 Rank HU PY-HU

HRCHU3264 National Security Check & Property Declaration PY-HU

HRCHU3265 Field service data HU PY-HU

This is custom documentation. For more information, please visit the SAP Help Portal 346
1/31/2024

HRCHU3266 Additional Employers HU PY-HU

HRCHU3267 Services HU PY-HU

HRCHUGARN Garnishments Data HU PA-PA-HU

HRCHUOREL Contracts & Payments Data PY-HU

HRCHUPSRE Public Sector Relationship HU PY-HU

HRCHUSIPM SI Payments Data HU PA-PA-HU

HRCHUWCLT Working Clothes Data PA-PA-HU

HRCIEELCOM Electronic Communication IE PY-IE

HRCIEHEINS Health Insurance Ireland PA-PA-IE

HRCIEPENSN Pensions Ireland PA-PA-IE

HRCIEPRAMT PRD: Re-Calculated PRD Amount Table PA-PA-IE

HRCIEPRDDT PRD Details PY-IE

HRCIEPRSI PRSI Ireland PA-PA-IE

HRCIESTART Starters Details Ireland PA-PA-IE

HRCIETAX Tax Data Ireland PA-PA-IE

HRCJP0143 Life/General Insurance JP PA-PA-JP

HRCJP0147 Personal Appraisals JP PA-PA-JP

HRCJP0388 Union Due Deduction JP PA-PA-JP

HRCJP0559 Commuting allowance Info JP PA-PA-JP

HRCJP0560 Overseas pay JP PA-PA-JP

HRCJP3140 Maternity/Child Care/Nursing Leave PA-PA-JP

HRCJPPENSN Corporate Pension Group JP PY-JP

HRCJPRETIR Retirement Data JP PA-PA-JP

HRCJPSHUKO Shukko Group JP PA-PA-JP

HRCJPSIBAS Social Insurance Data JP PA-PA-JP

HRCJPTAXES Taxes Data JP PA-PA-JP

HRCKZBTR Bank Transfer (KZ) PY-KZ

HRCMXGARN MX Garnishment Group PA-PA-MX

HRCMXLOAN MX Loan Group PA-PA-MX

HRCMXSSOC MX Social Insurance Group PA-PA-MX

HRCMXTAX MX Tax Group PA-PA-MX

HRCMXTERM MX Termination Group PA-PA-MX

HRCNOEDAG EDAG Legal Reports Data (Norway) PY-NO

HRCNOI0173 Tax Card Information (Norway) PA-PA-NO

HRCOMLPBA Leave Passage by Amount for Oman PA-PA-OM

This is custom documentation. For more information, please visit the SAP Help Portal 347
1/31/2024

HRCOMLPBT Leave Passage by Ticket for Oman PA-PA-OM

HRCOMOCHA Occupational Hazard for Oman PA-PA-OM

HRCPLI0413 Tax Data PL PA-PA-PL

HRCPLI0515 Social Insurance Data PL PA-PA-PL

HRCPLI0516 Addit. Social Insurance Data PL PA-PA-PL

HRCPLI0657 Contracts of order PL PA-PA-PL

HRCPLI0658 Annual Remuneration PL PA-PA-PL

HRCPLI0859 Contracts for Temporary Workers PL PA-PA-PL

HRCPTABSIC Payment absence Clearing PT PA-PA-PT

HRCPTADSMB Reimbursement ADSE PY-PT-PS

HRCPTDISAB Challenge PT PA-PA-PT

HRCPTMOBIL Mobility PT PY-PT-PS

HRCPTNIFIS Tax PT PA-PA-PT

HRCPTPRODT Professional classi cation PT PA-PA-PT

HRCPTSIADA SIADAP Recording PY-PT-PS

HRCPTSSOCI Social Security PT PA-PA-PT

HRCPTVACBH Suppl. IT0016 (PT) PA-PA-PT

HRCROEEREG Employee Pesonal & Contract & Bonuses Data PY-RO

HRCROTAXSI Tax, Social Insurances, Fiscal statement Romania PY-RO

HRCRULBOOK Labor Book PA-PA-RU

HRCRURANKS Employees' Ranks RU PY-RU-PS

HRCRUSECAC Access to Classi ed Information RU PS PY-RU-PS

HRCRUSICKC Sickness certi cate PA-PA-RU

HRCRUSICLM Rules for SI Payments RU PA-PA-RU

HRCSEANTAX Annual Tax Additions - SE PA-PA-SE

HRCSEEXCEP Exceptions - SE PA-PA-SE

HRCSEGARN Garnishments - SE PA-PA-SE

HRCSET5SP PA91 Tables PY-SE-PS

HRCSET5SPP HR-SE: Information needed to be reported to Alecta PY-SE

HRCSET5SS PA03 Tables PY-SE-PS

HRCSET5SVT Payroll Account Transfer PA-PA-SE

HRCSETAX Taxes - SE PA-PA-SE

HRCSETAXCE Taxes - CE PY-SE-PS

HRCSGAPID SG Additional Personal Identity Data Group PA-PA-SG

HRCSGDECL SG Declarations Data PA-PA-SG

This is custom documentation. For more information, please visit the SAP Help Portal 348
1/31/2024

HRCSGOTH SG Other Data PA-PA-SG

HRCSGPAD SG Personnel Data Group PA-PA-SG

HRCSGPAY SG Payroll Data PA-PA-SG

HRCSGREP SG Reporting Related Data PA-PA-SG

HRCSIANINC Annual Income for Tax Reporting SI PY-SI

HRCSIDPZ Paid voluntary pension insurance SI PA-PA-SI

HRCSII0603 Tax Data SI PA-PA-SI

HRCSII0604 EE's disability data SI PA-PA-SI

HRCSII0605 Working age SI PA-PA-SI

HRCSII0606 Transport & Food SI PA-PA-SI

HRCSII0607 EE's data about education SI PA-PA-SI

HRCSIMOREP External transfers with variable monthly repayment PY-SI

HRCSIPENCO EE's pension insurance data PY-SI

HRCSKANTXC Annual Tax Clearing Data PY-SK

HRCSKI0252 Tax data PA-PA-SK

HRCSKI0253 Insurance premium PA-PA-SK

HRCSKI3350 Vehicle Value PA-PA-SK

HRCSKTELDZ Pension Provision Reg.Cert. (ELDZ) PA-PA-SK

HRCSKTSKRL Cluster with registration sheets for soc.insurer PA-PA-SK

HRCUAI0811 Pension References UA PA-PA-UA

HRCUSABDNT Absence donation PA-PA-US

HRCUSAPD Additional Personal Data Group PA-PA-US

HRCUSBOND Saving Bonds Group PA-PA-US

HRCUSCOBRA COBRA Group PA-PA-US

HRCUSELECT Online Election Object PA-PA-US

HRCUSFMLA FMLA Group PA-PA-US

HRCUSGARN Garnishment Group PA-PA-US

HRCUSGRIEV Grievances Data PA-PA-US

HRCUSOSHA OSHA Group PA-PA-US

HRCUSOVERP Overpayments Group PA-PA-US

HRCUSPAYMT Payments PA-PA-US

HRCUSPYCUM Payroll Cumulation Group PA-PA-US

HRCUSPYFED Payroll Federal Group PA-PA-US

HRCUSPYLOC Payroll Local Group PA-PA-US

HRCUSPYSTA Payroll-State Group PA-PA-US

This is custom documentation. For more information, please visit the SAP Help Portal 349
1/31/2024

HRCUSRVISA Resident&VISA Group PA-PA-US

HRCUSTAX TAX Group PA-PA-US

HRCUSTIPS TIP-Indicator Group PA-PA-US

HRECM_REV HR: Enterprise Compensation Management - Review PA-EC

HRHCP_PLAN HR: Personnel Cost Planning PA-CP

HRMP_DRAFT HR Administrative Services: Mass Processing PA-AS

HRP99APID Additional Personal Identity Group PY-XX-RS

HRPA_ADJRN HR: Adjustment Reasons PA-BN

HRPA_ADRS HR: Address PA-PA

HRPA_BNMDI HR: Medical Bene ts Information PA-BN

HRPA_BNPLN HR: Bene t Plans PA-BN

HRPA_CHLLN HR: Challenge PA-PA

HRPA_CMNTN HR: Communication PA-PA

HRPA_COSTD HR: Cost Distribution PA-PA

HRPA_CRPFC HR: Corporate Function PA-PA

HRPA_CTRCT HR: Contract Elements PA-PA

HRPA_EDUC HR: Education and Training PA-PA

HRPA_EXORG HR: External Organizations PA-BN

HRPA_FMLYM HR: Family/Related Person PA-PA

HRPA_GBENI HR: General Bene ts Information PA-BN

HRPA_HCEIN HR: HCE Information PA-BN

HRPA_INDAT HR: Internal Data PA-PA

HRPA_INSTR HR: Company Instructions PA-PA

HRPA_INSUR HR: Insurance PA-PA

HRPA_LOAN HR: Loans PY-XX

HRPA_MGE HR: Management of Global Employees PA-GE

HRPA_NTFTN HR: Noti cations PY-XX

HRPA_PREMP HR: Other/Previous Employers PA-PA

HRPA_PWAT HR: Powers of Attorney PA-PA

HRPA_PYDTL HR: Payment Details PA-PA

HRPA_PYRST HR: Payroll Infotypes PA-PA

HRPA_REMUN HR: Remuneration PA-PA

HRPA_TASK HR: Date Monitoring PA-PA

HRPA_WRKCN HR: Works Councils PA-PA

HRPD_PREL HR: Infotype 1001 PA-OS-ST

This is custom documentation. For more information, please visit the SAP Help Portal 350
1/31/2024

HRRCF_APPL HR: E-Recruiting - Applications PA-ER

HRRCF_CAND HR: E-Recruiting - Candidates PA-ER

HRRCF_REQ HR: E-Recruiting - Requisitions PA-ER

HRTIM_ABS HR: Absences PT-RC

HRTIM_ATT HR: Attendance PT-RC

HRTIM_AVAL HR: Availabilities PT-RC

HRTIM_MAT HR: Maternity Protection PT-RC

HRTIM_MIL HR: Military and Non-Military Service PT-RC

HRTIM_OVER HR: Overtime PT-RC

HRTIM_PWS HR: Planned Working Time PT-RC

HRTIM_REQ HR: Leave Requests/Clock-In/Out Corrections PT-RC

HRTIM_SUBS HR: Substitutions PT-RC

HRTIM_TEV HR: Time Events PT-RC

HR_ACCLOGJ Access infotype Log(Japan) PA-PA-JP

HR_EIC HR: EIC - Activities PA-EIC

HR_PBCDOC Archiving of PBC Documents PA-PM-PB

HR_QUALI HR: Quali cations PA-PD

HR_UPDLOGJ Update Infotype Log(Japan) PA-PA-JP

^ TOP

Country-speci c archiving objects for Austria, Germany and Switzerland

Object Text Topic

HRC99STAT HR: Statistiken PA-PA-DE

HRCATABSFO Fehlen Formen (A) PA-PA-AT

HRCATCLST Cluster-Daten (A) PY-AT

HRCATEXEMP Freistellung A PA-PA-AT

HRCATGARNI Pf.A Pfändung (A) PA-PA-AT

HRCATI0043 Familienbeihilfe (A) PY-AT-PS

HRCATI3205 Schwerarbeitsplatz (A) PA-PA-AT

HRCATI3232 Kurzarbeit (A) PA-PA-AT

HRCATI3233 Rückstellungsgrundlagen (A) PA-PA-AT

HRCATLEAVE Demission (A) PA-PA-AT

HRCATPENSN Pension / in den Ruhestand (A) PY-AT

This is custom documentation. For more information, please visit the SAP Help Portal 351
1/31/2024
HRCATSEMRT Altersteilzeit (A) PA-PA-AT

HRCATSOCI Sozialversicherung (A) PA-PA-AT

HRCATTAX Steuerdaten (A) PA-PA-AT

HRCCHABSFO Fehlen Formen (CH) PA-PA-CH

HRCCHI0036 Sozialversicherung (CH) PA-PA-CH

HRCCHI0038 Steuerdaten (CH) PA-PA-CH

HRCCHI0511 Ortszuschlag/Amt (CH) PY-CH-PS

HRCCHI3230 PF Einmalzahlungen (CH) PA-PF-CH

HRCCHPENSN Pensionskasse Stammdaten Alt (CH) PA-PA-CH

HRCCHPSCON Vertragsbestandteile (CH) PA-PA-CH

HRCDEAT HR: Altersteilzeit PA-PA-DE

HRCDEAV HR: Altersvermögensgesetz und Direktversicher PA-PA-DE

HRCDEBA HR: Betriebliche Altersvorsorge PA-PF-DE

HRCDEBR HR: Betriebsrenten PA-PA-DE

HRCDEBW HR: Bescheinigungen PY-DE-RP-ST

HRCDECI HR: Bauwirtschaft PY-DE-CI

HRCDEED HR: Elektronischer Datenaustausch PY-DE-NT-NI

HRCDEJE HR: Angaben zur Jahresentgelt-Prüfung PA-PA-DE

HRCDEKU HR: Saison-/Kurzarbeitergeld PA-PA-DE

HRCDENT HR: Meldedaten Deutschland PA-PA-DE

HRCDEPF HR: Pfändung PY-DE-NT-GR

HRCDEPS HR: Stammdaten öD PY-DE-PS

HRCDESV HR: Sozialversicherung PA-PA-DE

HRCDETX HR: Deutsche Steuerdaten PA-PA-DE

HRCDEVL HR: Vermögensbildung D PA-PA-DE

HRCDEZU HR: Zusatzversorgung PA-PA-DE

^ TOP

Informations about AIS (Archive Information System)

Purpose

Providing information about functionalities of AIS (Archive Information System), component BC-CCM-ADK-AS.

Overview

This is custom documentation. For more information, please visit the SAP Help Portal 352
1/31/2024
While data archiving via transaction SARA, using AIS to create and build index tables might be necessary for accessing and
displaying archived objects from application point of view.

Check Reports

ASCORR01 (Correction Program Archive Information System)


Options:

Check if infostructure contains elds not in table

Check if generated table has TADIR entry

Check if table is used by more than one infostructure

Check names of infostructures

ASCORR02

ASCORR03: Correction Program ArchivInfoSystem: ZARIX Tables without DDIC Def.


For more info read SAP Note 664317.

ASCORRINDX: Adjust database indexes for archive information structures


The program ASCORRINDX can be used to create, change and delete database indexes for
archive information structures, without having to delete and
rebuild the infostructures completely.

How to create transaction for a query

Symptom
Need to create a transaction code for a query, if use a generated query report as an ABAP report to create the transaction sometimes it
doesn't work.

Refer to note 393160 but still don't know how to create the transaction code.

Environment
As of Release 6.10

Cause
You should not copy and use a generated query report as an ABAP report

Resolution
As of Release 6.10, SAP delivers a template with Report SAP_QUERY_CALL for this purpose. The template delivered has a selection
screen with parameters for query workspace, query user group and query name, as well as for query variants, which you should use to
start the query. When you enter the values, a module is called to execute the query.

For better explanation we can assume that you start query A of usergroup U in standard area with variant V.

1) Create a report transaction (Z1) for the template report: SAP_QUERY_CALL 2) Create a transaction Z2 with 'Transaction with
parameters (paramter transaction)'.There you enter Z1 in transaction eld, check the box for 'Skip initial screen' and at the end of this
screen in 'default values' insert

P_UGROUP U P_VARI V P_QUERY A P_WSID blank (G for global area)

After saving the query A should be started with transaction Z2.

This is custom documentation. For more information, please visit the SAP Help Portal 353
1/31/2024

How to nd BADI using T-Code ST05

How to nd BADI using T-Code ST05

How to require a Adobe Credential for SAP Interactive Forms

Purpose

This article explains how customer can require an Adobe credential by a SAP OSS message.

Overview

You want to use Adobe Interactive Forms and you require a credential, as described in the con guration guide, to complete the
con guration. Bear in mind that the credential is required only if you have interactive forms (forms in which the user can enter
data). For print forms, the credential is not required. If you have made the con guration without registering a credential, you
receive the following error when you try to use the Adobe Interactive Forms:

com.sap.tc.webdynpro.pdfobject.core.PDFObjectRuntimeException: Path to object does not exist at : sap.com

#at com.sap.tc.webdynpro.pdfobject.core.PDFObject.
doSoapCall(PDFObject.java:187)
at com.sap.tc.webdynpro.pdfobject.core.PDFObject.
createPDF(PDFObject.java:137)
createPDF(PDFObject.java:137)

To complete the con guration successfully, you require a credential, which you must register in accordance with the
con guration guide.

In the Adobe Interactive Forms scenario, the system checks whether acredential exists and is egistered. If this is not the case,
you cannotuse the Adobe Interactive Forms scenario.

Steps to requere a credential


1. Open an SAP customer message under the component BC-SRV-FP-ICF.

2. Write that you require a credential for the Adobe Interactive Forms scenarios.

3. Include an e-mail address to which the credentials can be sent.

4. The persons responsible will then contact you directly.

Related Content

Related Documents

Related Notes

SAP note 736902 : Adobe Credentials

SAP Basis Standard Reports


BASIS

RBDCPCLR Deletes Obsolete change pointers


RSAL_BATCH_TOOL_DISPATCHING Job for monitoring
RSARFCDL Cleans up log le for sm58 transfers
RSARFCER Deletes entries in arfcstate and arfcdata for RFCs (ARFC)

This is custom documentation. For more information, please visit the SAP Help Portal 354
1/31/2024
RSARFCEX Retries entries in sm58 that may have failed due to temp conn errors
RSBPCOLL Collect Values for statistics
RSCOLL00 Performance Collector
RSCONN01 SAPconnect: Start Send Process Fax/Email
RSDELCUA Delete Central User Administration
RSN3_AGGR_REORG Program for Starting the Reorganization Function
RSN3_STAT_COLLECTOR Non-R/3 statistics collector
RSSNAPDL Delete ABAP Dumps
RSTBPDEL Delete Entries in DBTABLOG
RSTRFCER Delete EXEC LUWs
RSTRFCES Deletes tRFC and qRFC entries (arfcrstate, trfcqout)
RSXMILOGREORG Delete XMI-LOG Files
SBAL_DELETE Delete application logs (table BALHDR)

Spool

RSBTCPRIDEL Reorganization of Print Parameters for Background Jobs.


See the following SAP Notes for details: #999951 - Program documentation of RSBTCPRIDEL. #16083 -
Standard jobs, reorganization jobs
RSPO0041 Delete old Spool Files: deletes the SPOOL TemSe objects and corresponding entries. Has been replaced by
Report RSPO1041.
See the following SAP Notes for details: #130978 - RSPO1041 - Replacement for RSPO0041. #48400 -
Reorganization of TemSe and spool
RSPO0043 Spool consistency check. Has been replaced by Report RSPO1043.
See the following SAP Notes for details: #98065 - Spool consistency check with RSPO1043 as of 4.0A. #48400 -
Reorganization of TemSe and spool
RSPO1041 Delete old Spool Files: deletes the SPOOL TemSe objects and corresponding entries. Replaces the old Report
RSPO0041.
See the following SAP Notes for details: #130978 - RSPO1041 - Replacement for RSPO0041. #48400 -
Reorganization of TemSe and spool
RSPO1043 Spool Data-Consistentcy check in Background (SP12). Replaces the old Report RSPO0041.
See the following SAP Notes for details: #98065 - Spool consistency check with RSPO1043 as of 4.0A. #48400 -
Reorganization of TemSe and spool

Batch

RSBDCREO Delete Old Batch input Files.


See the following SAP Notes for details: #18307 - Batch input logs and reorganization. #48400 - Reorganization
of TemSe and spool
RSBPSTDE Delete old job statistics.
See the following SAP Note for details: #16083 - Standard jobs, reorganization jobs
RSBTCDEL Delete batch jobs: deletes the JOBLGX TemSe objects and corresponding entries. Has been replaced by Report
RSBTCDEL2.
See the following SAP Notes for details: #784969 - Program RSBTCDEL2. #48400 - Reorganization of TemSe
and spool
RSBTCDEL2 Delete batch jobs: deletes the JOBLGX TemSe objects and corresponding entries. Replaces the old Report
RSBTCDEL.
See the following SAP Notes for details: #784969 - Program RSBTCDEL2. #48400 - Reorganization of TemSe
and spool
RSTS0024 Delete "orphaned" job logs (joblogs that do not belong to any job).
See the following SAP Notes for details: #16083 - Standard jobs, reorganization jobs. #48400 - Reorganization
of TemSe and spool

DATABASE

This is custom documentation. For more information, please visit the SAP Help Portal 355
1/31/2024
View v$tables
RSANAORA Analyze table stats
RSORADJV Select DBA tables
RSORAHCL Needed for performance history. Scheduling details are stored in table TCOLL.

TMS (Transport Management System)

RDDNEWPP Schedule DDIC Jobs


RDDEXECL Transport tool for the Execution of user-de ned activities
RDDGENBB Transport tool for the ABAP Dictionary distribution
RDDIMPDP_<client> Dispatches the transport programs
RDDMASGL Transport tool for the ABAP Dictionary activation
RDDVERSL Transport tool for the Versioning
RSTMSTIQ Adjust Queue
TMS_BCI_START_SERVICE Automatic import

SAP invalid content repository

Symptom
Lots of warning messages displayed in dev_icm trace. such as:

[Thr 11080] *** WARNING => Connection request from (30/31/0) to host:
P25214, service: 1090 failed (NIEHOST_UNKNOWN)
[Thr 11080]

Unknown macro: {0006822d}

[icxxconn.c 2271]
[Thr 11084] *** WARNING => Connection request from (30/31/0) to host:
http, service: 80 failed (NIEHOST_UNKNOWN)
[Thr 11084]

Unknown macro: {0006822e}

[icxxconn.c 2271]

Reason and Prerequisites

Customizing of the content repositories contains the HTTP repositories


BIE_NET and BIE_QMM that refer to the host dwdf010.wdf.sap-ag.de Port
1090 or HTTP repository ED that refer to host 10.26.24.44.
Since HTTP repositories are automatically monitored in CCMS, the system
periodically tries to access these hosts. Since the hosts cannot be
accessed, the system issues relevant error messages in the CCMS alert
monitor (transaction RZ20: SAP CCMS Monitors for Optional Components ->
Knowledge Provider -> ContentServer -> Server:).

Following is wrong delivery:

HTTP server pwdf2625, port 1090

HTTP server P25214, port 1090

HTTP server 10.26.24.44, port 1090

This is custom documentation. For more information, please visit the SAP Help Portal 356
1/31/2024
HTTP server : arcdev.wdf.sap.corp, port 1080

HTTP server : hs2086.wdf.sap.corp, port 2000

Solution

Delete these repository from OAC0 and OACT.

Related Content

Related Document

Related Notes
308977:Repositories BIE_QMM, BIE_NET, HME_CONTENT,ED,A2 and

534683:Inactive content repository BDS_DB30

SD-GTS Integration

Purpose

Purpose of this document is to explain the settings required in SAP GTS to integrate with SAP SD

Overview

The document explians the con guration settings required in SAP GTS to check sales documents/delivery documents in SAP
GTS.

1 Prerequisites

This document consists of customization settings already exisitng as part of SAP GTS standard set-up and some modi cation as
required to build the scenario for demo purpose.

Before going thorugh the steps mentioned in this document the prerequisites are:

• System Communication between SAP GTS and Feeder System (ECC) is established

2 Organizational Structure

This is part of the General settings covers the Organization Structure & Legal Units are set up in SAP GTS System for activating
SAP GTS Services.

2.1 De ne Foreign Trade Organization (FTO)

In this acitvity the Foreign Trade Organization is de ned as the highest organizational unit in your organizational structure. It is
important to select proper Display Business Partner Role (e.g. for Foreign trade Organistion the BP role to be selected is
SLLFTO.

IMG: SAP Global Trade Services > General Settings > Organizational Strucutre > De ne Foreign Trade
This is custom documentation. For more information, please visit the SAP Help Portal 357
1/31/2024
Organizations.

Example: Foreing Trade Organization FTO_US.

2.2 Assignment of Org. Units from Feeder Sys. to FTO.

In this acitvity the Feeder System Company Code (representing the Legal Org Unit in ECC) is assigned to the

Foreing Trade Organization Unit in SAP GTS.

IMG: SAP Global Trade Services > General Settings > Organizational Structure > Assignment of Organizational Units from
Feeder System to Foreign Trade Org. > Assign Company Code at Feeder System Group Level > Manually Assign Company Code

Co Code CSUS of ECC is assigned to FTO_US

2.3 De ne Legal Units

In this IMG Activity legal units are de ned as part of th eorganization structure in SAP GTS. This Legal

Units represents the concept of Plants in ECC6 (SAP R/3).

IMG: SAP Global Trade Services > General Settings > Organizational Structure > De ne Legal Units

The Legal Unit LU_US is de ned with Business Partner Role SLLSIT

2.4 Assign Legal Unit (LU) to the FTO

In this acitivity the Legal Unit (Plant) de ned in SAP GTS is assigned to relevant Foreign Trade Organization de ned. This is in lin
ewiht the same concept of assigning a Plant to a Company Code in SAP R/3.

IMG: SAP Global Trade Services > General Settings > Organizational Structure > Assign Legal Unit to the Foreign Trade
Organization

This is custom documentation. For more information, please visit the SAP Help Portal 358
1/31/2024
2.5 Assignment of Org. Units from Feeder System to LU

In this acitivity Item Category is de ned in GTS system for Customs Shipment Documents

IMG: SAP Global Trade Services > General Settings > Organizational Structure > Assignment of Organizational Units from
Feeder System to Legal Unit > Assign Plant at Feeder System Group Level > Manually Assign Plant

Example: The feeder system (SAP R/3) plant CSPL is asigned to LU_US Legal Unit.

3 Partner Structure

This is part of the General settings covers the Partner Structure and mapping of feeder system partner functions to Partner
Groups in SAP GTS Services.

3.1 De ne Partner Functions (PF)

In this acitvity various partner functions are categorize. The partner functions in the Customs Documents at Header & Item
level has sepci c functions and hence each partner function de ned for the purpose are assigned speci c function type. Also,
the use of the partner function in export or import or both export & Import relevance are assigned as well.

IMG: SAP Global Trade Services > General Settings > Partner Structure > De ne Partner Functions. Example: Partner Function
AG represents Sold-to Party (Customer). This partner function is relevant for

Exports only and the Partner Function Type assigned is CUSAUG (Sold-to Party).

3.2 De ne De ne Groups of PF

In this acitvity the partner functions are combined in groups. It is advisable to group the partner functions as it provides unique
and easy assignment of partner functions to the different types of foreign trade documents at a later time.

IMG: SAP Global Trade Services > General Settings > Partner Structure > De ne Groups of Partner

Functions

3.2.1 Partner Groupings

This is custom documentation. For more information, please visit the SAP Help Portal 359
1/31/2024
De ne Partner Groups

Example: Partner Group PGSPL2 (Partner Group for "Sanctioned Party List" Service - Export)

3.2.2 Assign Partner Functions

In this step relevant partner functions are assigned to the group

Example AG is one of the partner functions assigned to the partner group PGSPL2

3.2.3 Assignment of PF from Feeder Systems

In this acitvity the partner functions from feeder systems are linked to corresponding partner function in

SAP GTS.

IMG: SAP Global Trade Services > General Settings > Partner Structure > Assignment of Partner Functions from Feeder
Systems > Assign Partner Function at Feeder System Level > Manually Assign Partner Function

Example: The Partner Function AG from Feeder system is assigned to Business Partner Role AG in SAP GTS.

4 Legal Regulation

This is part of the General settings which covers the setting up of country groups, relevant legal regulations and activation of
the legal regulation per country/country groups.

4.1 De ne Country Groups

In this activity country groups a re de ned to simplify the process of making license determination settings.

IMG: SAP Global Trade Services > General Settings > Legal Regulations > De ne Country Group

Example: Country Group YH_EU is created to group together countries belonging to European

Community.

4.2 De ne Legal Regulations

This is custom documentation. For more information, please visit the SAP Help Portal 360
1/31/2024
In this activity the legal regulations for export/import are de ned which are then used for various SAP GTS Services.

IMG: SAP Global Trade Services > General Settings > Legal Regulations > De ne Legal Regulation

4.2.1 Legal Regulations

De ne the relevant Legal Regulation.

Example: Legal regulation E01 (Export Administration Regulations (E01)). This Legal regulation is valid for Export only.

4.2.2 Assign Dead Line Type

Each Legal Regiulation is de ned with a dead line type which enables the possibility of assigning the validity date.

Example: Legal regulation E01 (Export Administration Regulations (E01)) has a valid form and Valid to date.

4.2.3 Assign Country Groups

Each Legal Regiulation is assigned Country Groups for which the particular Legal regulations is valid. Example: Legal regulation
E01 (Export Administration Regulations (E01)) is assigned to Country

Group CNTRY_GRP and it is valid for Export transactions only.

4.3 . De ne Determination Procedure for Active Leg. Reg.

In this activity the procedures to use while determining the active legal regulations are de ned. This is required to enable the
system to determine relevant legal regulation for the services of customs procedures valid for the transaction.

IMG: SAP Global Trade Services > General Settings > Legal Regulations > De ne Determination

Procedure for Active Legal Regulations

4.3.1 Procedure for Detemining Active Legal Regulations

De ne the procedure for Determining Active Legal Regulations

Example: Det. Procedure L01DT

This is custom documentation. For more information, please visit the SAP Help Portal 361
1/31/2024

4.3.2 Assignment of Determination Strategy

Assignment of Determination Strategy for the procedure for Determining Active Legal Regulations

The detrmination strategy is valid at country level.

4.4 . Activate Legal Reg. at Country/Country Group Level.

In this activity the legal regulations are activated for the relevant services. The legal regulations are activated at country or
country group level.

IMG: SAP Global Trade Services > General Settings > Legal Regulations > Activate Legal Regulations at

Country/Country Group Level

Example: Legal reg. ACE is activated at country level US.

5 Document Structure

This activity is actually part of different SAP GTS Services e.g. Compliance management, Customs management etc. Under this
section the basic Document structure valid for activating SAP GTS Compliance management is decribed.

5.1 De ne Document Type

In this activity customs document types are de ned which will be used to replicate the document types created in feeder
system and replicated in SAP GTS system.

IMG: SAP Global Trade Services > SAP Compliance Management > General Settings > Document

Structure > De ne Document Types

Example: Document Type EXPORD (Customs Document (Export) - Sales Document Level) This document type is valid for
Exports only.

5.2 Activate Document Type

This is custom documentation. For more information, please visit the SAP Help Portal 362
1/31/2024
In this activity de ned customs document types are set-up (activated) for speci c GTS checks e.g. Embargo Check. Sanctioned
Party List Check etc.

IMG: SAP Global Trade Services > SAP Compliance Management > General Settings > Document

Structure > Activate Document Types

Example: Document Type EXPORD (Customs Document (Export) - Sales Document Level) is activated for Embargo Check
Service. Similarly one can activate the same document type for other checks i.e. Sanctioned Party List and/or Legal Control.

5.3 Assignment of Document Types from Feeder Syst.

In this activity the feeder system (SAP R/3) document types are assigned to corresponding SAP GTS Customs Document Types

IMG: SAP Global Trade Services > SAP Compliance Management > General Settings > Document Structure > Assignment of
Document Types from Feeder Systems > Assign Document Type at Feeder System Group Level > Manually Assign Document
Type

Example: Feeder System Document Type YOR is assigned to SAP GTS Customs Document Type EXPORD at Application Level
SD0A for Sales Document and feeder system Document Type LF is assigned to EXPDLV at Application Level SD0B.

5.4 De ne Item Categories

In this activity Customs Item categories are de ned. This is required to enable the replication of Item level data from feeder
system document to SAP GTS Customs document.

IMG: SAP Global Trade Services > SAP Compliance Management > General Settings > Document

Structure > De ne Item Categories

Example: The Item Cat EXORD1 represents Item on Sales Document.

5.5 Activate Item Categories

This is custom documentation. For more information, please visit the SAP Help Portal 363
1/31/2024

In this activity de ned customs item categories are set-up (activated) for speci c GTS checks e.g. Embargo Check. Sanctioned
Party List Check etc.

IMG: SAP Global Trade Services > SAP Compliance Management > General Settings > Document

Structure > Activate Item Categories

Example: Customs Item Categories EXDLV1, EXORD1, FI0A & IMORD1 are activated for Legal Control checks.

5.6 Assign Item Category from Feeder System

In this activity feeder system item categories are assigned to corresponding SAP GTS Customs Item

Category.

IMG: SAP Global Trade Services > SAP Compliance Management > General Settings > Document Structure > Assignment of
Item Categories from Feeder Systems > Assign Item Category at Feeder System Group Level > Manually Assign Item Category

Example: Feeder System Item Cat YTAN is assigned to Customs Item Category EXORD1 at Application

Level SD0A for Sales Document.

Top 5 tips to improve SAP system performance

Just thinking that a wiki page discussing SAP performance in


general terms woud be helpful for the community here.

This is custom documentation. For more information, please visit the SAP Help Portal 364
1/31/2024
You can get involved in this blog via the following SAP wiki URL:

Let's consider the available platforms that SAP can be run on,
a few are listed here. Do feel free to add to this list and share
your own experience.

SAP on DB2 for z/OS (DB2)


SAP on Informix (INF)
SAP on DB2 UDB for i5/OS (DB4)
SAP on Windows
SAP on DB2 UDB for Unix and Windows (DB6)
SAP on Linux
SAP on SQL Server
SAP on Unix
SAP on Oracle
SAP on VMware
SAP MaxDB/liveCache

I'll start this weblog by asking you in the SAP community


network wiki to post your 'Top 5' tips you use to improve SAP system performance.

Maybe they are tips and tricks you have encountered during your many years
of experience working with SAP systems or perhaps references to installations,
upgrades or general system administration experience where a performance tip
you used and now shared could help other's in the community.

From tuning your systems memory resources such as Zero Administration Memory
Management on Windows 32-bit and 64-bit platforms to indexes that do not support predicates
that contibute to high DB request time on your system database please do share
your experiences.

So, whatever platform combination your SAP system runs on let's share your
best practices, tuning, and tips and tricks for maximizing performance.

Thanks for reading and looking forward to all your replies.

SAP Network Interface (NI)

The SAP Network Interface (NI) is a part of the SAP System that represents an abstraction layer for the network interface. It
allows applications to take advantage or make use of network communication. This means that the Ni Layer will take care of
everything from establishing a connection, receiving data, sending data and also closing the connection. It also allow an
application to act as a server, so it also allows accepting incoming calls.

Wiki Documentation

Installing the saprouter as a Windows service - ntscmgr command not available

saprouter 32bit - The system cannot execute the speci ed program (on Windows)

SAP Network Interface and ACL control

SAProuter Con guration Parameters for Reverse Invoke Connections


This is custom documentation. For more information, please visit the SAP Help Portal 365
1/31/2024

SAProuter: example of Reverse Invoke con guration

How to setup and troubleshoot a saprouter reverse invoke con guration

Relevant SAP notes FAQ

30289 - SAProuter documentation Are the TCP ports used by SAP registered at
IANA
611361 - Hostnames of SAP servers
How does the host name resolving work in
SAP systems
129997 - Hostname and IP address lookup
How to nd the client of a UDS connection
799428 - Downloading SAProuter and/or
How to nd the process binding a TCP port
niping
How to limit the size of a developer trace le
1227116 - Creating network traces
How to run a long NIPING test
1472650 - Application areas of SAProuter
How to test a saprouter connection
1897597 - SAProuter: Release rollout NIPING test as proof if the network is stable

2046942 - Support encrypted passwords in What is the difference between NIPING and
saprouttab ping command

What is the meaning of the different network


2304840 - Buffer size for TCP error messages
communication sockets to improve
transmission rate

FAQ Network Interface

Client-Server Technology - Network Interface FAQ

Are the TCP ports used by SAP registered at IANA

How does the host name resolving work in SAP systems

How to nd the client of a UDS connection

How to nd the process binding a TCP port

How to limit the size of a developer trace le

How to run a long NIPING test

This is custom documentation. For more information, please visit the SAP Help Portal 366
1/31/2024

How to test a saprouter connection

NIPING test as proof if the network is stable

What is the difference between NIPING and ping command

What is the meaning of the different network error messages

This is custom documentation. For more information, please visit the SAP Help Portal 367
1/31/2024

Are the TCP ports used by SAP registered at IANA

Are the TCP ports used by SAP registered at IANA?


No. SAP systems and components need several port ranges to allow customers to implement complex and versatile system
landscapes. Unfortunately IANA does not allow registering port ranges.

How does the host name resolving work in SAP systems

How does the host name resolving work in SAP systems?


SAP uses operating system functions to resolve host names to IP addresses and vice versa. The usage of the hosts le, DNS or
other services like YP or NIS is controlled by operating system settings.
The SAP processes also have an internal cache for host names and the related IP addresses. If the host name is already cached,
the process uses this address and does not call the OS function.
You can invalidate the IP cache of all processes of one ABAP-system using transaction SM51.

Same applies to service names and port numbers.

The Hosts le standard format is de ne following the information in this link : https://wiki.scn.sap.com/wiki/x/i4IjIQ

And Guided Answer : https://ga.support.sap.com/dtp/viewer/#/tree/2661/actions/37634

How to nd the client of a UDS connection

How to nd the client of a UDS connection?

NOTE: for Linux servers only!

SAP uses UDS (UNIX Domain Sockets) communication if both the client and server processes are on the same server, through
the "sapstream" les ("/tmp/.sapstreamXXXX").

It might be required to identify the client(s) of an UDS connection.

While logged on as "root", we start by using netstat to identify the "server port" of the UDS connection:

server:~ # netstat -an|grep sapstream3201


unix 2 [ ACC ] STREAM LISTENING 61392 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 720784 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 718288 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 716834 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 716871 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 712696 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 720785 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 716968 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 716824 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 66915 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 2279796 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 718132 /tmp/.sapstream3201
unix 3 [ ] STREAM CONNECTED 718009 /tmp/.sapstream3201
server:~ #

This is custom documentation. For more information, please visit the SAP Help Portal 368
1/31/2024
The "server port" is the number to the left of the "sapstream" le.

Then, we use the "ss" command to identify the peers related to that "port". For example, using the "port" number 2279796
(columns' spacing were adjusted for clarity purposes):

server:~ # ss -a --unix -p|egrep "(Netid|2279796)"


Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
u_str ESTAB 0 0 * 2279795 * 2279796 users:(("SID_00_BT
u_str ESTAB 0 0 /tmp/.sapstream3201 2279796 * 2279795 users:(("en.sapSID
server:~ #

Notice that the "ports" can be matched:

"port" 2279795 is seen at the local address of the BTC work process 10, and at the peer address
of the Enqueue process, which is the server of the connection (and creator of the UDS /
sapstream3201).

"port" 2279796 is seen at the peer address of the BTC work process 10, and at the local address
of the Enqueue.

Important: both have "State" as "ESTAB" (established).

Conclusion:

The client of the UDS connection:

unix 3 [ ] STREAM CONNECTED 2279796 /tmp/.sapstream3201

is the work process 10.

How to nd the process binding a TCP port

How to nd the process binding a TCP port?

We have several error scenarios on which some SAP process cannot start because some other process has already bound its
TCP port.

*** ERROR => NiIBindSocket: SiBind failed for hdl 209/sock 35


(SI_EPORT_INUSE/98; I4; ST; 0.0.0.0:8080) [nixxi.cpp 3827]

This error message that can be seen in most of the component trace les, tells us that port 8000 is already being used (bound)
by another process. To nd out which process is using this port, the "netstat" tool can be used. Netstat is a command-line tool
that displays network connections (both incoming and outgoing), routing tables, and a number of network interface statistics.
Follows the procedure example on both UNIX and WINDOWS platforms:

LINUX:

> netstat -nepal|grep 8080


tcp 0 0 :::8080 :::* LISTEN 10404 18906159 7952/java

In this rst example (Linux) we see that process with PID 7952 (java) is binding TCP port 8080.

This is custom documentation. For more information, please visit the SAP Help Portal 369
1/31/2024
WINDOWS:

> netstat -nao|findstr 8080


TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 3696
TCP []:8080 []:0 LISTENING 3696

In the Windows example, we nd out that process with PID 3696 is the one binding the relevant port (8080).

It is also possible to use "netstat -ab" in Windows where it will list the process responsible to bind the port. The option "a" list all
connections and the option "b" display the executable involved.

AIX:

> netstat -Aan | grep 8000 | grep LISTEN


f1000e000130bbb8 tcp4 0 0 *.8000 *.* LISTEN
> rmsock f1000e000130bbb8 tcpcb
The socket 0xf1000e000130b808 is being held by proccess 13893704 (icman).
> ps -ef | grep 13893704
vmcadm 13893704 9175156 0 Dec 22 - 0:17 icman -attach pf=/usr/sap/VMC/SYS/profile/VMC_

SOLARIS:

> ps -ef| awk '{print $2}'| xargs -I '{}' sh -c 'echo Verifying PID {}; pfiles {} 2>/dev/null|grep
(...)
Verifying PID 3150
Verifying PID 4848
Verifying PID 4891
Verifying PID 7900
sockname: AF_INET 0.0.0.0 port: 3900
Verifying PID 4831
Verifying PID 23568
Verifying PID 7928
Verifying PID 9662
(...)
> ps -ef|grep 7900|grep -v grep
qpkadm 7900 7840 0 Jun 21 ? 1:38 ms.sapQPK_DVEBMGS00 pf=/usr/sap/QPK/SYS/profile/

The rst command will print a list with the PID of all processes that are active at the system. The port number must be adjusted
at the rst "grep" command.

The PID that is using the port will be the one immediately before the line that ends with "port: <port>" ("port: 3900" in the
example above).

The second command will show information about the process itself.

With this information, it can be decided whether this process should use this port or whether it can be stopped or recon gured
to use another port.

How to run a long NIPING test

The NIPING tool could be used to check a connection during a long life time connection.

To do this test, it is required to start NIPING as a server in one host:


This is custom documentation. For more information, please visit the SAP Help Portal 370
1/31/2024

> niping -s -I 0 -T NIPING_SERVER_TRACE

In the remote host is is required to start NIPING as a client:

> niping -c -H <server host> -X3 -B 10 -D 30 -T NIPING_CLIENT_TRACE

The option -X3 is used to a long life connection test. It will not terminate automatic, just in case of a connection broken that may
represent a problem in the network layer.

With the above con guration, every 30 seconds (-D) a package with 10 bytes (-B) will be send to the server.

How to test a saprouter connection

How to test a saprouter connection?


It is possible to validate is a connection over saprouter is working using the niping tool.
The niping must be called using the saprouter string like:

> niping -c -H /H/<saprouter IP>/S/<saprouter port>/H/<destination>/S/<destination port>


Mon Sep 7 23:20:41 2015
connect to server o.k.
*** ERROR => bytes_written <> bytes_read (1000, 14) [nixxtst.cpp 1244]

The message "connect to server o.k." means that the connection reached the destination.

NIPING test as proof if the network is stable


NIPING is not a program to random tests, there are loads of speci c options to test like package size, idle time, name
resolution, throughput, RTT and others and it is required to know what to test in order to validate if an errors exist or not. The
NIPING cannot proof is the network is really stable, free of errors or operational, because network errors may be caused by
distinct reasons and situations.
All detailed options about NIPING are available in note 500235.

What is the difference between NIPING and ping command

NIPING is not the same of a ping.


The NIPING is an SAP program to evaluate the network with speci c situations.
The ping command uses the ICMP protocol and the NIPING the TCP protocol. For this reason, the NIPING needs a client and
server communication to run network tests.
The NIPING is not delivered with the Operating System but with SAP programs and it is also available with the SAPGUI
installation.

This is custom documentation. For more information, please visit the SAP Help Portal 371
1/31/2024

What is the meaning of the different network error messages

What is the meaning of the different network error messages?

If the error occurs at the SAPGUI, you should always select "Show detailed error messages" to get more information.

Error messages can be divided into two groups:

1. Errors during connection establishment

Partner not reached - Connection refused

"Connection refused" means that the target host was reached but no process accepted the network request on the
respective target port. Target host and port are typically displayed as "<hostname>:<port>".
This error can be caused by the usage of the wrong TCP-port (sometimes presented only by the instance number, e.g. "00") or
the fact that the target server process was simply not running at that time. In rare error situations the target server process
can also somehow be blocked completely for some long time and therefore was unable to accept the network request.
Check your client connection parameter con guration and check if your target server process is running and listening to the
speci ed port.

Partner not reached - Connection timed out

The target host could not be reached within a given span of time. Possible reasons for this might be that the IP address of the
target server does not exist, the target server host is currently not running or the client could not reach the server due to a
missing route or a blocking rewall between them. Check your network and your target servers availability.

Hostname unknown - <host name> not found

This error is generated if the operating system was not able to resolve the target host name into an IP address. Check the host
name resolution on the source host.

Service unknown - <service name> not found

This error is generated if the operating system was not able to resolve the target service name into a TCP-port number. Check
the service name resolution on the source host.

2. Errors after the connection was established

Connection broken

If this error message occurs without any additional error information (see below) it just means that the remote host has closed
the connection unexpectedly. This is not necessarily an error.

Connection broken - Connection reset by peer

This error is generated by the operating system if the connection was interrupted by an incoming TCP packet with the ag bit
"RST" set.
This error can be caused by a crash of the remote program or if the remote program closed the connection without reading all
data from the network connection.
It can also be caused by a genuine "network error" like a physically interrupted connection, a faulty network device or a rewall.
On Microsoft Windows this error can have two different meanings (see "Connection broken - Connection timed out").
Check the partner program for crashes or unexpected termination.
This is custom documentation. For more information, please visit the SAP Help Portal 372
1/31/2024
Connection broken - Connection timed out

On Microsoft Windows this error is shown as "Connection reset by peer".


This error is thrown if at least one network packet was sent to the target host but not acknowledged in time. It occurs
dependent on the operating system and connection speed after 1-20 minutes.

This error can be caused by a physical network error, a rewall idle timeout or a "black hole router".

More detailed information can be found in SAP note 155147.

Check for your network between the client and the server.

How to setup and troubleshoot a saprouter reverse invoke con guration

Purpose

This Expert Content aims to show an example in how to analyze the reverse invoke communication
from a network perspective.

Overview

Reverse invoke actually had to do with idea about the server be responsible to establish connection
with the client. You should use 2 saprouters where the saprouter server will be responsible to initialize
the connection and keep a pool of connections established with the saprouter server.

The following example will follow the reverse invoke con guration example suggested in this help
documentation.

Con guring the environment

There are 2 Linux machines: client as host A and server as host B.


Saprouter will be started as reverse invoke client in host A.

HOST A

HOST B

This is custom documentation. For more information, please visit the SAP Help Portal 373
1/31/2024

As host B is the server and it will trigger the reverse invoke connection, we should start the network
dump (wireshark or tcpdump) before start the saprouter in order to capture the rst packages
transmitted.

As this is a Linux machine we will use the tcpdump to capture all packages in the TCP port 5001
(client_service port):

Start saprouter

After the start up, the saprouter creates a pool of 4 established connection with the client
(conn_pool_size option in client side) and keep these connections open.
It is possible to check using netstat command:

Network analysis

This is custom documentation. For more information, please visit the SAP Help Portal 374
1/31/2024

Open the RI.pcap dump in Wireshark to analyse the packages

Keep-Alive

This server is setup to send a keepalive every 300 seconds, see note 1410736 - TCP/IP: setting keepalive
interval

Therefore, it is expected that the Operating System sends a Keep-Alive package to the client every
300 seconds to ensure the connection. Note that the SAP has no responsibility in the Keep-Alive
packages, the saprouter just create the sockets with the SO_KEEPALIVE option and it is expected a
Keep-Alive package as you can see in the previous image. Note in the column Time that after 5
minutes of the rst connection a Keep-alive is sent and acknowledge by the client.

Related Content

Related Documents

Related SAP Notes/KBAs

1410736 - TCP/IP: setting keepalive interval

Installing the saprouter as a Windows service - ntscmgr command not available

This is custom documentation. For more information, please visit the SAP Help Portal 375
1/31/2024

Purpose

Provide an alternative to the "ntscmgr" command used to install the saprouter as a Windows service.

Overview

You are trying to install the saprouter as a Windows service by following the documentation attached
to the SAP note 30289.

At step 4, you realize that the command "ntscmgr" is not available at the Windows machine where the
saprouter is being installed.

Reason and solution

The command "ntscmgr" is delivered with the SAP kernel packages.

If there is no SAP instance installed on the server, it will not be available.

As an alternative, the following command can be used. Notice that it should be all in one line.

sc create SAPRouter binPath="DRIVE:\path\to\saprouter.exe service -r -R DRIVE:\

Related Content

Related Documents

Related SAP Notes/KBAs

SAP note 30289: SAProuter documentation

SAP note 41054: Installation of SAProuter as Windows service

SAP Network Interface and ACL control

Purpose

Concentrate the list of ACL parameters available in SAP Network Interface.

Overview

The Network Interface provide SAP services with an Access Control List feature to avoid unwanted
access to the services over network connections.
The feature intend to control access authorization for connections.

Parameter list

This is custom documentation. For more information, please visit the SAP Help Portal 376
1/31/2024

The control made by Network Interface (NI) occurs before the request reach the SAP service because
the NI layer is lower level than the services.
The following parameters are used to con gure the ACL control:

Parameter Service Description Details Documentation

rdisp/acl_ le SAP Web Access This parameter speci es the le that the link
Dispatcher Control List
for SAP GUI (ABAP) SAP Web Dispatcher uses as an
Connections access control list (ACL) for the access
authorizations for connections with SAP
GUI. If the pro le parameter is set, the
le must exist and its syntax be correct.
If this is not the case, the (ABAP) SAP
Web Dispatcher ends.

enque/server/acl_ le Enqueue Access This parameter speci es the name of an


control list
(ACL) le of access control list (ACL) le. You can
the enqueue use an ACL to con gure who is
server port
permitted to create a connection to the
enqueue server. The IP addresses of the
clients form the basis of the le.

ms/acl_info Message File with File with access authorizations for the link
Server access
control list message server If this le exists, it must
for message include all host names, domains, IP
server
addresses and/or subnetwork masks
from which application servers are
allowed to log on to the message server.

gw/acl_ le Gateway ACL This parameter speci es the name of an link


(access
control list) access control list (ACL) le. With an
le of the ACL you can con gure who is permitted
gateway
to connect to the gateway. The IP
addresses of the clients form the basis
of the le. The same ACL le is used for
the "standard" port and for the "SNC"
port of the gateway.

service/http/acl_ le Sapstartsrv ACL to Control of Web Service access in sapstartsrv link


control the
sapstartsrv
service/https/acl_ le access

This is custom documentation. For more information, please visit the SAP Help Portal 377
1/31/2024

Related Content

Related Documents

Related SAP Notes/KBAs

1495075 - Access control lists (ACL)

saprouter 32bit - The system cannot execute the speci ed program (on Windows)

Purpose

Help to execute the saprouter 32bit at a Windows 32bit server.

Overview

At a Windows 32bit server, you are trying to execute the saprouter 32bit version.

However, Windows returns the error "The system cannot execute the speci ed program".

After downloading the correct saprouter package and installing the required libraries (see the next
sections), the error will not occur.

Saprouter package for Windows 32bit

The saprouter 32bit package for Windows 32bit is listed at the SAP Marketplace Software Download
Corner as "IA32" architecture:

https://support.sap.com/swdc

Support Packages and Patches

Browse Download Catalog

Additional Components

SAPROUTER

SAPROUTER 7.21 (there is no saprouter 32bit for the release 7.42)

Windows Server on IA32 32bit

This is the correct package even for "x86_32" servers.

Microsoft C++ Runtime libraries

The saprouter 32bit requires the following Microsoft Visual C++ Runtime libraries to be executed:

This is custom documentation. For more information, please visit the SAP Help Portal 378
1/31/2024

1. Microsoft Visual C++ 2005 Redistributable Package (x86)

2. Microsoft Visual C++ 2005 SP1 Redistributable Package (x86)

3. Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package ATL Security Update

4. Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package MFC Security Update

In theory, only the package number #2 is required. You may install the other packages in order to x
security issues within the MS Visual C++ libraries.

Related Content

Related Documents

SAP Marketplace Software Download Corner

Microsoft Download Center

SAP Community blog - C-runtimes needed to run SAP executables

Related SAP Notes/KBAs

SAP note 30289: SAProuter documentation

SAP Start Service

Management

SAP MMC Snap-In

Application Server state reported by sapstartsrv

Protected web methods of sapstartsrv in kernel release 7.4x

SAP Start Service (sapstartsrv) security

sapstartsrv service parameters

sapstart parameters and options

sapstart: process restart functions

How to Start SAP as a service in Sun Solaris 10

Troubleshooting

This is custom documentation. For more information, please visit the SAP Help Portal 379
1/31/2024

Startup Troubleshooting Guide

FAIL: sapstart not found

Kernel update: referenced symbol not found, runtime de nition of the symbol was not found

SAP system shutdown by signal 2 - SIGINT

START_CALL_SICK - can't establish connection to message server

Top relevant SAP notes

897933 - Start and stop sequence for SAP systems

877795 - Problems with sapstartsrv from Release 7.00 and 6.40 patch 169

1642340 - sapcontrol SSL usage

1693245 - SAP HA Script Connector Library

2200230 - Problems with use of system PKI

202227 - Recommended login shells

Miscelaneous Info

[WEBINAR] Understanding SAP Startup Framework

F.A.Q.

How to check the sapstartsrv release and patch level?

Is the SAP integrated with High Availability solutions?

What it the goal of history.glf log le?

How to add a new system on SAP MMC?

How to read Snapshots using SAPMMC or SAP MC?

Application Server state reported by sapstartsrv

Purpose

Explain the states of Application Server reported by sapstartsrv service.

Overview

This is custom documentation. For more information, please visit the SAP Help Portal 380
1/31/2024

ABAP Application server is composite of many distinct process like:

disp+work (dispatcher and taskhandler)

gwrd (gateway)

icman (ICM)

If the normal status is GREEN, where all process are UP and running as expected and RED that means
service could not be started. There are two others status: YELLOW and GRAY.
The goal of this Expert Content is to explain what are the common situations where the status
YELLOW and GRAY are reported

The SAP instance status is provided by sapstartsrv daemon. The sapstartrv process parses the
le $(DIR_HOME)/sapstart.log to get the parent process ID (sapstart).
If sapstart.log points to wrong PIDs, no process information will be shown on sapcontrol
command GetProcessList.

Process versus status

It is possible to monitor these process status using the sapcontrol client calling the GetProcessList.

The same information is available over SAPMMC:

Process YELLOW GRAY

disp+work Length of high priority session queue exceeds a certain limit; not
running

This is custom documentation. For more information, please visit the SAP Help Portal 381
1/31/2024
Execution of the periodic taskhandler internal process exceeds a
certain limit;

Server state (inside the server list, see transaction SM51 or


SMMS) is not RUNNING, PASSIVE or SHUTDOWN

Dispatcher is not attached to the message server


gwrd gateway not running or stuck not
running

wrong
internal
states
icman ICM not running or stuck not
running

wrong
internal
states

Related Content

Related Documents

Related SAP Notes/KBAs

2787316 - sapcontrol ... GetProcessList returns incorrect processes' states

FAIL: sapstart not found

Purpose
To help with troubleshooting

Overview

The instance cannot be started by 'startsap' or 'startsap r3 <instance>' command. Following error is displayed on the screen:

[...] FAIL: sapstart not found

-------------------------------------------
<time>
startup of Instance failed [...]

The same error is reported in $HOME/startsap_<instance>.log log le (by default /home/<sid>adm/startsap_<instance>.log).


We'll check how to eliminate the issue.

This is custom documentation. For more information, please visit the SAP Help Portal 382
1/31/2024

Steps

1. Check the value of $DIR_EXECUTABLE by 'sappfpar pf=/sapmnt/<SID>/pro le/<instance_pro le> DIR_EXECUTABLE'


command.

2. Check if sapstart is available in that folder by 'ls -al <$DIR_EXECUTABLE folder>'. It won't be available.

3. Copy sapstart from $DIR_CT_RUN to $DIR_EXECUTABLE. If sapstart is not available there, download SAPEXE*.SAR or
sapstart*.sar and extract it in both $DIR_CT_RUN and $DIR_EXECUTABLE.

4. Run 'startsap' or 'startsap r3 <instance>'. It has to work.

Related Content

Related Documents

Related SAP Notes/KBAs


SAP KBA 1925379 : "FAIL: sapstart not found" , unable to start instance

How to Start SAP as a service in Sun Solaris 10

Introduction

When restarting a server in the SAP environment all services of the operating system are started automatically. So when
restarting a big SAP server it might be suitable to start the SAP systems automatically. Sun Solaris 10 gives us the ability to do
so by using the service facility, called SMF. We will use self established services to start the SAP system automatically by
creating services for the SAP system. This means we take advantage of the service framework in Sun Solaris 10 and easily
start/stop/restart the SAP system.

To demonstrate the service framework we will use an exemplary SAP system, operating on top of a MaxDB. Please note that
you can easily adopt the service to your Oracle DB.

The overview - three services

When starting a SAP system operating on top of MaxDB you have to start three components:

the X-Files

the app instance

the SAP CID / SCSI

So I decided to establish three service on my servers. The rst two services are running inside the database server zones, the
third one is running on my application server (SAP SCS and CI are running inside zones too). The aim is an automatic start of
the SAP system without interaction of the administrator.

To get a rst idea of the Sun Solaris service, please have a look into the /var/svc/manifest directory. The directory contains
manifest les from every service. Manifests are a description of a service. We will put our manifest les later on in this directory.

The X-Files service

Our rst service handles the start of the X-Server, which is a prerequisite before starting the MaxDB. So, please go to the
/var/svc/manifest/application/database directory and create a new le called xserver.xml Now we have to de ne several
This is custom documentation. For more information, please visit the SAP Help Portal 383
1/31/2024
sections in the XML le:<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">

<service_bundle type='manifest' name='xserver'>


</service_bundle> <service
name='application/database/xserver'
type='service'
version='1'> <!--
Wait for network interfaces to be initialized.
-->
<dependency
name='network'
grouping='require_all'
restart_on='none'
type='service'>
<service_fmri value='svc:/milestone/network:default' />
</dependency> <!--
Wait for all local filesystems to be mounted.
-->
<dependency
name='filesystem-local'
grouping='require_all'
restart_on='none'
type='service'>
<service_fmri value='svc://system/filesystem/local:default' />
</dependency> <dependent
name='xserver'
grouping='require_all'
restart_on='none'>
<service_fmri value='svc:/milestone/multi-user' />
</dependent>
<exec_method
type='method'
name='start'
exec='/sapdb/programs/bin/x_server/kill start'
timeout_seconds='60' /> <exec_method
type='method'
name='stop'
exec='/sapdb/programs/bin/x_server stop'
timeout_seconds='60' /> <instance name="default" enabled="true"> </in
<template>
<common_name>
<loctext xml:lang='C'>
MaxDB X-Server
</loctext>
</common_name>
</template></service></service_bundle>

Copy this code!

What does the manifest le tells us:

At rst we de ne a new XML le with the associated DTD.

Then we describe a service_bundle, which is in fact the manifest for our new service.

In the third step we de ne the service itself. The service is ordered in the application/database
tree and is named xserver.

The fourth step is about the de nition of dependencies. This means the xserver service can only
be started when the lesystem and the NIC are up and running. Moreover we assign the new
service to a milestone. This means the milestone multi user can be only reached when this
service is started.

In the exec_method tags we de ne the start and stop method for starting and stopping the X-
Server. These are the OS level commands. So, when dealing with the other service de nitions,

This is custom documentation. For more information, please visit the SAP Help Portal 384
1/31/2024

the exec_methods must contain the start and stop methods from the database and the SAP
system.

At least we de ne the instance as well as a description of our new service. the instance de nes,
that we have an instance on startup.

Now we have to import the manifest as a new service into Solaris. This can be easily done by the following command:

svccfg import /var/svc/manifest/application/database/xserver.xml

The command imports the new manifest and makes the service ready to use. Now you can start the X-Server with the new
command:

svcadm enable xserver or disable it with svcadm disable xserver

You may continue with the MaxDB service and the SAP service now. In the end you will have three services. All of these services
are going to start when the system comes up. And this is what we wanted to have on our server.

Administrate your new service

To administrate your service you need the svc* commands from Solaris. To start your service please use:

svcadm enable xserver

To disable it, use:

svcadm disable xserver

To have a look on all disabled services:

svcs -xv

To get a process ID list:

svcs -p xserver

Control your new service


To control your new service and get an idea in case of failures, please have a look into the following directory and control the log
le: /var/svc/log/xserver:default.log

MaxDB manifest

Here is the MaxDB service manifest. You have to replace the user and password in the exec_method sections.

<?xml version='1.0'?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
<service_bundle type='manifest' name='export'>
<service name='application/database/maxdb' type='service' version='0'>
<create_default_instance enabled='true'/>
<dependency name='xserver' grouping='require_all' restart_on='none' type='service'>
<service_fmri value='svc:/application/database/xserver:default'/>
</dependency>
<dependent name='maxdb' restart_on='none' grouping='require_all'>
<service_fmri value='svc:/milestone/multi-user'/>
</dependent>
<exec_method name='start' type='method' exec='/sapdb/programs/bin/dbmcli -d G00 -u user,passwor
<method_context/>
</exec_method>

This is custom documentation. For more information, please visit the SAP Help Portal 385
1/31/2024
<exec_method name='stop' type='method' exec='/sapdb/programs/bin/dbmcli -d G00 -u user,password
<method_context/>
</exec_method>
<template>
<common_name>
<loctext xml:lang='C'>MaxDB Database G00</loctext>
</common_name>
</template>
</service>
</service_bundle>

Copy this code!

SAP manifest

And here comes the SAP manifest for starting the SAP system. Please note, that the service is executed as user root, but to
re up SAP it is necessary to switch to user <sid>adm and execute the startsap command separately.

<?xml version='1.0'?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
<service_bundle type='manifest' name='export'>
<service name='application/sap' type='service' version='0'>
<create_default_instance enabled='false'/>
<dependency name='maxdb' grouping='require_all' restart_on='none' type='service'>
<service_fmri value='svc:/application/database/maxdb:default'/>
</dependency>
<exec_method name='start' type='method' exec='su - <sid>adm -c startsap R3' timeout_seconds='36
<method_context/>
</exec_method>
<exec_method name='stop' type='method' exec='su - <sid>adm -c stopsap R3' timeout_seconds='360'
<method_context/>
</exec_method>
<template>
<common_name>
<loctext xml:lang='C'>SAP System G00</loctext>
</common_name>
</template>
</service>
</service_bundle>

Copy this code!

How to troubleshooting abap instance startup failure problem

Purpose
ABAP instance can not be start up, you can follow below steps to restart and do troubleshooting.

Overview
Steps and check points during instance startup.

For Unix/Linux based instance

This is custom documentation. For more information, please visit the SAP Help Portal 386
1/31/2024
1) Clear the old processes and domain socket if exist.

1.1) Clear old sapstartsrv process

+ Check if sapstartsrv service for this instance exists.

You can run OS command,

ps -ef|grep sapstartsrv

+ If it exists, remove it with OS command,

kill -9 <PID>

Where <PID> = Process id of this sapstartsrv process.

1.2) Clear old domain sockets /tmp/.sapstream5<NN>13.

cd /tmp

ls -al

Use above commands to show all the les in /tmp

If .sapstream5<NN>13 exists, (where <NN> = instance number), manually remove it with command

rm .sapstream5<NN>13

1.3) Cleanup the shared memory segments with command

cleanipc <NN> remove

2) Ensure all the kernel executable valid.

If les are invalid, please backup executable folder, then copy a new set of kernel les from a running well instance.

The executable path be de ned by parameter DIR_EXECUTABLE, Generally, the it is /usr/sap/<SID>/<instance


name>/exe/. (Where <SID> = system ID).

3) Start sapstartsrv service for this instance.

3.1) Run below command from instance executable path

sapcontrol -nr <NN> -function StartService <SID>

3.2) Verify the sapstartsrv is started successfully

a) command in 3.1) outputs ".... start OK."

b) /tmp/5<NN>13 be created

c) run below OS command, you can see a sapstartsrv process just be created with proper instance pro le.

ps -ef|grep sapstartsrv

d) sapcontrol commands works. For example,

This is custom documentation. For more information, please visit the SAP Help Portal 387
1/31/2024
sapcontrol -nr <NN> -function GetVersionInfo

If sapstartsrv startup failed, check the sapstartsrv.log and all the logs which be generated during the startup step.

The logs can be found in work folder, which de ned by parameter DIR_HOME(generally /usr/sap/<SID>/<instance
name>/work).

If there is not any outstanding error be raised in the traces, while sapstartsrv still does not work. please add parameter
service/trace =2 in the instance pro le, then repeat step 3) to restart sapstartsrv and check the traces again.

4) Start SAP instance

Run start command from path /usr/sap/<SID>/<instance name>/exe/

sapcontrol -nr <NN> -prot NI_HTTP -function Start

After system startup, you can check the processes status with OS command.

sapcontrol -nr <NN> -function GetProcessList

If the processes are not running or get status GREY, please go to work folder and check all the latest generated trace les for
errors.

Note, please run the start command as <sid>adm user. (for example, "devadm" user is need DEV system)

Related Content

Related Documents

Related SAP Notes/KBAs

__________________________________________________________________________________________________________

Kernel update: referenced symbol not found, runtime de nition of the symbol was
not found

PurposeEdit

This is custom documentation. For more information, please visit the SAP Help Portal 388
1/31/2024
To help with troubleshoting.

Overview
After kernel change an error appears when disp+work is called, similar to these:

ld.so.1: disp+work: fatal: relocation error: le disp+work: symbol ixml_iXMLOStream_PreserveSpecialChar: referenced symbol
not found
Killed

rtld: 0712-001 Symbol getNonBoundControls__15ItsParseManagerCFiRQ2_4_STL6vectorXTiTQ2_4_STL9al locatorXTi__ was


referenced from module disp+work(), but a runtime de nition of the symbol was not found.

You want to know if the kernel les got corrupted.

Background

When disp+work is called the active folder (pwd) is not the one where disp+work is located

LIBPATH (AIX), SHLIB_PATH (HP-UX) or LD_LIBRARY_PATH (other UNIX systems) does not
point to the correct folder of disp+work

Steps for checking


1. Open a telnet session, login with <sid>adm user (in c-shell, /bin/csh)

2. Create a temporary folder , e.g.


% mkdir /var/tmp/test

3. Copy the new kernel archives in the test folder (SAPEXE*.SAR, dw*.sar), e.g.
% cd /var/tmp/test
% SAPCAR -xvf SAPEXE*.SAR

4. Modify (only for the test) the library path (LIBPATH, SHLIB_PATH, LD_LIBRARY_PATH), e.g.
% setenv LD_LIBRARY_PATH /var/tmp/test:$LD_LIBRARY_PATH
% echo $LD_LIBRARY_PATH

5. Test disp+work, e.g.


% /var/tmp/test/disp+work
This has to display among others the patch number of disp+work (and not the 'referenced symbol not found' error). In
this case the kernel has been downloaded correctly and it has to work when SAP is started

6. Copy the extracted les from the test folder above to the exe folder of SAP (/sapmnt/<SID>/exe)

7. Log off the current session before starting SAP (to clear the changes to library path)

Things to consider

Whenever a local instance is started, the sapcpe program checks the executables against those in the logically shared
directories and, if necessary, replicates them to the local instance. Executables located in /usr/sap/<SID>/SYS/exe/run
(DIR_CT_RUN, linked to /sapmnt/<SID>/exe) are replicated by sapcpe to the exe subdirectory of the instance
directories(DIR_EXECUTABLE, /usr/sap/<SID>/<instance>/exe). LIBPATH, SHLIB_PATH, LD_LIBRARY_PATH environment
variable must point to this local exe folder.

Related Content

Related Documents
SAP System Directories on UNIX
Parameters for Determining Source and Target Directories

This is custom documentation. For more information, please visit the SAP Help Portal 389
1/31/2024
Using the Start Pro le

Related SAP Notes/KBAs

SAP KBA 1878425 : kernel update: referenced symbol not found, runtime de nition of the symbol was not found

Protected web methods of sapstartsrv

Purpose
To explain the difference between two options of service/protectedwebmethods parameter.

Overview
The SAPControl Webservice interface of sapstartsrv differentiates between protected and unprotected Webservice methods.
Protected methods are executed only after a successful user authentication. This is not required for unprotected methods. The
default setting is set so that all methods that change the status of the instance or the system when called are protected.

The parameter service/protectedwebmethods determines what methods are protected. It can have two different _default_
values: DEFAULT or SDEFAULT.

DEFAULT
Old default: protect all actions that can alter the state of the instance.
It is active if service/protectedwebmethods = DEFAULT is set in startup pro le of corresponding instance.
Protected web methods are (example of kernel 753):

Bootstrap
CheckPSE
CheckUpdateSystem
Con gureLogFileList
CreatePSECredential
CreateSnapshot
DeletePSE
DeleteSnapshots
EnqRemoveLocks
EnqRemoveUserLocks
GetCallstack
GWCancelConnections
GWDeleteClients
GWDeleteConnections
HAFailoverToNode
HASetMaintenanceMode
InstanceStart
InstanceStop
J2EEControlCluster
This is custom documentation. For more information, please visit the SAP Help Portal 390
1/31/2024

J2EEControlComponents
J2EEControlProcess
J2EEDisableDbgSession
J2EEEnableDbgSession
OSExecute
RestartInstance
RestartSystem
SendSignal
SetProcessParameter
SetProcessParameter2
Shutdown
Start
StartBypassHA
StartSystem
Stop
StopBypassHA
StopService
StopSystem
StorePSE
UpdateInstancePSE
UpdateSCSInstance
UpdateSystem
UpdateSystemPKI
GetAgentCon g
GetListOfMaByCusGrp
GetMcInLocalMs
GetMtesByRequestTable
GetMtListByMtclass
InfoGetTree
MscCustomizeWrite
MscDeleteLines
MscReadCache
MsGetLocalMsInfo
MsGetMteclsInLocalMs
MtChangeStatus
MtCustomizeWrite
MtDbsetToWpsetByTid
MtDestroyMarkNTry
MteGetByToolRunstatus
MtGetAllToCust
MtGetAllToolsToSet
MtGetMteinfo
MtGetTidByName

This is custom documentation. For more information, please visit the SAP Help Portal 391
1/31/2024

MtRead
MtReset
PerfCustomizeWrite
PerfRead
PerfReadSmoothData
ReadDirectory
ReadFile
ReadPro leParameters
ReferenceRead
Register
RequestLogonFile
SnglmgsCustomizeWrite
SystemObjectSetValue
TextAttrRead
ToolGetEffective
ToolSet
ToolSetRuntimeStatus
TriggerDataCollection
Unregister
UtilAlChangeStatus
UtilMtGetAidByTid
UtilMtGetTreeLocal
UtilMtReadAll
UtilReadRawalertByAid
UtilSnglmsgReadRawdata

SDEFAULT

New default: protect almost everything, just allowing consoles to show the initial view.
It is active if service/protectedwebmethods = SDEFAULT is set in startup pro le of corresponding instance.
Protected web methods are (example of kernel 753):

ABAPAcknowledgeAlerts
ABAPCheckRFCDestinations
ABAPGetComponentList
ABAPGetSystemWPTable
ABAPGetWPTable
ABAPReadRawSyslog
ABAPReadSyslog
AnalyseLogFiles
Bootstrap
CheckParameter
CheckPSE
This is custom documentation. For more information, please visit the SAP Help Portal 392
1/31/2024

CheckUpdateSystem
Con gureLogFileList
CreatePSECredential
CreateSnapshot
DeletePSE
DeleteSnapshots
EnqGetLockTable
EnqGetStatistic
EnqRemoveLocks
EnqRemoveUserLocks
GetAccessPointList
GetAlerts
GetAlertTree
GetCallstack
GetEnvironment
GetLogFileList
GetProcessParameter
GetQueueStatistic
GetStartPro le
GetSystemUpdateList
GetTraceFile
GetVersionInfo
GWCancelConnections
GWDeleteClients
GWDeleteConnections
GWGetConnectionList
GWGetClientList
HACheckCon g
HACheckFailoverCon g
HACheckMaintenanceMode
HAFailoverToNode
HAGetFailoverCon g
HASetMaintenanceMode
ICMGetCacheEntries
ICMGetConnectionList
ICMGetProxyConnectionList
ICMGetThreadList
InstanceStart
InstanceStop
J2EEControlCluster
J2EEControlComponents
J2EEControlProcess
J2EEDisableDbgSession

This is custom documentation. For more information, please visit the SAP Help Portal 393
1/31/2024

J2EEEnableDbgSession
J2EEGetApplicationAliasList
J2EEGetCacheStatistic
J2EEGetCacheStatistic2
J2EEGetClusterMsgList
J2EEGetComponentList
J2EEGetEJBSessionList
J2EEGetProcessList
J2EEGetProcessList2
J2EEGetRemoteObjectList
J2EEGetSessionList
J2EEGetSharedTableInfo
J2EEGetThreadCallStack
J2EEGetThreadList
J2EEGetThreadList2
J2EEGetThreadTaskStack
J2EEGetVMGCHistory
J2EEGetVMGCHistory2
J2EEGetVMHeapInfo
J2EEGetWebSessionList
J2EEGetWebSessionList2
ListCon gFiles
ListDeveloperTraces
ListLogFiles
ListSnapshots
OSExecute
ParameterValue
ReadCon gFile
ReadDeveloperTrace
ReadLogFile
ReadSnapshot
RestartInstance
RestartService
RestartSystem
SendSignal
SetProcessParameter
SetProcessParameter2
ShmDetach
Shutdown
Start
StartBypassHA
StartSystem
Stop

This is custom documentation. For more information, please visit the SAP Help Portal 394
1/31/2024

StopBypassHA
StopService
StopSystem
StorePSE
UpdateInstancePSE
UpdateSCSInstance
UpdateSystem
UpdateSystemPKI
WebDispGetServerList
WebDispGetGroupList
WebDispGetVirtHostList
WebDispGetUrlPre xList
GetAgentCon g
GetListOfMaByCusGrp
GetMcInLocalMs
GetMtesByRequestTable
GetMtListByMtclass
InfoGetTree
MscCustomizeWrite
MscDeleteLines
MscReadCache
MsGetLocalMsInfo
MsGetMteclsInLocalMs
MtChangeStatus
MtCustomizeWrite
MtDbsetToWpsetByTid
MtDestroyMarkNTry
MteGetByToolRunstatus
MtGetAllToCust
MtGetAllToolsToSet
MtGetMteinfo
MtGetTidByName
MtRead
MtReset
PerfCustomizeWrite
PerfRead
PerfReadSmoothData
ReadDirectory
ReadFile
ReadPro leParameters
ReferenceRead
Register
RequestLogonFile

This is custom documentation. For more information, please visit the SAP Help Portal 395
1/31/2024

SnglmgsCustomizeWrite
SystemObjectSetValue
TextAttrRead
ToolGetEffective
ToolSet
ToolSetRuntimeStatus
TriggerDataCollection
Unregister
UtilAlChangeStatus
UtilMtGetAidByTid
UtilMtGetTreeLocal
UtilMtReadAll
UtilReadRawalertByAid
UtilSnglmsgReadRawdata

Protected webmethods
DEFAULT vs. SDEFAULT

DEFAULT SDEFAULT

ABAPAcknowledgeAlerts

ABAPCheckRFCDestinations

ABAPGetComponentList

ABAPGetSystemWPTable

ABAPGetWPTable

ABAPReadRawSyslog

ABAPReadSyslog

AnalyseLogFiles

Bootstrap Bootstrap

CheckParameter

CheckPSE CheckPSE

CheckUpdateSystem CheckUpdateSystem

Con gureLogFileList Con gureLogFileList

CreatePSECredential CreatePSECredential

CreateSnapshot CreateSnapshot

DeletePSE DeletePSE

DeleteSnapshots DeleteSnapshots

EnqGetLockTable

EnqGetStatistic

EnqRemoveLocks EnqRemoveLocks

This is custom documentation. For more information, please visit the SAP Help Portal 396
1/31/2024

EnqRemoveUserLocks EnqRemoveUserLocks

GetAccessPointList

GetAgentCon g GetAgentCon g

GetAlerts

GetAlertTree

GetCallstack GetCallstack

GetEnvironment

GetListOfMaByCusGrp GetListOfMaByCusGrp

GetLogFileList

GetMcInLocalMs GetMcInLocalMs

GetMtesByRequestTable GetMtesByRequestTable

GetMtListByMtclass GetMtListByMtclass

GetProcessParameter

GetQueueStatistic

GetStartPro le

GetSystemUpdateList

GetTraceFile

GetVersionInfo

GWCancelConnections GWCancelConnections

GWDeleteClients GWDeleteClients

GWDeleteConnections GWDeleteConnections

GWGetClientList

GWGetConnectionList

HACheckCon g

HACheckFailoverCon g

HACheckMaintenanceMode

HAFailoverToNode HAFailoverToNode

HAGetFailoverCon g

HASetMaintenanceMode HASetMaintenanceMode

ICMGetCacheEntries

ICMGetConnectionList

ICMGetProxyConnectionList

ICMGetThreadList

InfoGetTree InfoGetTree

InstanceStart InstanceStart

This is custom documentation. For more information, please visit the SAP Help Portal 397
1/31/2024

InstanceStop InstanceStop

J2EEControlCluster J2EEControlCluster

J2EEControlComponents J2EEControlComponents

J2EEControlProcess J2EEControlProcess

J2EEDisableDbgSession J2EEDisableDbgSession

J2EEEnableDbgSession J2EEEnableDbgSession

J2EEGetApplicationAliasList

J2EEGetCacheStatistic

J2EEGetCacheStatistic2

J2EEGetClusterMsgList

J2EEGetComponentList

J2EEGetEJBSessionList

J2EEGetProcessList

J2EEGetProcessList2

J2EEGetRemoteObjectList

J2EEGetSessionList

J2EEGetSharedTableInfo

J2EEGetThreadCallStack

J2EEGetThreadList

J2EEGetThreadList2

J2EEGetThreadTaskStack

J2EEGetVMGCHistory

J2EEGetVMGCHistory2

J2EEGetVMHeapInfo

J2EEGetWebSessionList

J2EEGetWebSessionList2

ListCon gFiles

ListDeveloperTraces

ListLogFiles

ListSnapshots

MscCustomizeWrite MscCustomizeWrite

MscDeleteLines MscDeleteLines

MscReadCache MscReadCache

MsGetLocalMsInfo MsGetLocalMsInfo

MsGetMteclsInLocalMs MsGetMteclsInLocalMs

This is custom documentation. For more information, please visit the SAP Help Portal 398
1/31/2024

MtChangeStatus MtChangeStatus

MtCustomizeWrite MtCustomizeWrite

MtDbsetToWpsetByTid MtDbsetToWpsetByTid

MtDestroyMarkNTry MtDestroyMarkNTry

MteGetByToolRunstatus MteGetByToolRunstatus

MtGetAllToCust MtGetAllToCust

MtGetAllToolsToSet MtGetAllToolsToSet

MtGetMteinfo MtGetMteinfo

MtGetTidByName MtGetTidByName

MtRead MtRead

MtReset MtReset

OSExecute OSExecute

ParameterValue

PerfCustomizeWrite PerfCustomizeWrite

PerfRead PerfRead

PerfReadSmoothData PerfReadSmoothData

ReadCon gFile

ReadDeveloperTrace

ReadDirectory ReadDirectory

ReadFile ReadFile

ReadLogFile

ReadPro leParameters ReadPro leParameters

ReadSnapshot

ReferenceRead ReferenceRead

Register Register

RequestLogonFile RequestLogonFile

RestartInstance RestartInstance

RestartService

RestartSystem RestartSystem

SendSignal SendSignal

SetProcessParameter SetProcessParameter

SetProcessParameter2 SetProcessParameter2

ShmDetach

Shutdown Shutdown

SnglmgsCustomizeWrite SnglmgsCustomizeWrite

This is custom documentation. For more information, please visit the SAP Help Portal 399
1/31/2024

Start Start

StartBypassHA StartBypassHA

StartSystem StartSystem

Stop Stop

StopBypassHA StopBypassHA

StopService StopService

StopSystem StopSystem

StorePSE StorePSE

SystemObjectSetValue SystemObjectSetValue

TextAttrRead TextAttrRead

ToolGetEffective ToolGetEffective

ToolSet ToolSet

ToolSetRuntimeStatus ToolSetRuntimeStatus

TriggerDataCollection TriggerDataCollection

Unregister Unregister

UpdateInstancePSE UpdateInstancePSE

UpdateSCSInstance UpdateSCSInstance

UpdateSystem UpdateSystem

UpdateSystemPKI UpdateSystemPKI

UtilAlChangeStatus UtilAlChangeStatus

UtilMtGetAidByTid UtilMtGetAidByTid

UtilMtGetTreeLocal UtilMtGetTreeLocal

UtilMtReadAll UtilMtReadAll

UtilReadRawalertByAid UtilReadRawalertByAid

UtilSnglmsgReadRawdata UtilSnglmsgReadRawdata

WebDispGetGroupList

WebDispGetServerList

WebDispGetUrlPre xList

WebDispGetVirtHostList

The way to check the current settings

The following property lists the protected web methods of corresponding instance:

property: Protected Webmethods


propertytype: Attribute
value: <list of ptotected webmethods>

This is custom documentation. For more information, please visit the SAP Help Portal 400
1/31/2024
sapcontrol -nr <instance number> -function ParameterValue service/protectedwebmethods
displays the current parameter setting, e.g.:

05.12.2017 16:57:06
ParameterValue
OK

SDEFAULT

Not protected webmethods


You want to know which webmethods are then not protected? Execute the commands:

Commands:

1. sapcontrol -nr <instance number> -function GetInstanceProperties | grep -i webmethods | grep -vi protected | tr ',' '\n' |
tr -d ' ' | sort > all.txt

2. sapcontrol -nr <instance number> -function GetInstanceProperties | grep -i webmethods | grep -i protected | tr ',' '\n' | tr
-d ' ' | sort > protected.txt

3. diff protected.txt all.txt -ywa | grep '>'

And the outcome is (in this example):

comm all.txt protected.txt -23

AccessCheck
GetInstanceProperties
GetNetworkId
GetProcessList
GetSecNetworkId
GetSystemInstanceList

The above in bold are the methods which are not protected.

Related Documents

How to use the SAPControl Web Service Interface

Related SAP Notes/KBAs

SAP Note 1439348: Extended security settings for sapstartsrv


SAP Note 927637: Web service authentication in sapstartsrv as of Release 7.00
SAP note 2493171: Information Disclosure in SAP NetWeaver Instance Agent Service

SAP MMC Snap-In


The SAP Snap-In for Microsoft Management Console (MMC) provides a graphical user interface to administer SAP systems
from Windows PCs. It is installed with any SAP application server on Windows by default. The default con guration allows you to
administer any locally installed SAP application server. As of release 45B, however, SAP MMC can manage any local or remote
application server on Windows, and as of release 6.40, application servers running on any OS platforms. SAP MMC versions are
fully backward compatible. Therefore installing the latest version is recommended and enables the latest features and xes.
Starting with release 7.10, SAP MMC is shipped as a fully self-contained standalone standard Microsoft installer package (MSI).
This makes it very easy to install it on any Windows PC.
As of release 6.40, the SAPControl web service of sapstartsrv is used to manage application servers running on any OS
platform. Releases < 6.40 SAP MMC (< 7.49) still utilize the ISAPControl DCOM interface of sapstartsrv to administer
application server running on Windows. In addition. the command line tool sapcontrol can be used to administer application
This is custom documentation. For more information, please visit the SAP Help Portal 401
1/31/2024
server via the SAPControl web service. Do you know the SAP Management Console (SAP MC)? and the SAP Management
Perspective of SAP NetWeaver Developer Studio are alternative graphical Java / Eclipse based user interfaces, providing
similar features as SAP MMC.

Download Latest SAP MMC Snap-In Released Build

Log on to SAP’s Software Center to access the download pages.


Under the following link, you will nd the latest versions of the SAP MMC Snap-In: SAP MMC Download page

SAP MMC change log

Standalone logviewer mode: As of 720 patch level 71 (SAP note 1527500) SAP MMC allows to
use the logviewer functionality for separate log les.

Data Collector Parameter: As of 720 patch level 90 (SAP note 1556121) you can specify
additional "Collector Parameter" when creating a server side snapshot, especially usefully for
MDM customers.

Logviewer Improvements: As of 720 patch level 102 (SAP note 1623165) the logviewer
functionality is greatly improved and e.g. allows to export log les in CSV format.

Extended HA support: As of 720 patch level 421 (+ corresponding sapstartsrv Version on SAP
system side) SAP MMC provides extended High Availability (HA) support in case the
corresponding HA solution support its (e.g. latest version of SAP Microsoft Cluster integration).
You can check the overall HA con guration and status using "Verify High Availability Con g"
menu, view HA solution details using "High Availability Info" menu and trigger a cluster node
move using "Move to node" button in the "HA failover instance state" popup).

Persist Pro le Parameter changes: As of 740 (+ corresponding sapstartsrv Version on SAP


system side) SAP MMC can persists pro le parameter changes in pro le using the "Persist
changes in pro le" check box on the "Parameter" popup. Please note that you should not use
this in case you also maintain pro le parameters using ABAP transaction rz10 since rz10
database pro le content will become out of sync if the pro le is edited directly on the le
systems as well .

Advanced HDB support: As of 740 (+ corresponding sapstartsrv Version on SAP system side)
SAP MMC provides separate Stop of HDB instances for Systems with integrated HDB database
instances using the "Skip HDB database instances" check box as well as HDB Database Studio
integration via "Manage Database" menu.

Pro le Parameter Documentation: As of 740 (+ corresponding sapstartsrv Version on SAP


system side) SAP MMC can display the pro le parameter documentation using the
"Documentation" button in the "Parameter" popup or "Help" button / F1 key in the "Instance
parameter" and "Startpro le" popup.

Rolling Kernel Switch (RKS): As of 741 (+ corresponding sapstartsrv Version on SAP system
side) SAP MMC supports RKS to update a Kernel without any system downtime. System
supporting RKS will show an additional "System update" node. You start a RKS procedure using
"Update system..." menu and view the RKS log using the "View update traces..." menu.

SAP Software Download Center integration: As of 741 SAP MMC lets you easily navigate to the
corresponding Kernel download of a selected SAP instance using the "Download Kernel Patch..."
menu.

SAP Syslog to Developer trace navigation: As of 742 SAP MMC lets you easily navigate form the
syslog view to the correspond dev trace via "Developer Trace" context menu of a syslog entry.

C call stack of processes: As of 742 (SAP note 1964673) you can query the call stack of all
threads of a process via "All Tasks->Callstack" menu in SAP MMC if the instance supports the
new webmethod "GetCallstack".
This is custom documentation. For more information, please visit the SAP Help Portal 402
1/31/2024

Log le analysis to Developer trace navigation: As of 743 SAP MMC lets you easily navigate form
a log le analysis (or syslog) popup view to the corresponding dev trace via "Developer Trace"
context menu on the log entry.

Start/Stop/Restart multiple instances: As of 745 patchlevel 5 and 742 patchlevel 121 SAP MMC
displays instance type column in the right side result pane on the system nodes, allows you to
select multiple instances (using shift or ctrl key + mouse click) from this list and apply a
start/stop/restart operation to all selected instances of the system.

Improved local instances detection: As of 745 patchlevel 5 SAP MMC detects local instances via
Windows service registration instead of DCOM interface registration. This allows automatic
detection of local instances even if the (deprecated) DCOM interface is not active.

Check Pro le Parameter: As of 746 (+ corresponding sapstartsrv Version on SAP system side)
SAP MMC provides a pro le parameter check via "All Tasks->Check Parameter" menu of
instance and system nodes.

Enhanced https support: As of 747 SAP MMC provides noti cation for SSL / certi cate issues
when running in https mode and allows to disable the corresponding check in SSL handshake.

Enhanced SAP Web Dispatcher support: As of 747 (+ corresponding sapstartsrv Version on SAP
system side) SAP MMC provides additional SAP Web Dispatcher monitoring via "Groups",
"Virtual Hosts" and "Url Pre xes" nodes (downport from NGAP branch).

Cleaned up Database support: As of 748 SAP MMC no longer installs any DB vendor speci c
extension snap-ins and supports latest versions of Microsoft SQL Server Management Studio.

DCOM ISAPControl interface support removed: As of 749 SAP MMC no longer uses nor
supports the deprecated DCOM interface.

ASCS online restart: As of 749 SAP MMC supports an ASCS instance restart via "Update..."
menu on the the instance node while the system remains running like it is also used within RKS.

Enqueue Replicator 2 monitoring: As of 750 SAP MMC supports monitoring of Enqueue


Replicator 2 (Locks, Statistic).

Gateway monitoring: As of 750 (+ corresponding sapstartsrv Version on SAP system side) SAP
MMC supports gateway (ABAP or standalone) monitoring (clients and connections table,
cancel/delete of clients and connections).

Con guration les access: As of 750 (+ corresponding sapstartsrv Version on SAP system side)
SAP MMC supports read access via "All Tasks->View Con guration Files..." menu to all
con guration les (Pro les, ACLs, reginfo, secinfo, ...) of the instances.

Https certi cate check: As of 749 patchlevel 14 (SAP note 2361335) and 750 SAP MMC SSL
communication problem noti cation allows you to inspect the server certi cate in detail via
"View certi cate". Via "All Tasks->Check Certi cates" you can check certi cates of single
instance, systems or even you entire system landscape.

Support of webmethod EnqGetStatistic2: As of 793, the output of the webmethod


EnqGetStatistic2, containing the statistics of ENSA2, is provided under the node "Enqueue
Statistic". Please note, that the version of the SAP Start Service must support this webmethod
as well (SAP note 3373306)

SAP MMC - Related Tools


SAP MMC automatically integrates with many SAP and third party tools to provide additional functionality like SAP logon,
remote login or Database Administration. By installing these tools on your Windows PC you can add additional functionality to
SAP MMC:

This is custom documentation. For more information, please visit the SAP Help Portal 403
1/31/2024

SAP GUI for Windows

Microsoft Remote Desktop Client

Microsoft Computer Management MMC Snap.In

Telnet client

SSH clients like putty

Hummingbird Exceed or Cygwin/X X11 Server

Microsoft SQL Server 2005/2008 Management Studio

MaxDB Database Studio

IBM DB2 Control Center

Oracle Enterprise Manager Console

Related Information

SAP note 877795, "Problems with sapstartsrv as of Release 7.00 & 6.40 patch 169"

SAP note 927637, "Web service authentication in sapstartsrv as of Release 7.00"

SAP note 995116, "Backward porting of sapstartsrv for earlier release"

How to use the SAPControl Web Service Interface

How to extend the SAP MMC SnapIn

SAP System Information in Directory Services

Microsoft Management Console - Overview

Microsoft Management Console 3.0

This is custom documentation. For more information, please visit the SAP Help Portal 404
1/31/2024

Link to File Link to File

Link to File

This is custom documentation. For more information, please visit the SAP Help Portal 405
1/31/2024

SAP Start Service (sapstartsrv) security

Purpose

Cover security related topics of the SAP Start Service, the "sapstartsrv" process.

Overview

This Expert Content page will list security related topics of the sapstartsrv process.

Protected webmethods

The parameter "service/protectedwebmethods" can be used to con gure which webmethods are
publicly available (meaning that no authentication is required) or that admin access / authentication
is required.

The SAP Note 927637 explains how this parameter works.

The parameter accepts four keywords:

NONE → all webmethods are not protected

ALL → all webmethods are protected

DEFAULT → some of the webmethods are protected and this was the default value of the
parameter on older SAP kernel versions

SDEFAULT → more methods were added to the list of protected webmethods and this is the
current default value of the parameter

This Expert Content page shows how to verify which methods are currently protected.

Restricting access to the sapstartsrv port(s)

The parameters "service/http/acl_ le" and "service/https/acl_ le" can be set pointing to a text le
containing an Access Control List (ACL), limiting which IP addresses are allowed to connect to the
sapstartsrv HTTP and HTTPS port, respectively.

The syntax of the ACL le is explained at the SAP Note 1495075.

Granting full access to additional users and groups

This is custom documentation. For more information, please visit the SAP Help Portal 406
1/31/2024

If a webmethod is not protected (see previous section), it can be called anonymously (without
authentication).

Otherwise, you must provide the password of the "SIDadm" user ID (or of a local administrator, if SAP
runs on Windows).

It is possible to grant access to additional users and groups by de ning the parameters
"service/admin_users" and/or "service/admin_groups".

A list of users/groups separated by spaces can be provided.

Con guring SSO

Admin users can also be de ned with SSO (based on X.590 client certi cate) by using the parameter
"service/sso_admin_user_X" (where "X" is a sequential number starting in zero).

The parameter's documentation can be read at the transaction RZ11.

The sapstartsrv uses the SSL server certi cate of the SAPSSLS.pse of the local instance.

Related Content

Related Documents

BC-CST Expert Content page: Protected web methods of sapstartsrv

Related SAP Notes/KBAs

SAP Note 927637: Web service authentication in sapstartsrv as of Release 7.00

SAP Note 1495075: Access control lists (ACL)

SAP Start Service - Frequently asked Questions (FAQ)

How to check the sapstartsrv release and patch level?

There are different ways to get the kernel release and patch level of sapstartsrv:

sapcontrol web method "GetVersionInfo"

110> sapcontrol -nr <instance number> -function GetVersionInfo

06.08.2015 15:09:33
GetVersionInfo
OK
Filename, VersionInfo, Time

This is custom documentation. For more information, please visit the SAP Help Portal 407
1/31/2024
/usr/sap/<SID>/ASCS01/exe/sapstartsrv, 742, patch 101, changelist 1567027, RKS compatibility level 0, optU (Mar 24 2015,
16:19:18), linuxx86_64, 2015 03 24 16:01:42

Strings command

Windows

C:\>strings sapstartsrv.exe | ndstr changelist

#[%]SAPProductVersion: 741, patch 201, changelist 1568441

UNIX

> strings sapstartsrv | grep changelist

#[%]SAPProductVersion: 742, patch 101, changelist 1567027

getsapversion command

getsapversion sapstartsrv

#File Version: 7770, 200, 30, 36697


Product Version: 777, patch 200, changelist 2002777
Platform: linuxx86_64
Special Build Description: optU (Jun 12 2020, 21:24:47)
Compatibility Level: 0

Is the SAP integrated with High Availability solutions?


Yes.

It is possible to integrate the sapstartsrv service with HA interfaces. All details and requisites are available in the following links:

SAP NetWeaver High Availability Cluster 740 Certi cation (NW-HA-CLU 740)
Important Resources about the HA-Interface Certi cation for Partners
SAP High Availability Partner Information
List of SAP Certi ed HA-Interface Partners
How to Connect SAPSTARSRV and Cluster Frameworks using the Components saphascriptco.so and
SAP_Vendor_Cluster_Connector
1693245 - SAP HA Script Connector Library

What it the goal of history.glf log le?

This le belongs to the sapstartsrv service. It is possible to nd it over DIR_HOME folder. The goal of the le is to record the
history events of some speci c sapstartsrv methods.

The execution of following methods are currently rocorded into the history.glf le:

Start

Stop2

RestartInstance

RestartService

This is custom documentation. For more information, please visit the SAP Help Portal 408
1/31/2024
StopService

StartSystem

StopSystem

RestartSystem

UpdateSystem

UpdateSCSInstance

If the log le does not exist, the sapstartsrv create it during the startup. If the le exist, however header is corrupted or in a non-
recognized way, the le is recreated by sapstartsrv. Otherwise the old le remains.

The content of the le is something similar to:

> cat history.glf

FILE_TYPE:DAAA96DE-B0FB-4c6e-AF7B-A445F5BF9BE2

ENCODING:UTF8

RECORD_SEPARATOR:10

COLUMN_SEPARATOR:9

ESC_CHARACTER:0

COLUMNS:Severity|Time|Text

SEVERITY_MAP:Info|Information|Warning|Warning|Error|Error

HEADER_END

Info 2015 09 14 23:13:26 Log le created

Info 2015 09 14 23:13:26 SAP-StartService started

Info 2015 09 14 23:16:27 Restart service by user "<user who trigger the method>" from "<IP> / <hostname>"

Info 2015 09 14 23:16:30 SAP-StartService started

How to add a new system on SAP MMC?

The SAP Snap-In for Microsoft Management Console (MMC) provides a graphical user interface to administer SAP systems
from Windows PCs. It is installed with any SAP application server on Windows by default.
The default con guration allows you to administer any locally installed SAP application server. See fully details on this Expert
Content page: SAP MMC Snap-In

In case you want to add a new system to monitor with SAP MMC, follow these steps:
- Open the SAPMMC window:

This is custom documentation. For more information, please visit the SAP Help Portal 409
1/31/2024

- Select ʻSAP System’, click on right button and Press ʻProperties’:

- Go to tab ʻFixed’ and ll areas.


System: you should enter here SystemID (SID) from the system you want to add to SAPMMC
Instance: Enter here application server hostname (<hostname>) and instance number (<$$>) for that system.
Afterwards, press ʻ>> Add >>’ and you should see that system under Fixed instance list white box.

This is custom documentation. For more information, please visit the SAP Help Portal 410
1/31/2024

Then, click OK.


- Finally, you should be able to see SAP system on SAPMMC window:

Under "Options" in the "General" tab there are "Always show local SAP instances" and "Always show all SAP instances of SAP
systems", both are enabled by default. They make it easier to use SAP MMC:

1."Always show local SAP instances" automatically add all instances running of the server where you start SAP MMC
2."Always show all SAP instances of SAP systems" will query sapstartsrv of one of the instances via "GetSystemInstanceList" for
This is custom documentation. For more information, please visit the SAP Help Portal 411
1/31/2024
a complete list of instances of the systems
This make it easier to administer huge systems or systems with varying number of instances.

The entries under a System id are the result of running : "sapcontrol -nr <instance number> -function GetSystemInstanceList"

When running this command the output is taken from le "$(DIR_GLOBAL)\sapcontrol"


Every sapstartsrv registers with its instance name in $(DIR_GLOBAL)/sapcontrol and updates its information every 60 seconds

SAP MMC can be used to perform many different administration actions over SAP system, such as Start or Stop it (click on
<SID> with right button > All Tasks).
You can also Create a Snapshot, this will collect system information and developer traces. Fully details on Note 1786182 -
CreateSnapshot: Collecting developer traces using sapcontrol

See also:
2010805 - SAP MMC common issues
2624443 - [WEBINAR] Understanding SAP Startup Framework
1788704 - sapstartsrv registration in $(DIR_GLOBAL)

How to read Snapshots using SAPMMC or SAP MC

The SAP Microsoft Management Console (MMC) Snap-In gives you the option to create snapshots (ZIP archive with Web
service responses) for support purposes that
can later be opened again "offline" using the SAP MMC.

This is custom documentation. For more information, please visit the SAP Help Portal 412
1/31/2024
Snapshots are packed as zip archives in the directory:
$(DIR_GLOBAL)/sapcontrol/snapshots
They can be extracted to a local directory and read into a graphic user interface of SAPMMC and SAP-MC using the following
menu path:
Context menu "SAP Systems" -> "All Tasks" -> "Open Snapshot”

This will take us to the directory where we saved the snapshots:

This is custom documentation. For more information, please visit the SAP Help Portal 413
1/31/2024
Then, a new “SAP Systems” tree is created with all the information from the loaded snapshot:

SNAPSHOT viewer can be found on transaction SNAPSHOTS, which contains a list of all the snapshots taken by all the
application servers.
They are created under speci c circumstances that may need analysis afterwards; such as work process crash, critical
resources on the Dispatcher, Queue standstill, or memory shortage situations, for instance.
You can see roughly what was happening in the system, which were the problems at a particular time.

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAP Startup Troubleshooting Guide for Netweaver Application Server

Purpose

This document was designed to help SAP customers to troubleshoot and resolve the majority of SAP system startup problems
own their own, minimizing the business impacts and costs attached to a standard support ticket life cycle. As time goes by, new
topics and startup error scenarios will be added to this guide. Stay tuned!

NEWS from December 2016: if SAP is running on AIX 7.1 or 7.2 and you are unable to start SAP after updating the AIX, read the
SAP note 2402207.

1. Preliminary Analysis

This initial checklist will approach mandatory settings that have proven to be root cause of startup issues in several occasions.
With this in mind, please *DO NOT* skip any phases.

1.1. IS DATABASE UP AND RUNNING?

This is absolute prerequisite for SAP SYSTEM to start. In order to test this, operating system command R3trans -d

This is custom documentation. For more information, please visit the SAP Help Portal 414
1/31/2024
can be executed (as SIDadm user). Any return code different than 0 means that DB cannot be reached by DIALOG work
processes, and so SAP system will not initiate. The following return indicates that database is up, running and reachable by SAP
work processes:

<hostname>:SIDadm > R3trans -d


This is R3trans version X.xx (release 742 - 18.11.14 - 20:14:09).
unicode enabled version
R3trans nished (0000).

There is NO POINT in moving the analysis further while the return code is different than zero.

In case the return code is different than zero, please involve your DBA/Network/OS teams.

1.2. IS SAP STARTUP SERVICE CORRECTLY DEFINED?

UNIX:

File "/usr/sap/sapservices" must contain the correct service de nitions.

LD_LIBRARY_PATH=/usr/sap/<SID>/<instance name>/exe:$LD_LIBRARY_PATH;

export LD_LIBRARY_PATH;

/usr/sap/<SID>/<instance_nr>/exe/sapstartsrv pf=/usr/sap/<SID>/SYS/pro le/<SID>_<instance_nr>_<hostname> -D -u


<SIDadm>

WINDOWS:

1. Run "services.msc";

2. Look for the relevant service SAP<SID>_<instance_nr>;

3. Check the command line assigned to it:

<DRIVE>:\usr\sap\<SID>\<instance>\exe\sapstartsrv pf=<DRIVE>:\usr\sap\<SID>\SYS\pro le\<START_PROFILE>

1.3. START PROFILES:

In order to correctly start the required processes such as message server, enqueue server and the disp+work, the SAP startup
agent (sapstartsrv) needs to nd a correct scenario for that. This scenario consists on a list of "Start_Program_<xx>"
commands that should be present an the "START" pro le (for all kernel releases up to 740) or at the "INSTANCE" pro le (kernel
release 740 onwards).

These start entries are mandatory in the pro le being used by sapstartsrv process. You can use the process list on UNIX and the
service de nition at WINDOWS to nd out what is the exactly pro le currently assigned to sapstartsrv process.

Examples:

Entries needed for starting the dispatcher + work processes:

_DW=dw.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)
Execute_0X=local rm -f $(_DW)
Execute_0X=local ln -s -f $(DIR_EXECUTABLE)/disp+work$(FT_EXE) $(_DW)
Start_Program_0X=local $(_DW) pf=$(_PF)

Example of message server start entries:

This is custom documentation. For more information, please visit the SAP Help Portal 415
1/31/2024
_MS = ms.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)
Execute_0X = local rm -f $(_MS)
Execute_0X = local ln -s -f $(DIR_EXECUTABLE)/msg_server$(FT_EXE) $(_MS)
Restart_Program_0X = local $(_MS) pf=$(_PF)

Enqueue server related start commands:

_EN = en.sap$(SAPSYSTEMNAME)_$(INSTANCE_NAME)
Execute_0X = local rm -f $(_EN)
Execute_0X = local ln -s -f $(DIR_EXECUTABLE)/enserver$(FT_EXE) $(_EN)
Restart_Program_0X = local $(_EN) pf=$(_PF)

1.4. LOGGING IN OS LEVEL DIRECTLY AS <SIDadm> USER:

It is mandatory that SIDadm user should be able to log on at operating system level *WITHOUT ANY* other prompts such as:

1. Company policies;

2. User policies;

3. Next scheduled downtimes/System news;

4. Logging in as another user and SUdoing to SIDadm;

This can cause several problems throughout different scenarios, but mainly on upgrade procedures. Further details on SAP note
1301712.

1301712 - UNIX sapstartsrv: Determining the environment

1.5: IS SAP STARTUP AGENT (SAPSTARTSRV) RUNNING?

There must be ONLY ONE sapstartsrv process running for each instance. Examples for each platform below:

Examples

As an example, we will use a centralized system with the following 03 instances running on the same host (ASCS, PAS and DI).
The following output should return for the operating system level command:

ps -ef | grep <SID> | grep sapstartsrv

(...) /usr/sap/<SID>/ASCS00/exe/sapstartsrv pf=/usr/sap/<SID>/SYS/pro le/<SID>_ASCS00_<hostname> -D


(...) /usr/sap/<SID>/DVEBMGS01/exe/sapstartsrv pf=/usr/sap/<SID>/SYS/pro le/<SID>_DVEBMGS01_<hostname> -D
(...) /usr/sap/<SID>/D02/exe/sapstartsrv pf=/usr/sap/<SID>/SYS/pro le/<SID>_D02_<hostname> -D

Pro le pattern names returned with the command can be such as


"START_<INSTANCE>_<hostname>" in older releases.

There can be another sapstartsrv process (as below) but it will play no parts in the startup of
the instance.

(...) /usr/sap/hostctrl/exe/sapstartsrv pf=/usr/sap/hostctrl/exe/host_pro le -D

When sapstartsrv service is not running you could run manually the above command for the
desired instance

If the service doesn't start and nothing it's written in "sapstartsrv.log" it might happen the
binaries are damaged in the local exe folder. In this case has to be replaced

WINDOWS:

This is custom documentation. For more information, please visit the SAP Help Portal 416
1/31/2024
1. You shoud rst con gure task manager output so it displays the command line related to the selected process:

2. Run task manager → Switch to tab "Processes" → Menu "view" → "columns" → 'PID' and 'COMMAND LINE';

3. Then using task manager tab "Processes", look for the instance sapstartsrv process with similar:

<DRIVE>:\usr\sap\<SID>\<instance>\exe\sapstartsrv pf=<DRIVE>:\usr\sap\<SID>\SYS\pro le\<START_PROFILE>

1.6. IS THERE ANY SAP PROCESS ALREADY RUNNING?

After trying to start the instance (either through the SAP MMC, the "startsap" command or using "sapcontrol ... -function
Start"), no error is returned. However, the SAP processes (Dispatcher - ABAP; jstart - Java) do not start. No trace le is
updated either.

Verify whether any process is already in "GREEN" or "YELLOW" status (e.g., the IGS).

hostname:sidadm 40> sapcontrol -nr 33 -function GetProcessList


12.10.2015 20:15:45
GetProcessList
OK

name, description, dispstatus, textstatus, starttime, elapsedtime, pid


msg_server, MessageServer, GRAY, Stopped, , , 1234
disp+work, Dispatcher, GRAY, Stopped, , , 1111
igswd_mt, IGS Watchdog, GREEN, Running, 2015 07 31 11:59:15, 1:21:09, 2323
hostname:sidadm 41>

All processes must have the "GRAY" status. Otherwise, the SAP Startup Agent (sapstartsrv) will "ignore" the start command.
Stop the instance rst, so all processes are stopped. Then, start the instance again.

1.7. PERMISSIONS:

UNIX:

"/TMP" DIRECTORY:

"/tmp" directory's permissions must match the following. The nal 't' for indicates sticky bit:

drwxrwxrwt 22 root root 4096 Apr 6 20:16 tmp

927637 - Web service authentication in sapstartsrv as of Release 7.00

SAPSTARTSRV.LOG:

This le located on "/usr/sap/<SID>/<INSTANCE>/work/" should be owned by <SIDadm> user. For speci c cases when owned
by root, sapstartsrv (running as <SIDadm> user) will not be able to access the le and thus the system will fail to start.
Following entry is seen in "/var/messages":

Unable to open trace le sapstartsrv.log. (Error 13 Permission denied)

SAPUXUSERCHECK FILE

The permissions for this le should look like this:

-rwsr-x 1 root sapsys 1293660 Apr 06 2015 sapuxuserchk

There is one SAPUXUSERCHECK le per instance (/usr/sap/<SID>/<instance>/exe) and the permissions and ownership
should look alike for all les. The following command can help tracking the les:

nd /usr/sap/<SID>/* -name sapuxuserchk

This is custom documentation. For more information, please visit the SAP Help Portal 417
1/31/2024
1.8: IP / HOSTNAME RESOLUTION:

LOCALHOST

startup commands from sapcontrol will be using "localhost" implicitly (when no "-host" option is explicitly informed) and for such
the loopback IP "127.0.0.1" should be resolved for it. What is the output for "niping -v -H localhost"? The loopback IP should be
the only one returned. If not, please involve your network team.

Lookup of hostname: localhost (NiHostToAddr) → IP-Addr.: 127.0.0.1


Lookup of IP-Addr.: 127.0.0.1 (NiAddrToHost) → Hostname: localhost

1476386 - Wrong localhost name resolution setting

HOSTNAME

What IP is resolved for the local hostname (output of OS level command niping -v -H <hostname>)? There is a known error
described in SAP note 1054467 where the loopback IP 127.0.0.1 is wrongly resolved for it.

1054467 - Local host name refers to loopback address

2. IDENTIFYING AFFECTED STAGE


This troubleshooting (starting from here) *considers TRUE* that all points from the initial checklist are done. Please keep in
mind that all of above steps were taken from real incidents and they were, in several of those cases, the required x the for the
issue resolution. The very rst question that needs to be answered is: which component/process has failed? Looking at the
image below, it is possible to nd out the sequence is which the logs will be written and therefore where the speci c component
information can be found.

The main approach is to begin for the latest updated les, based on this image's timeline. As an example, in case the work
processes traces (dev_w##) are not updated after the latest failed start attempt, then the dispatcher trace (dev_disp) needs
to be veri ed and so on.

3. DISPATCHER (dev_disp):
1. Dispatcher is usually the rst and most important trace le analyzed for startup issues

2. Most of the times the reason for the startup failure will be here.

In the dispatcher trace, we'll initially look for critical error situations, which directly contributed to the startup fail. If such
straightforward occurrences cannot be found, then we look for any situation which would, indirectly, lead to the same situation.
As an example, another component has crashed, therefore dispatcher has to shut itself down.

This is custom documentation. For more information, please visit the SAP Help Portal 418
1/31/2024

Example of error where it's possible to see the cause right away:

***LOG Q0K=> DpMsAttach, mscon ( <server_name>) [dpMessageSer 1652]


*** DP_FATAL_ERROR => DpMsAttach: local hostname '<server_name>' is resolved to loopback address (cf. SAP note 1054467
for details)
*** DISPATCHER EMERGENCY SHUTDOWN ***

Example of dispatcher startup error caused by the crash of all work processes. The very next step in this case is to check the
"dev_w#" traces and nd out what is killing the disp+work processes and, ultimately, what is the cause of the instance failure:

*** ERROR => DpHdlDeadWp: W64 (pid 1898) died (severity=0, status=65280) [dpxxwp.c 1739]
DpTraceWpStatus: child (pid=1898) exited with exit code 255
*** DP_FATAL_ERROR => DpWPCheck: no more work processes
*** DISPATCHER EMERGENCY SHUTDOWN ***

*** IMPORTANT:

--> Whenever suspicious about a dispatcher crash and the following entries are found:

DpSigInt: caught signal 2


DpHalt: shutdown server ><server>_<SID>_<instance_number> < (normal)
DpModState: change server state from ACTIVE to SHUTDOWN
DpHalt: stop work processes

Please keep in mind that a manual shut down happened. This can be proved by the "signal 2" entry and also by the "<
(normal)" sign, next to the shut-down sign.

3.1: MOST COMMON DISPATCHER CRASH SITUATIONS:

In this list we bring the most common causes for a "dispatcher crash", along with its resolution:

I. "SI_EPORT_INUSE":

These error entries are preventing the dispatcher from initialize and they are not caused by SAP but network inconsistencies.
At the time dispatcher is trying to start and bind its default port 32<instance_number> it nds that there is already a process
binding this port, thus, it aborts logging below entries:

***LOG Q0I=> NiIBindSocket: bind (10013: WSAEACCES: Permission denied) [nixxi.cpp 3740] < Problem
*** ERROR => NiIBindSocket: SiBind failed for hdl 9/sock 1292
(SI_EPORT_INUSE/10013; I4; ST; 0.0.0.0:3202) [nixxi.cpp 3740]
*** ERROR => DpCommInit: NiBufListen (rc=-4) [dpxxdisp.c 10223]
*** DP_FATAL_ERROR => DpSapEnvInit: DpCommInit
*** DISPATCHER EMERGENCY SHUTDOWN ***

This is custom documentation. For more information, please visit the SAP Help Portal 419
1/31/2024

RESOLUTION:

You must involve your network team and nd out what process is listening on port 32<instance_number> and ensure that the
dispatcher port is free at the time it is starting up. As an example, in UNIX you can try the OS command "netstat -an | grep
32<instance_number>" when searching for a process listening on that port.

II. PLATFORM PATCHNO... BUT MY PATCHNO IS:

Following error is seen for scenarios where the path release of dispatcher and message server is not the same. This can happen
for couple of reasons but the major number of occurrences is related to issues on SAPCPE which failed to copy newest les from
the GLOBAL EXE folder to the INSTANCE EXE folder, resulting in mixed releases.

*** ERROR => platform patchno is xxx [dpxxdisp.c 17170]


*** ERROR => but my patchno is yyy [dpxxdisp.c 17171]
*** DP_FATAL_ERROR => Release inconsistent with running system
*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

You must ensure that all instances are running with the same kernel release. As a potential x, you can copy manually the les
from the global "EXE" folder to the instance "EXE" folder.

III. BAD MEMORY PARAMETRIZATION:

*** ERROR => SHM2_EsCreateShared: esSHMAddSharedSegment(,userID=268641024) returned 2 [esuxshm2.c


*** ERROR => DpEmInit: EmInit (1) [dpxxdisp.c 10864]
*** ERROR => DpMemInit: DpEmInit (-1) [dpxxdisp.c 10778]
*** DP_FATAL_ERROR => DpSapEnvInit: DpMemInit
*** DISPATCHER EMERGENCY SHUTDOWN ***

OR

*** ERROR => SHM2_EsInit: invalid argument ES/SHM_MAX_SHARED_SEGS=2. Valid range is 1 ... 1d [esuxs
*** ERROR => DpEmInit: EmInit failed (1) [dpInit.c 1475]
*** ERROR => DpMemInit: DpEmInit (-1) [dpInit.c 1339]
*** DP_FATAL_ERROR => DpSapEnvInit: DpMemInit
*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

This is custom documentation. For more information, please visit the SAP Help Portal 420
1/31/2024
There are a few interconnected memory parameters that must reach each other requisites. Mainly, following SAP notes have
to be consulted:

# 1998233 - IBM i: SHM2_EsInit: invalid argument ES/SHM_MAX_SHARED_SEGS


# 1014010 - EG memory up to 32 GB (em/global_area_MB up to 32000)

And mainly those two rules should be reviewed:

ES/SHM_MAX_SHARED_SEGS <= ES/SHM_PROC_SEG_COUNT - ES/SHM_MAX_PRIV_SEGS


ES/SHM_PROC_SEG_COUNT >= ES/SHM_MAX_SHARED_SEGS + ES/SHM_MAX_PRIV_SEGS

IV. SI_EADDR_NAVAIL:

This error is commonly seen when "localhost" cannot be resolved as "127.0.0.1".

***LOG Q0I=> NiIBindSocket: bind (68: Can't assign requested address) [nixxi.cpp 3239]
*** ERROR => NiIBindSocket: SiBind failed for hdl 0 / sock 7
(SI_EADDR_NAVAIL/68; I4; DG; xx.y.zzz.ww:3200) [nixxi.cpp 3239]
*** ERROR => DpCommInit: NiDgHdlBindName failed: -16 [dpxxdisp.c 10263]
*** DP_FATAL_ERROR => DpSapEnvInit: DpCommInit
*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

See PRELIMINARY CHECKLIST above, topic [1.7] and ensure that "localhost" is resolved as loopback IP "127.0.0.1" and vice-
versa.

V. NO MORE WORK PROCESSES:

Dispatcher is shutting itself down because there are no more work processes available for processing of requests.
In order to pinpoint the cause, work processes traces have to be analyzed. Just follow the initialization entries and soon the
ERROR entries with the root cause will be seen.

*** DP_FATAL_ERROR => DpWPCheck: no more work processes


*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

Whenever this error is the root cause for a dispatcher crash, it means that in this very same trace you'll see lots of entries
related to the crash of every single work process.

This is custom documentation. For more information, please visit the SAP Help Portal 421
1/31/2024
These entries look like this:

------------------------------
*** ERROR => DpHdlDeadWp: W0 (pid 21104) died (severity=0, status=65280) [dpxxwp.c 1727]
DpTraceWpStatus: child (pid=21104) exited with exit code 255
------------------------------

We will then search in the dispatcher trace for the very rst occurrence of work process that crashed with entries similar to
the one above.
There we see that the work process 0 (zero) died. Then we need to change the investigation to the work process trace. In this
case it will be the "dev_w0", located at the work directory of the instance.

Check the "usr/sap/<SID>/<INSTANCE>/work/dev_w#" trace to nd out why work processes are being killed. Most common
cause are problems to reach/connect to database.

(FAIL TO SPOT TOPIC [1.1] FROM PRELIMINARY CHECKLIST)

VI: DISPATCHER NOT ALLOWED TO CONNECT TO MESSAGE SERVER:

*** ERROR => not allowed to connect to message server via port XXXX
[dpxxdisp.c 12175]
*** ERROR => Please check your configuration (profile parameter
rdisp/msserv_internal) [dpxxdisp.c 12176]
DpHalt: shutdown server >PTSAPT01_QS1_03< (normal)

RESOLUTION:

SAP note # 1285956 - Not allowed to connect to message server

VII: "GATEWAY COULD NOT BE STARTED":

Straightforward. Dispatcher shut down as the gateway reader could not be started.

*** ERROR => gateway (pid 29081) died [dpxxdisp.c 16872]


DpGwCheck: appc_adm.stat = 2
*** DP_FATAL_ERROR => Gateway could not be started - I better exit now

RESOLUTION:

Gateway trace le "dev_rd" should be checked for the rootcause. A very common cause is the unavailability of the gateway's
default port 33<instance_NR> during instance startup.
If this is the case, the following entries are seen in "dev_rd":

This is custom documentation. For more information, please visit the SAP Help Portal 422
1/31/2024

***LOG Q0I=> NiIBindSocket: bind (226: Address already in use) [nixxi.cpp 3738]
*** ERROR => NiIBindSocket: SiBind failed for hdl 1/sock 11
(SI_EPORT_INUSE/226; I4; ST; 0.0.0.0:3310) [nixxi.cpp 3738]

*** In this case the instance number was 10, hence "0.0.0.0:3310".
If you face the same situation, you have to involve your network/OS teams and nd out what process has already bound
the port.

VIII. Es2IResCreateShm: shmget failed:

This issue is mainly seen on SAP systems based on HP-UX servers.

*** ERROR => Es2IResCreateShm: shmget failed (size= 17980981248. Check OS kernel parameter shmmax.
*** ERROR => Es2ResCreateFiles: Es2IResCreate failed [es2xx.c 1324]
*** ERROR => Es2ResCreate: Es2ResCreateFiles failed [es2xx.c 1507]
*** ERROR => DpEmInit: Es2ResCreate (1) [dpInit.c 1642]
*** ERROR => DpMemInit: DpEmInit (-1) [dpInit.c 1417]
*** DP_FATAL_ERROR => DpSapEnvInit: DpMemInit
*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

You must correctly set the OS kernel parameters as per below SAP note:

# 172747 - SAP on HP-UX: OS kernel parameter recommendations

Below SAP notes can provide additional info as well:

# 180251 - HP-UX 64 Bit Kernel, Startup schlaegt fehlt


# 1827388 - System cannot start due to Es2IResCreate - shmget failed - File exists error

IX. MULTICAST ERROR:

This error is present only as of kernel 740. The SAP Kernel release 740 uses a multicast address at the network 224.0.0.0/24
to dispatch tasks to the work processes.
When required settings related to multicast are not in place, the instance will not start and in the "dev_disp.new" trace le,
the following entries are logged:

*** ERROR => NiISetSockOpt: SiSetSockOpt failed for hdl 1/sock 6


(SI_EADDR_NAVAIL/19; I4; DG; IPPROTO_IP-IP_ADD_MEMBERSHIP) [nixxi.cpp 9154]
*** ERROR => NiIDgHdlGroupAdm: failed to join 224.0.0.129 on interface 0.0.0.0 [nixxi.cpp 9572]
*** ERROR => RqQInit: NiDgHdlJoinGroup failed (rc=-10) [dpQueue.c 1559]
*** ERROR => DpIPCInit2: RqQInit [dpxxtool2.c 514]
*** DP_FATAL_ERROR => DpSapEnvInit: DpIPCInit2
*** DISPATCHER EMERGENCY SHUTDOWN ***

This is custom documentation. For more information, please visit the SAP Help Portal 423
1/31/2024

RESOLUTION:

--> For customers with kernel 740, the following notes guide you on how to set up multicast in a correct way:

# 1932555 - Dispatcher startup issue with SAP Kernel 740


# 1931675 - IP multicast con guration for dispatcher wakeup mechanism

--> For customers with kernel equal of higher than 741 PL 47, SAP does reccommend the usage of a new implementation
based on events.
This feature is enabled with the following parameter (which only exists as of kernel 741 PL 47):

rdisp/queue/use_events_for_dispatching=on

--> This parameter's default value is ON starting from SAP kernel 742.

X. APPLICATION SERVER'S SHARED MEMORY CORRUPTION:

*** ERROR => e=22 semop(3145913,(0,-1,6144),1) (22: Invalid argument) [semux.c 577]
*** ERROR => DpITmSlotAllocate: SemRq [dpxxtool2.c 4333]
*** ERROR => e=22 semop(3145913,(0,-1,6144),1) (22: Invalid argument) [semux.c 577]
*** DP_FATAL_ERROR => DpTmDisconnect: SemRq
*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

As these entries are related to a crash other than failed startup attempts, the resolution would be to start the instance
once again.
The easiest way to reproduce this scenario (and most common cause of the crash) is by removing the instance's IPC keys on
runtime wich, by obvious reasons, *SHOULD NOT BE DONE*.

# 1641668 - Various semop errors in workprocess traces

XI. WRONG EG (EXTENDED GLOBAL MEMORY) CONFIGURATION:

*** ERROR => EgInit: requested segment size (105327362048 bytes) too large.Max size = 34359738367 b
*** ERROR => DpEmInit: EmInit (1) [dpxxdisp.c 10757]
*** ERROR => DpMemInit: DpEmInit (-1) [dpxxdisp.c 10671]
*** DP_FATAL_ERROR => DpSapEnvInit: DpMemInit
*** DISPATCHER EMERGENCY SHUTDOWN ***

RESOLUTION:

The instance will fail to start and log the above entries in case the EG con guration is not maintained as per below SAP notes:

This is custom documentation. For more information, please visit the SAP Help Portal 424
1/31/2024

# 785365 - Extended Global Memory (EG) increased from 2 GB to 8 GB


# 1014010 - EG memory up to 32 GB (em/global_area_MB up to 32000)

Hint

By following this logic, any dispatcher related probem can be handled, even for different logged errors.

Hint

There are SAP documentation for most of the possible cases. Research on them.

04. SAPCONTROL'S INSTANCE MANAGEMENT COMMANDS

SAPSTARTSRV (through SAPCONTROL interface) offers a variety of web methods that can be used to monitor/manage the
instances of the system. They are specially useful for handling startup error scenarios. The "must-know" ones are listed below
and also the general pattern for executing them:

GetSystemInstanceList
OK
hostname, instanceNr, httpPort, httpsPort, startPriority, features, dispstatus
testserver001, 0, 50013, 50014, 3, ABAP|GATEWAY|ICMAN|IGS, GREEN
testserver001, 1, 50113, 50114, 1, MESSAGESERVER|ENQUE, GREEN
testserver001, 2, 50213, 50214, 3, ABAP|GATEWAY|ICMAN|IGS, GREEN

sapcontrol -nr <instance number> -function <web method name>

4.1: "GetSystemInstanceList":

This one returns the list of active instances for the system, along with component list and the current status.

GetSystemInstanceList
OK
hostname, instanceNr, httpPort, httpsPort, startPriority, features, dispstatus
testserver001, 0, 50013, 50014, 3, ABAP|GATEWAY|ICMAN|IGS, GREEN
testserver001, 1, 50113, 50114, 1, MESSAGESERVER|ENQUE, GREEN
testserver001, 2, 50213, 50214, 3, ABAP|GATEWAY|ICMAN|IGS, GREEN

EXPECTED OUTPUT:

- One entry per instance of the system, including ASCS, SCS INSTANCES;
- GREEN values for all entries on column "dispstatus".
- For all instances running on the same host (column hostname), there must be a differente value on "instanceNr".
This is custom documentation. For more information, please visit the SAP Help Portal 425
1/31/2024

4.2: "GetProcessList":

GetProcessList web method will bring the component list currently in place on any of the instances seen in the rst command.
It will come in handy as soon as the web method "GetSystemInstanceList" returns one instance reporting as YELLOW. This will
happen when at least one component is presenting some kind of probem, so now it is possible to check that
affected process with more details:

GetProcessList
OK
name, description, dispstatus, textstatus, starttime, elapsedtime, pid
disp+work, Dispatcher, GREEN, Running, 2015 03 23 23:51:35, 263:27:26, 25549
igswd_mt, IGS Watchdog, GREEN, Running, 2015 03 23 23:51:35, 263:27:26, 25550
gwrd, Gateway, GREEN, Running, 2015 03 23 23:51:36, 263:27:25, 25590
icman, ICM, GREEN, Running, 2015 03 23 23:51:36, 263:27:25, 25591

4.3: "GetVersionInfo":

Great for kernel consistency checks, this output will return the current kernel release + patch for each and every of
its components within the instance informed as argument in the command line.
Excluding the DB* libraries, all the remainning components of the instance must always share the same kernel and patch
release on a consistent scenario.

GetVersionInfo
OK
Filename, VersionInfo, Time
/usr/sap/WSO/DVEBMGS00/exe/sapstartsrv, 742, patch 28, changelist 1540128, RKS compatibility le
/usr/sap/WSO/DVEBMGS00/exe/disp+work, 742, patch 28, changelist 1540128, RKS compatibility leve
/usr/sap/WSO/DVEBMGS00/exe/gwrd, 742, patch 28, changelist 1540128, RKS compatibility level 0,
/usr/sap/WSO/DVEBMGS00/exe/msg_server, 742, patch 28, changelist 1540128, RKS compatibility lev
/usr/sap/WSO/DVEBMGS00/exe/dboraslib.so, 742, patch 5, changelist 1503525, RKS compatibility le
/usr/sap/WSO/DVEBMGS00/exe/dbmssslib.so, 742, patch 28, changelist 1540128, RKS compatibility l
/usr/sap/WSO/DVEBMGS00/exe/dbdb2slib.so, 742, patch 28, changelist 1540128, RKS compatibility l
/usr/sap/WSO/DVEBMGS00/exe/dbdb4slib.so, 742, patch 28, changelist 1540128, RKS compatibility l
/usr/sap/WSO/DVEBMGS00/exe/dbdb6slib.so, 742, patch 28, changelist 1540128, RKS compatibility l
/usr/sap/WSO/DVEBMGS00/exe/dbsybslib.so, 742, patch 28, changelist 1540128, RKS compatibility l
/usr/sap/WSO/DVEBMGS00/exe/enserver, 742, patch 28, changelist 1540128, RKS compatibility level
/usr/sap/WSO/DVEBMGS00/exe/icman, 742, patch 28, changelist 1540128, RKS compatibility level 0,
/usr/sap/WSO/DVEBMGS00/exe/sapwebdisp, 742, patch 28, changelist 1540128, RKS compatibility lev
/usr/sap/WSO/DVEBMGS00/exe/jcontrol, 742, patch 28, changelist 1540128, RKS compatibility level
/usr/sap/WSO/DVEBMGS00/exe/jlaunch, 742, patch 28, changelist 1540128, RKS compatibility level
/usr/sap/WSO/DVEBMGS00/exe/jstart, 742, patch 28, changelist 1540128, RKS compatibility level 0

This is custom documentation. For more information, please visit the SAP Help Portal 426
1/31/2024
EXPECTED OUTPUT:

- All entries must share the same kernel release and patch. In this case 742 patch 28 (with the exception of the ones
starting with db*).

Hint

There are hundreds of web methods available for the most diverse cases. They can be listed by typing just "sapcontrol"
command as SIDadm user.

Hint

These instance management commands can help to quickly nd out version and speci c component details.

CONCERNING THIS DOCUMENT...

The original concept of this document is that it'll be never nished. Instead, constantly improved, based on the incoming
feedback. For this reason, you are invited to share whether or not the information present here helped you to solve a startup
problem and, even more importantly, in case it didn't. In that case you are welcome to share your own scenario and inform what
was the solution applied, constraints, speci cs.

COMING SOON...

*** STARTUP issues faced during upgrade procedure...

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAP does not start

SAP system does not start.

We have received many incident reports (aka message) whose titles are “SAP system does not start”.

This is custom documentation. For more information, please visit the SAP Help Portal 427
1/31/2024
For SAP support engineers, this title has broad meanings. Since SAP system is based on the client – server technology and
consists of many processes or threads, there are many places to be checked in order to understand what the exact problem you
are facing.

What do you mean by “SAP system does not start”?

By reading the description of the incident report further, the reporters describe the situation like: “.. the users cannot logon
after restart..”, “.. the SUM tool says startup failure..”, “.. my message server didn’t come up..”, “..I cannot see OS processes..”, “..I
started my own startup scripts but nothing happened..”, and so forth.

Some of those descriptions are still quite vague, and some are quite to the point of the root cause.

First of all, please check this question:

Are Message Server, a dispatcher and work processes up and running?

Yes: -> this means that the startup of SAP system was nished successfully. It can be said that the problem is the logon itself,
and not SAP system startup. If this is the case, then please avoid using the title: “SAP system does not start”.

No: -> literally it means that SAP system DID NOT startup. Its startup sequence had some kind of problems.

Let’s have a look this startup problem further.

This wiki aims to offer troubleshooting guides for startup problems. With this guide, we hope you can analyze and solve the
problem by yourself. In some cases, you may still need to raise an incident ticket (aka message). Then, we hope you can narrow
down the problem and provide us detailed information so that we can instantly assist you.

Startup sequence

897933 - Start and stop sequence for SAP systems

In short, SAP system instances can be started up by the following sequence:

1. Database instance

2. Central instance or (A)SCS

3. Application servers (Dialog Instances)

*Database startup problem is not discussed in this wiki.

The following link explains standard methods to start SAP systems:

http://help.sap.com/saphelp_nw70ehp1/helpdata/en/47/fd7230eca159e8e10000000a421937/frameset.htm

SAP MC, SAPMMC and startsap script needs “SAP start service”:

http://help.sap.com/saphelp_nw70ehp2/helpdata/en/b3/903925c34a45e28a2861b59c3c5623/frameset.htm

As you can see from above link, many processes are involved in the startup. Among those processes, the sapstartsrv process
plays an important role of controlling a SAP instance.

The types of the processes which need to be executed in the system are declared in the instance pro le (or start pro le). Then,
the sapstartsrv process starts up the speci ed processes.

During this startup sequence, each process generates its trace le on DIR_HOME directory.

This is custom documentation. For more information, please visit the SAP Help Portal 428
1/31/2024
Common problems and solutions

Quite common problems are related to the sapstartsrv process, especially following two symptoms: “The process doesn’t exist”
and “The process exists but does not respond”.

“The process doesn’t exist”

On UNIX/LINUX, use an OS command ʻps’ to check the process:

ps –ef | grep sapstartsrv

When the process exists, the above command shows like this:

abcadm 7012358 1 0 17:39:33 -

0:05 /usr/sap/ABC/DVEBMGS00/exe/sapstartsrv pf=/usr/sap/ABC/SYS/pro le/START_DVEBMGS00_walldorf -D -u abcadm

On WINDOS, use WINDOWS’ task manager tool to see if the service is running or not.

If the sapstartsrv process doesn’t exist, please consult following SAP notes and start up.

1762827 - Startup of Instance Service failed in UNIX or Linux environment

“The sapstartsrv process exists but does not respond”

The OS command ʻPS’ or the taskmanager shows the process. But the sapstartsrv doesn’t respond to any actions. Then, most
likey, the UNIX domain socket (/tmp/.sapstream<port-no>) or Windows named pipe (\\<host>\pipe\sapcontro_<xx>) may be
broken. If it still exists, please manually delete. And start the sapstartsrv service again.

Other cases…

Case 1:

Found the following error information in the startsap.log.

exec(): 0509-036 Cannot load program disp+work because of the following

errors:

rtld: 0712-001 Symbol ixml_iXMLParser_IsNormalizingAtt was referenced

from module disp+work(), but a runtime de nition

of the symbol was not found.

rtld: 0712-001 Symbol ixml_iXMLParser_SetNormalizingAtt was referenced

from module disp+work(), but a runtime de nition

Root cause:

This is custom documentation. For more information, please visit the SAP Help Portal 429
1/31/2024
The library path was not con gured correctly after upgrade.

Solution:

Con gure the library path.

SAP Note 1265456 SAP system does not start after kernel upgrade

SAP Note 1104735 Upgrade to the new instance-speci c directory on UNIX

Case 2:

The sapstartsrv service is up but the dispatcher doesn’t startup.

sapcontrol -nr 00 -function GetProcessList

30.11.2013 18:46:21

GetProcessList

OK

name, description, dispstatus, textstatus, starttime, elapsedtime, pid

disp+work, Dispatcher, GRAY, Stopped, , , 26680

igswd_mt, IGS Watchdog, GREEN, Running, 2013 11 30 12:57:32, 5:48:49,

26681

Root cause:

The zombie process of the dispatcher existed.

Solution:

Kill the zombie process.

Case 3:

On NT, frequently failover in few minutes.

Root cause:

The version of the sapstartsrv.exe was different between DIR_CT_RUN and DIR_EXECUTABLE.

Solution:

Copy the sapstartsrv.exe from DIR_CT_RUN to DIR_EXECUTABLE.

SAP Note 1043592 MSCS: Cluster Resource Monitor Crashes on W2K3 SP2

SAP Note 1345206 Handling and preventing sapstartsrv.exe corruptions

SAP Note 1375494 SAP system does not start after applying SAP kernel patch

This is custom documentation. For more information, please visit the SAP Help Portal 430
1/31/2024
Case 4:

Startsap.log says:

(1159276) Starting: local /usr/sap/ABC/SYS/exe/run/igswd_mt -

mode=pro le pf=/usr/sap/ABC/SYS/pro le/ABC_DVEBMGS00_walldorf

(442404) Waiting for Child Processes to terminate.

(442404) **** 2010/04/10 08:07:11 Child 1155152 terminated with Status

255 . ****

(1155152) **** 2010/04/10 08:07:11 No RestartProgram command for

program 2 ****

The information above is very generic. stderr5 le shows more detailed information.

Command: /usr/sap/ABC/SYS/exe/run/igswd_mt

-mode=pro le

pf=/usr/sap/ABC/SYS/pro le/ABC_DVEBMGS00_walldorf

(1159276) **** Failed to Start Local Command. No such le or directory

Root cause:

The necessary les weren't copied correctly.

Solution:

Copy the igswd_mt to /usr/sap/ABC/SYS/exe/run

Case 5:

After kernel patching, the system doesn't come up but the startsap commands runs successful. The dispatcher was
immediately down and no

work process is active.

Stderr2 says:

(1114238) New Child Process created.

(1114238) Starting local Command:

Command: dw.sapABC_DVEBMGS01

pf=/usr/sap/ABC/SYS/pro le/ABC_DVEBMGS01_walldorf

Fri Mar 5 08:59:56 2010

This is custom documentation. For more information, please visit the SAP Help Portal 431
1/31/2024
Pro le con guration error detected, use temporary corrected setup

Shared Pool 40: ipc/shm_psize_40 = 2180000000 (too small)

Shared Pool 40: (smaller than min requirement 2186246040)

Shared Pool 40: (estimated size assumed 2190000000)

*** ERROR => Illegal ShmAdm Slot. Key=2104967296.

*** ERROR => ShmGet: Inv PoolKey=2104967296, Key=40, Flag=1, Ptr=1152921504606843304.

***

Root cause:

Shared memory area may need to be adjusted for new environment (i.e, after patching).

Solution:

Run sappfpar check pf=<pro le> and adjust ipc/shm_psize_xx to suggested values.

Case 6:

The dispatcher went down right after startup. The dev_disp shows:

rdisp/http_min_wait_dia_wp : 1 -> 1

***LOG CPS=> DpLoopInit, ICU ( 3.4 3.4 4.1) [dpxxdisp.c 1706]

***LOG Q0K=> DpMsAttach, mscon ( CLMAGMACI) [dpxxdisp.c 12674]

*** DP_FATAL_ERROR => DpMsAttach: local hostname 'SRMAGMA98' is resolved

to loopback address (cf. SAP note 1054467 for details)

*** DISPATCHER EMERGENCY SHUTDOWN ***

Root Cause

Incorrect setup of the loopback address.

Solution:

#1054467 Local host name refers to loopback address

Case 7:

This is custom documentation. For more information, please visit the SAP Help Portal 432
1/31/2024
The dispatcher went down right after startup. The dev_disp shows:

*** ERROR => gateway (pid 29622344) died [dpxxdisp.c 16763]

*** DP_FATAL_ERROR => Gateway died with status 2 - I better exit now

*** DISPATCHER EMERGENCY SHUTDOWN ***

The gateway trace dev_rd shows:

***LOG Q0I=> NiIBindSocket: bind (67: Address already in use)

[nixxi.cpp 3740]

*** ERROR => NiIBindSocket: SiBind failed for hdl 9/sock 12

(SI_EPORT_INUSE/67; I4; ST; 0.0.0.0:3300) [nixxi.cpp 3740]

***LOG S0V=> GwStopGateway, gateway stopped () [gwxxrd.c 13096]

Root Cause:

The service port 3300 was declared twice in the /etc/services le.

sapgw00 3300/tcp

sapgw00s 3300/tcp

Solutoin:

Make sure only one service is available.

sapgw00 3300/tcp

#sapgw00s 3300/tcp

Case 8:

The dispatcher went down right after startup. The dev_disp shows:

sapstart.log

This is custom documentation. For more information, please visit the SAP Help Portal 433
1/31/2024
(11925) Starting local Command:

Command: dw.sapPIP_DVEBMGS00

pf=/usr/sap/PIP/SYS/pro le/PIP_DVEBMGS00_unjspfsappip

(11856) Waiting for Child Processes to terminate.

(11856) **** 2013/09/19 10:31:13 Child 11925 terminated with Status 0 . ****

dev_disp

*** ERROR => NiDgHdlBindName: invalid hostname 'localhost' (rc=-2;hdl 1) [nixx.c 4341]

*** ERROR => DpCommInit: NiDgHdlBindName failed: -8 [dpxxdisp.c 10339]

*** DP_FATAL_ERROR => DpSapEnvInit: DpCommInit

*** DISPATCHER EMERGENCY SHUTDOWN ***

Root Cause:

“hosts” le was modi ed and “localhost” was miscon gured.

Solution:

Con gure “localhost” in the “hosts” le correctly.

Case 9:

The sapstartsrv is up.

When you execute sapcontrol without host opetion, you get: NIECON_REFUSED (WSAECONNREFUSED) error. However, it
success with -host opetion.

For example:

sapcontrol -nr 00 -function GetVersionInfo

FAIL: NIECONN_REFUSED (WSAECONNREFUSED: Connection refused),


NiRawConnect failed in plugin_fopen()

but

sapcontrol -nr 00 -host saphost.sap.co:50013 -function GetVersionInfo -> works!

Root Cause:

This is custom documentation. For more information, please visit the SAP Help Portal 434
1/31/2024
Please refer SAP Note 2062508 sapcontrol commands fail with error "NIECONN_REFUSED (WSAECONNREFUSED: Connection
refused)" during upgrade

Solution:

Comment out parameter service/hostname for the SAP start service and restart sapstartsrv.

The sapstartsrv exisits. -function GetProcessList doesn't show programs like dispatcher, gateway, etc.

In normal case, you will see something like this:

----

sapcontrol -nr 00 -function GetProcessList

GetProcessList

OK

name, description, dispstatus, textstatus, starttime, elapsedtime, pid

msg_server, MessageServer, GREEN, Running, 2014 02 25 05:45:24, 0:00:53, 7326

disp+work, Dispatcher, GREEN, Running, Message Server connection ok, Dialog Queue time: 0.00 sec, 2014 02 25 05:45:24,
0:00:53, 7327

igswd_mt, IGS Watchdog, GREEN, Running, 2014 02 25 05:45:24, 0:00:53, 7328

---

-->here, you can see programs (message server, disp+work and IGS) are up and running.

But in this problematic situation, something like....

----

sapcontrol -nr 00 -function GetProcessList

GetProcessList

OK

name, description, dispstatus, textstatus, starttime, elapsedtime, pid

----

--> No programs are listed .

This is because 'Start_Program_n' command with the program is missing in the pro le le which sapstartsrv starts with.

For this 'Start_Programm_n", please refer the following link:

This is custom documentation. For more information, please visit the SAP Help Portal 435
1/31/2024
http://help.sap.com/saphelp_nw74/helpdata/en/9c/ac0d50a40af26be10000000a423f68/frameset.htm

(NOTE!!! since kernel 74x release, 'Start Pro le' is obsolated. You cannot use 'Start Pro le' like ealier release. All the
information in Start Pro le can be marged to Instance Pro le)

After upgrading to 74x system, SAP doesn't startup.

In most cases, the reason is the sapstartsrv is pointing to Start Pro le. Start Pro le is obsolated since 74x kernel. You need to
reco gure your pro le.

Delete Start Pro le physically from 'pro le' dir.

In UNIX, adjust /usr/sap/sapservices le.

In WINDOWS, adjust the SAP service.

Delete UNIX domain socket or Window's named pipe, and restart sapstartsrv.

UNIX Domain Socket .sapstream5xx13 was not enabled...

Case 1:

sapstartsrv process exists but the corresponding UNIX Domain Socket doesn't exist.

Checki sapstartsrv.log. It ends at CCMS agent initialization phase:

cat sapstartsrv.old

---------------------------------------------------
trc le: "sapstartsrv.log", trc level: 0, release: "741"
---------------------------------------------------
pid 2134

[Thr 01] Mon Sep 15 10:09:13 2014


HistoryLog_Init: log le (/usr/sap/ABC/SCS00/work/history.glf) already exists, check parameter
No halib de ned => HA support disabled
CCMS agent initialization for instance type SCS: return code 0.

-->that's all.... sapstartsrv should initialize sapcontrol webservice....

Normally, you should see something like:

CCMS agent initialization for instance type SCS: return code 0.


CCMS agent disabled by pro le parameter ccms/enable_agent = -1.
Initializing SAPControl Webservice
Auto PSE update thread started
Starting AutoRestart thread
Starting WebService SSL thread
AutoRestart thread started
Starting WebService thread
Webservice thread started, listening on port 55013
Webservice SSL thread started, listening on port 55014

This is custom documentation. For more information, please visit the SAP Help Portal 436
1/31/2024
Webservice SSL thread using default SAP SSL credential
Trusted https connect via Unix domain socket '/tmp/.sapstream55014' enabled.
Trusted http connect via Unix domain socket '/tmp/.sapstream55013' enabled.

Root Cause:

CCMS agent has been running already by saphostcontrol.

Solution:

set ccms/enable_agent = 0 in the instance pro le.

Case 2:

A trace le called sapstartsrv_ccms.log was generated in work dir. The content of i ends with the information:

INFO: Checking lock le.....

Root Cause:

Please refer SAP note 1916333 sapcontrol error "FAIL: NIECONN_REFUSED" due to agent.log le

Solution:

set ccms/enable_agent = 0 in the instance pro le.

SAP system shutdown by signal 2 - SIGINT

Purpose
To make clear what is responsible for this kind of unexpected shutdown.

Overview

You are wondering what could be the reason of the system shutdown. Here are some steps to check it.

This is custom documentation. For more information, please visit the SAP Help Portal 437
1/31/2024

Symptom

Following entries appear in dev_disp (or after the restart dev_disp.old):

DpHalt: shutdown server >hostname_SID_nr < (normal)

Reason

This is a normal shutdown, which could be caused by:

manual calling stopsap script

calling stopsap script by cluster software (e.g. by unavailability | YELLOW / GRAY state reported
of clustered instance)

Note, that SAP sytsem won't send signal 2 to itself. This comes from outside. How this is implemented see SAP note 552324.

1) If the shutdown is called from SAPMMC, sapcontrol, stopsap or other SAP external tool, a log with "signal 2" appears
into dev_disp trace:
DpSigInt: caught signal 2
DpHalt: shutdown server >lolserver_LOL_01 < (normal)

2) If the shutdown is triggered by SMMS or even SMM51 from R3 level (SMMS : goto -> expert Functions -> servers -> shut
down server) it returns the source:
*** ERROR => DpMsgProcess: MsReceive () -> MSESHUTDOWN, partner: - [dpxxdisp.c 2595] Ű
DpMsgProcess: SHUTDOWN from - received
DpHalt: shutdown server >lolserver_LOL_01 < (normal)

Steps to check

In general usage of stopsap could be tracked:

either le auditing is con gured on operating system level (depend on the operating system
used)

or 'last' command could be used to check what user (from which terminal) was logged on - this
could be compared to the shutdown timestamp in dev_disp(.old)
analysing *.history in $HOME folder of corresponding users could be then give a hint

or there are other tricky methods, e.g. you ad following lines in stopsap (replace SID by the SAP
System ID of the affected SAP system)
whoami >> /usr/sap/SID/stopsap_logging.txt
date >> /usr/sap/SID/stopsap_logging.txt
last | grep 'still logged in' >> /usr/sap/SID/stopsap_logging.txt
who >> /usr/sap/SID/stopsap_logging.txt
echo '###' >> /usr/sap/SID/stopsap_logging.txt

Related Content

Related Documents

Starting and Stopping SAP Systems and Instances Using Commands (Unix)

Related SAP Notes/KBAs

This is custom documentation. For more information, please visit the SAP Help Portal 438
1/31/2024
SAP Note 552324: FAQs: R/3 kernel and system restart

START_CALL_SICK - can't establish connection to message server

Purpose
To help with troubleshooting if you are in trouble.

Overview

START_CALL_SICK dump appers. It refers to the following error in long test:

can't establish connection to message server on <hostname> (sapms<SID>)

You want to solve this issue.

Possible causes

message server is not running

access parameters are incorrect

rewall blocking the connection to message server

Possible resolution steps


Check whether message server process is running at all

This must be checked on the target host. This is referenced in the error message. It could be the central instance's or ASCS
instance's host.

How?

On Unix/Linux: use the command 'ps -ef | grep ms.sap' to check if message server
process exists

On Windows: use task manager and look for 'msg_server' process

If it is not running, the instance (central instance or ASCS<NR> one) must be started.
If it won't start, sapstart.log, dev_ms, stderr<XX> les must be analysed to nd the cause.

Check if hostname - IP address lookup is correct and 'niping -v -H ' returns the correct IP of target host

If not, check the name resolution on DNS by 'nslookup ' and the entries in /etc/hosts - on Windows
%windir%\system32\drivers\etc\hosts
The form of hosts entry is: <IP address> <fully quali ed hostname> (e.g. 10.10.10.11 productive.sap.com productive).
If this is the last entry on Windows add a blank line after this one otherwise it won't be recognized.

Check if sapms<SID> is know on the SAP WEB Dispatcher's host by 'niping -v -S sapms<SID>'

If it is not, add it in /etc/services - on Windows %windir%\system32\drivers\etc\services.


The form is: sapms<SID> <port nr>/tcp (e.g. sapmsPRD 3600/tcp). At least one space or tab is necesary between the port
name and port number.
If this is the last entry on Windows add a blank line after this one otherwise it won't be recognized.
This is custom documentation. For more information, please visit the SAP Help Portal 439
1/31/2024
Check if ping can reach this host by ' ping <hostname>' command.

If not, a rewall may refuse the connection. Release the port in rewall.

Related Content

Related Documents

Related SAP Notes/KBAs

SAP KBA 1952463: START_CALL_SICK - can't establish connection to message server

sapstart parameters and options

Purpose

Explain about the option supported by sapstart program responsible to the SAP Application Server
start up.

Overview

The sapstart program is responsible to trigger the startup of SAP system as per the de nitions of few
parameters into instance pro le. With SAP system < 740 kernel release there was a start pro le. The
startup pro le was abolished with 702 kernel and reiterated after that with 71X systems. Currently
with as of 740 system the start pro le are no longer used.

Parameters loaded by the program

Following the relevant parameter, this program will recognize in order to perform its activities:

SETENV_nn = It is used to setup an environment variable and the syntax should be


VARIABLE=VALUE;

Execute_nn = It is used to execute a program and its execution could be synchronous or


asynchronous;

Start_Program_nn = It is used to start up SAP related programs;

Restart_Program_nn = it is used to restart the program de ned. If for some reason a program
died due to a signal or an exit, this parameter will restart the program;

Stop_Program_nn = it is used to execute a post-shutdown program. When sapstart receives a


signal 2 (SIGINT), it enters in shutdown mode and trigger all Stop_Program_nn entries.
Stop_Program_nn is a synchronous mode call;

There are additional parameters used to a control purpose and the goal of this Expert Content is not
go to further in all of these additional parameter because they are really customizing speci c
requests.

This is custom documentation. For more information, please visit the SAP Help Portal 440
1/31/2024

The commands are executed according their sequence number (nn) and independent of their position
into pro le.

Parameters Syntax

The syntax of these entries should be:


<parameter> = <location> <commandline>

Where <location> could be immediate, local or remote-host-name, depends the parameter in use, and
<commandline> is the program to run.

immediate executes the command line synchronously and waits for termination;

local executes the command in a separate process on the local host and does not wait for
termination;

remote-host-name executes the command in a separate process on a the remote host and does
not wait for termination;

Related Content

Related Documents

sapstart: process restart functions

Related SAP Notes/KBAs

729945 Auto-restart function for processes in sapstartsrv


768727 Process automatic restart functions in sapstart
1973276 System not starting - Process List / GetProcessList does not display the list

sapstart: process restart functions

Purpose
To give an overview about enabling this function.

Overview
You can provide for high availability at process level, which will protect against software errors. You want to enable sapstart to
restart programs that it starts as soon as these programs terminate due to unknown reasons. Necessary steps.

Steps
This is custom documentation. For more information, please visit the SAP Help Portal 441
1/31/2024
Usually following entries appear in startup pro le (START_<SID>_<hostname> for releases up to 710 and
<INSTANCE>_<SID>_<hostname> for releases as of and incl. 710):

Start_Program_<XX> = local <program> <arguments>

To restart a program, you can use the following syntax in the start pro le instead:

Restart_Program_<XX> = local <program> <arguments>

By default, sapstart will immediately restart the programs. You can use the parameter Restart_Program_Delay=ss (ss in sec.)
to change this response.
If the program is restarted within 10 minutes, an internal counter is incremented. By default, sapstart no longer starts the
program as soon as this counter is larger than 5. This value can also be changed using the parameter Max_Restart_Program=nr
(where nr represents the number of restarts).

What to consider

Each time the program is restarted, the log les (stdoutX , stderrX and sapstartX.trc) are overwritten. To copy the existing
version to < le-name>_<date>_<time>.old, set the parameter log le/rotate=true in the startup pro le.

However, not only these les but sapstart.log will also be overwritten. To save sapstartsrv.log in form
sapstartsrv_<date>_<time>.old startup pro le has to be changed. Add these lines:

Unix:

Stop_Program_<XX> = local cp sapstart.log sapstart_`date +%d-%m-%Y_%H:%M:%S`.old

Windows:

Stop_Program_<XX> = local copy sapstart.log "sapstart_%date%_%time::=-%".old

Related Content

Related Documents

Related SAP Notes/KBAs

SAP Note 729945: Auto-restart function for processes in sapstartsrv


SAP Note 768727: Process automatic restart functions in sapstart

sapstartsrv service parameters

Purpose
To give an overview about the service/<parameter> parameters of sapstartsrv

Overview

What parameters are available to in uence the behavior of SAP Start Service (the sapstartsrv process)?

The parameters
1. service/admin_groups

This is custom documentation. For more information, please visit the SAP Help Portal 442
1/31/2024
2. service/admin_users

3. service/datcol_command

4. service/datcol_mandatory

5. service/datcol_timeout

6. service/halib

7. service/hardkillonshutdown

8. service/hostname

9. service/http/acl_ le

10. service/http/hostname

11. service/https/acl_ le

12. service/https/hostname

13. service/max_snapshots

14. service/norestart

15. service/porttypes

16. service/protectedwebmethods

17. service/startpriority

18. service/status_procs

19. service/trace

20. service/umask

21. service/sso_admin_user_<x>

Meaning of parameters
1. service/admin_groups
Additional OS user groups authorized for system administration (Unix only)
Speci es additional operating system user groups that are authorized to administer the system using the Web service
interface of the start service. Specify the user groups separated by spaces.

2. service/admin_users
Additional OS users authorized for system administration
Speci es additional operating system users that are authorized to administer the system using the Web service
interface of the start service. Specify the user names separated by spaces.

3. service/datcol_command
Data collector command line
Data collector command that is executed by the start service during the generation of a snapshot. This allows the data
collector to store additional artifacts in the snapshot for support purposes.

4. service/datcol_mandatory
Data collector mandatory for snapshot creation
If this parameter is activated, the successful call of the data collector is mandatory when the start service generates a
snapshot. If the data collector call fails, no snapshot is generated by the start service.

5. service/datcol_timeout
Maximum allowed runtime for data collector
Timeout for the call of a data collector when the start service is generating a snapshot. If the data collector does not exit
itself before the timeout is reached, the start service terminates it.

6. service/halib
Dynamic library for third party high availability (HA) software integration
Shared library that is to be loaded by the start service to permit integration into third-party HA software. The shared
library must ful ll the SAP HA interface speci cation. This means that the start service of an instance that is under HA
control can start or stop the instance correctly without, for example, triggering an undesired failover in the HA cluster.

7. service/hardkillonshutdown
Kill instance processes during start service stop (Microsoft Windows only)
If this parameter is activated, the start service does not stop the instance processes belonging to its instance in an

This is custom documentation. For more information, please visit the SAP Help Portal 443
1/31/2024
orderly way using a SIGINT signal, but rather hard kills them. The parameter should not be activated in general, but can
be useful in HA con guration.

8. service/hostname
Bind speci c host name or IP address for HTTP/HTTPS Web service ports
Host name or IP address to which the start service is to bind its HTTP and HTTPS port. Normally all IP addresses
(0.0.0.0) are bound. However, if the Web service interface is only to be accessible using a particular IP address, you can
specify it here.

9. service/http/acl_ le
Access control list (ACL) le of sapstartsrv HTTP port
This parameter speci es the le that the start service uses as an access control list (ACL) for the access authorizations
for connections over its HTTP port. If the pro le parameter is set, the le must exist and its syntax must be correct. If
this is not the case, the start service ends. The syntax of the ACL le is described in ACL Syntax. If the speci ed ACL le
does not exist or is contains errors, the start service ends immediately.

10. service/http/hostname
Bind speci c host name or IP address for HTTP Web service port
Host name or IP address to which the start service is to bind its HTTP port. Normally all IP addresses (0.0.0.0) are
bound. However, if the Web service interface is only to be accessible using a particular IP address over HTTP, you can
specify it here.

11. service/https/acl_ le
Access control list (ACL) le of sapstartsrv HTTPS port
This parameter speci es the le that the start service uses as an access control list (ACL) for the access authorizations
for connections over its HTTPS port. If the pro le parameter is set, the le must exist and its syntax must be correct. If
this is not the case, the start service ends. The syntax of the ACL le is described in ACL Syntax. If the speci ed ACL le
does not exist or is contains errors, the start service ends immediately.

12. service/https/hostname
Bind speci c host name or IP address for HTTPS Web service port
Host name or IP address to which the start service is to bind its HTTPS port. Normally all IP addresses (0.0.0.0) are
bound. However, if the Web service interface is only to be accessible using a particular IP address over HTTPS, you can
specify it here.

13. service/max_snapshots
Maximum number of snapshots to be archived
Maximum number of snapshots that the start service is to archive for each instance in the DIR_GLOBAL directory. If
more snapshots are generated, the oldest is deleted in each case.

14. service/norestart
Disable automatic service restart after executable update (Microsoft Windows only)
If this parameter is activated, the start service no longer restarts itself when its executable has been updated (by
sapcpe). The parameter should not be activated in general, but can be useful in HA con guration.

15. service/porttypes
Enabled Web service ports
Web service port types that are activated in the start service. Specify the port types to be activated separated by
spaces.

16. service/protectedwebmethods
Protected Web service functions requiring user authorization
Protected methods of the Web service interface of the SAP start service. Calling this method requires successful
authentication and authorization. In the simple syntax, you specify all of the methods to be protected, separated by
spaces. For example:
service/protectedwebmethods = Start Stop RestartService
In the advanced syntax, you can optionally add individual modules to or remove individual modules from one of four
different prede ned settings:
[ALL SDEFAULT DEFAULT NONE] + -<method1> + -<method2>... + -<methodN>]
The following values are possible:
ALL = All methods are protected.
SDEFAULT = Almost all methods are protected. However, an authentication-free initial display of a system in SAP
MMC/MC is still allowed, for example.
DEFAULT = Protects all methods that change the status of the system. However, authentication-free access to traces is
permitted.
NONE = No methods are protected.
We recommend the setting SDEFAULT.
Examples:
SDEFAULT -GetVersionInfo = Protects most methods, but permits authentication-free querying of the version
information.
DEFAULT +GetVersionInfo = Protects only the methods that change the status, and also the querying of the version
information.

17. service/startpriority
Instance priority during system start/stop
Start priority of the instance during system start/stop. The start service usually determines the start priority
This is custom documentation. For more information, please visit the SAP Help Portal 444
1/31/2024
automatically using the processes con gured in an instance and can therefore start or stop an entire system in the
correct sequence. Instances with the same start priority are started in parallel. Only once these are fully started is the
process continued with the next priority level (in the case of a system stop, the same applies in the reverse sequence).
To do this, the priorities are lexically compared and sorted. In exceptional cases or in the case of unknown process types
that require a particular start/stop sequence, you can manually adjust the start priority.

18. service/status_procs
Processes monitored using a status le
Speci es the process types that are to be monitored by the start service using a status le <processname>.status.
Specify the individual process types separated by spaces. The process to be monitored is responsible for generating and
updating the status le.

19. service/trace
Start service trace level
Trace level of the start service (sapstartsrv.log trace). Since the start service periodically performs a number of
monitoring operations that could potentially fail (which is not an error), the start service usually uses trace level 0 to
avoid unnecessary and easily misunderstood error messages.

20. service/umask
Set umask for all instance processes (UNIX only)
You can use service/umask to set a general le authorization mask. Specify the value in octal notation (see also umask
operating system command). It is set by the start service and sapstart at the beginning of startup, so that all processes
of an instance with this umask are started. If the value is empty, the start service and sapstart do not change the umask,
meaning that the umask vlaues with which the processes were started are used for all processes of the instance (on
UNIX, this is usually the root umask, since the start service is started as a daemon by root during the OS boot, or the
<sid>adm umask, if the start service was started from a <sid>adm shell).

21. service/sso_admin_user_<x>
Additional users authenticated by client certi cate authorized for system administration
When this parameter is set, a client certi cate can be used to authenticate for execution of protected webmethods. This
is a vector parameter in the format <parameter name>_<index>. The recognized index range starts at 0. Index gaps are
not permitted. Speci es additional users that are authenticated with X.509 certi cates and that are authorized to
administer the system using the Web service interface of the start service. Set a parameter for each user, starting with
service/sso_admin_user_0. Specify the subject DN of the respective client certi cate as the parameter value. You can
use the wildcards * and ?. Prerequisites: correct con guration of SSL on the instances of the systems with suitable
server certi cates so that the start service can provide HTTPS communication (port 5XX14) and can validate the client
certi cates, signed client certi cate must be available, issuer of client certi cate must be trusted at sapstartsrv
Example:
service/sso_admin_user_0 = CN=D??????, O=SAP-AG, C=DE
service/sso_admin_user_1 = CN=C123456, O=SAP-AG, C=DE
authorizes, for example, various D users and the user C123456.

Note: The parameters must be set in the pro le the corresponding sapstartsrv (instance, SAP Host Agent) was started with.
Usually this is the start pro le (up to release 710) or the instance pro le (as of and incl. release 710). For SAP Host Agent this is
the hostagent pro le (under /usr/sap/hostcontrol) To activate the new parameter values the sapstartsrv process must be
restarted. Not all parameters are known by every release.

Related Content

Related Documents

Related SAP Notes/KBAs

SAP Note 927637: Web service authentication in sapstartsrv as of Release 7.00


SAP Note 1495075: Access Control Lists (ACL)
SAP Note 1439348: Extended security settings for sapstartsrv
SAP Note 877795: Problems with sapstartsrv from Release 7.00 and 6.40 patch 169

SAP Tools

This Wiki page concentrate content about SAP Tools

This is custom documentation. For more information, please visit the SAP Help Portal 445
1/31/2024
Wiki Documentation

DUMPS

Exracting C-stack from core le

Extracting the C-Stack from core les (UNIX and Linux)

TRACES

Opening and downloading developer traces

TROUBLESHOOT

STATDUMP Report

CCMS Syslog

sappfpar to analyse formula de ned parameters and additional features

DISPATCHER

Display Snapshot Monitoring

DPMON Dispatcher Monitor

ICM and WEB DISPATCHER

Change SAP Web Dispatcher pro le parameter dynamically via wdispmon

ICMON and WDISPMON Monitors

ENQUEUE

Enqueue performance analysis with enqt

Changing the trace level of the standalone enqueue dynamically - ENSA1

Relevant SAP notes FAQ

This is custom documentation. For more information, please visit the SAP Help Portal 446
1/31/2024

MESSAGE SERVER

636938 - Description of msprot test


program

DUMPS

1559353 - How to capture user dumps on


Windows

1964673 - C-Call stack analysis

CCMS Syslog

Purpose
The purpose of this paper is to explain about the SAP syslog concept.

Overview

The main topic of this wiki is to explain about the syslog structure for every ABAP application server.

1. Syslog memory area

Every SAP application server has a shared memory segment called Shared Common System Area (SCSA) to store the main
syslog con guration like the write pointer for the syslog le.

A SAP Application Server running in an UNIX Operating System family (HP-UX, AIX, Linux, etc) create the SCSA area with the
external tool called sapmscsa during the start up. For Windows Operating System that area is created by the kernel itself
during the start up.

It is possible to check this area with the showipc (for UNIX systems) or sappfpar command line as below.

> showipc 01 | grep SCSA


OsKey: 58900101 0x0382be85 SCSA Shared Memory Key: 58900000 Size: 4096 0.0 MB Att: 21

Copy this code!

> sappfpar check pf=<instance profile> | grep SCSA


Key: 58900101 Size: 4096 ( 0.0 MB) SCSA area

Copy this code!

This is custom documentation. For more information, please visit the SAP Help Portal 447
1/31/2024
For Windows OS, it is possible to check this area from SAPGUI with the report RSTUNSHM.

If the Application Server, or any other program that wants to create syslog messages, cannot attach the SCSA shared memory
area, it may not be able to work with the SAP syslog structure.
This area is needed to allow the creation of logs into the syslog structure. The SAP note 12715 could help to understand this
memory area troubleshooting in such cases.

12715 Collective note: problems with SCSA

2. Syslog format
Length of syslog format depends of the system:

NON-UNICODE UNICODE

180 360

As of release 7.02 a new length is de ned:

NON-UNICODE UNICODE

320 640

For further information about this size, check note 1118986.

1118986 Syslog: Record size increased to 320 places

3. How to check the syslog messages


a) SM21

The syslog messages are created by the kernel and stored at Operating System le con gured in the parameter rslg/local/ le
(SLOGXX where the XX is the instance number). The size of this le is limited by rslg/max_diskspace_local
For further information about these les, check the notes 862 and 45580.

862 Reduce size of system log le

45580 How are syslog les deleted?

It is possible to check the system logs stored in these les via transaction SM21 from SAPGUI connection.

This is custom documentation. For more information, please visit the SAP Help Portal 448
1/31/2024

The syslog also has option in the menu bar:

The Local system log shows the logs for the connected application server.

b. Operating System level

The Web Services method also enables an option to analyse the syslog from Operating System level with the sapcontrol toll:

sapcontrol --nr <instance number> -function ABAPReadSyslog

Copy this code!

c. Alert Monitor

Another way to analyse these system log messages is via transaction RZ20.

-> SAP CCMS Monitor Templates


-> Syslog

For further information check the SAP documentation

Syslog Monitor

This is custom documentation. For more information, please visit the SAP Help Portal 449
1/31/2024

4. Creating syslog messages

It is possible to create syslog messages with the ABAP Function Module RSLG_WRITE_SYSLOG_ENTRY. Calling this Function
Module from transaction SM37 and provide with the needed data to be recorded in the syslog. The minimum information to the
Function be executed with success are: DATA_WORD1, SL_MESSAGE_AREA and SL_MESSAGE_SUBID.

In this example, the DATA_WORD1 is the text that will be displayed in the syslog
messages. SL_MESSAGE_AREA and SL_MESSAGE_SUBID came from Syslog Message Maintenance transaction. Below a
example of code to use the Function Module RSLG_WRITE_SYSLOG_ENTRY:

call function 'RSLG_WRITE_SYSLOG_ENTRY'


exporting sl_message_area = 'AU'
sl_message_subid = '3'
data_word1 = 'my program with RSLG_WRITE_SYSLOG_ENTRY'.

Copy this code!

Below is the output in syslog of this call:

Another way to create syslog messages is with the kernel function C_WRITE_SYSLOG_ENTRY. The syntax is quite similar and
the input also the same. Below an example:

CALL 'C_WRITE_SYSLOG_ENTRY' ID 'TYP' FIELD ' '


ID 'KEY' FIELD 'AU3'
ID 'DATA' FIELD 'my program with C_WRITE_SYSLOG_ENTRY'.

Copy this code!

For reference:
5462 Writing SysLog entries from within ABAP/4 programs

Related Content

Related Documents
Syslog Monitor

Related Notes
12715 Collective note: problems with SCSA

17108 Shared memory still present, startup fails

1118986 Syslog: Record size increased to 320 places

This is custom documentation. For more information, please visit the SAP Help Portal 450
1/31/2024
862 Reduce size of system log le

45580 How are syslog les deleted?

1041390 SM21: Central system log via HTTP or HTTPS

1578411 Syslog: Changes as of Basis Release 7.02

5462 Writing SysLog entries from within ABAP/4 programs

Display Snapshot Monitoring

Purpose

This Expert Content describes the /SDF/MON report and how this can help the troubleshooting
process.

Overview

Some SAP troubleshooting process require a clear picture about the system behavior with
information about the infrastructure like OS and SAP resources. This clear picture should not be
cluttered information or just single point information. This analysis should engage the resources
situation ahead of the time of the issue and throughout the course of the problem. For this purpose
the /SDF/MON report helps to collect all of these details.

The tool

The main purpose of this report is to collect snapshots of monitoring detail and store these details
for later analysis. There are available SAP speci c data like work process status, dispatcher queue,
sessions, RFCs, Enqueue and also OS speci c details like process at OS level, memory and CPU
consumption by process.

The rst step required is to schedule the execution of the report, for this purpose is it required to run
the transaction /SDF/MON or over SE38 with the same name.

In the following screen, choose the option “Schedule New Monitoring”

In the next window, it is time to de ne what are the options collected in each snapshot triggered:

This is custom documentation. For more information, please visit the SAP Help Portal 451
1/31/2024

List of work process (SM50) = output of SM50;

CPU time per workprocess = corresponding CPU consumption is collected;

SQL statements = information about running SQL statements is collected if this is a ORACLE DB.
This option can consume a large amount of data;

Store Reference to ABAP Source = the corresponding ABAP source will be collected for SQL
Statements. Supported by ORACLE;

Dispatcher Queue = Information about the queues of dispatcher (DIA, UPD, etc). Data from SM51 ->
Goto -> Information -> Queue Information;

CPU and Paging Activity = Data from SAPOSCOL about the hardware resources consumption from
OS level;

Top CPU Processes = CPU consumption from OS process level. Data from SAPOSCOL;

Ext. and Heap Mem = Memory areas from SAP level. Data from ST02;

Memory per Modes = Memory overview from user sessions. Data from SM04;

This is custom documentation. For more information, please visit the SAP Help Portal 452
1/31/2024

Free RFC WPs = the sum of dialog work processes that are available for RFC Server group processing.
Data from SARFC;

Statistical Records = This information is not available to SAP BASIS releases > 7.0.

Enqueue Entries = Store Enqueue table data. This is the same information available in SM12 list of
locks.

Enqueue Statistics = Same information from SM12 -> Extras -> Statistics;

Inbound queues = Collect statistical information from table TRFCQIN;

Outbound queues = Collect statistical information from table TRFCQOUT;

SAPOSCOL destination = A destination for which ST06 related data can be collected (CPU and Paging
Activity &Top CPU Processes) from an external server.

Analysing shapshots

In the main window of the program, it is possible to search by a speci c Analysis or list all analysis
clicking in Execute. In the list, you do nd all recorded analysis.

By double-click on the selected analysis a new window is open with all snapshots de ned in the time
interval.

Each column available may forward you to speci c details about the data collected. Click in speci c
columns a new window is open with the speci ed details:

This is custom documentation. For more information, please visit the SAP Help Portal 453
1/31/2024

To analyze Enqueue speci c details or Inbound or outbound queues it is required to open the option in
the menu Goto -> Choose “Enqueue Entries”, “Enqueue statistics”, “Outbound queue” or “Inbound
queue” by selection a “Global Data” in the grid that is only record every time con gured on setting
“Every N time(s)”.

Navigation

This is custom documentation. For more information, please visit the SAP Help Portal 454
1/31/2024

Reports involved

/SDF/MON_START: Start the analysis with a set of parameters

/SDF/MON: Display and delete analyses

/SDF/MON_REORG: Delete obsolete analyses when expiration date is exceeded – to be scheduled as


background job

/SDF/MON_STOP: Stop running analyses immediately

/SDF/MON_START_CM: Schedule a continuous monitoring Report

Charts

There are prede ned charts using the option “Choose Layout” a graph from the monitoring time is
created as per the choose layout

This is custom documentation. For more information, please visit the SAP Help Portal 455
1/31/2024

This is an example of CPU pro le graph where the “user CPU” vs “System CPU” is created.

It is also possible to create customized charts. To create charts it is required to select the desired
information in the Monitor Data window:

This is custom documentation. For more information, please visit the SAP Help Portal 456
1/31/2024

Related Content

Related Documents

1449409 /SDF/MON generates <defunct> processes


1922426 Adjustments /SDF/MON
1674173 ST-PI 2008_1_* SP06: Enhancements in functionality

Related SAP Notes/KBAs

Unable to render {include} The included page could not be found.

Exracting C-stack from core le

This is custom documentation. For more information, please visit the SAP Help Portal 457
1/31/2024

Purpose
To help with troubleshooting.

Overview
When a core le is created on OS level one necessary step of troubleshooting is to extract the call stack (also known as C-stack)
from core le. The core le is not readable with a text editor and therefore you need to use built in OS tools (debuggers) to nd
this information. We'll check what are the necessary steps and tools.

Necessary steps

1. Locate the core le. In an SAP application it is usually written in /usr/sap/<SID>/<instance>/work folder.

2. Check the format of core le:


what <path/to/core>/<core le>
e.g.: what /usr/sap/ABC/DVEBMGS00/work/core

3. Determine what executable created the core


le <path/to/core>/<core le>
e.g.: le /usr/sap/ABC/DVEBMGS00/work/core

4. Debug the core


<debugger> <triggering executable> <core le>

5. e.g. dbx /usr/sap/ABC/DVEBMGS00/exe/disp+work /usr/sap/ABC/DVEBMGS00/work/core

Available debuggers and their usage


Debuggers:

HPUX: adb

AIX: dbx

SUN: dbx, adb, pstack

LINUX: gdb

Usage:

Getting a backtrace from a coredump

UNIX Debugger Translation Table -> see Helpful Links

Related Content

Related Documents

Getting a backtrace from a coredump

UNIX Debugger Translation Table

Related SAP Notes/KBAs

625271: AIX call stack denoted as corrupted in trace les

2162346: SYSTEM_CORE_DUMP : How to analyze it

This is custom documentation. For more information, please visit the SAP Help Portal 458
1/31/2024
Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Extracting the C-Stack from core les (UNIX and Linux)

Purpose

Provide the steps to extract the C-Stack from "core" les in various UNIX/Linux systems.

Overview

This page will list the steps required to extract the C-Stack from "core" les in different UNIX and Linux systems.

Executing the debugger

All debuggers mentioned on this WIKI have the same initial command.

<debugger> </path/to/triggering executable> </path/to/core le>

For example, using the adb debugger to analyze a "core" le created by the "disp+work" process of the instance DVEBMGS00 of
the TST system:

adb /usr/sap/TST/DVEBMGS00/exe/disp+work /usr/sap/TST/DVEBMGS00/work/core

Debuggers available at UNIX/Linux

This section will list the debuggers available at each system.

Operating System Available debugger

HPUX adb

AIX dbx

SUN dbx, adb

SINIX, RELIANT dbx

LINUX gdb

Commands for adb

Once at the adb prompt, type $c

and press enter (the entry must really be "dollar c").

This will display the C-Stack.

To exit the debugger type $q

and press enter.

Commands for dbx

This is custom documentation. For more information, please visit the SAP Help Portal 459
1/31/2024
Once at the dbx prompt, type where

where and press enter.

This will display the C-Stack.

To exit the debugger type quit

and press enter.

Commands for gdb

Once at the gdb prompt, type bt

and press enter.

This will display the C-Stack.

To exit the debugger type quit

and press enter.

Related Content

Related SAP Notes/KBAs

2162346 - SYSTEM_CORE_DUMP : How to analyze it

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Opening and downloading developer traces

Purpose

To troubleshoot a Netweaver issue, the developer traces are the most important requirement. This
Wiki explains how to nd and how to download them.

Overview

The most usual traces are:

Trace le name Service

This is custom documentation. For more information, please visit the SAP Help Portal 460
1/31/2024
dev_disp Dispatcher

dev_w<number> Work Process

dev_ms Message Server

dev_rd Gateway

dev_rfc<number> RFC trace

dev_icm ICM

dev_enq* Enqueue

There are additional traces like std* and *start* traces that are also important to some speci c
situations.

How to nd it

There are few ways to access these traces, for example:

1) From Operating System level in work folder (/usr/sap/<SID>/</instance/work);

2) Transaction AL11 -> DIR_HOME;

3) SM50 -> OKcode write "w<number>" or "dp"


where <number> represent the work process number to open the WP trace;
dp stands to dispatcher;

4) Transaction SE38 -> rsbdcos0


Command line actions like "cat dev_disp" or "more dev_disp" (Windows);

5) Using transactions SMGW, SMICM or SMMS to open gateway, ICM or Message Servers traces
respectively;

6) Using SAPMMC
Click in the instance name -> "Process List" -> on the right side the SAP services will appears,
select the service and right mouse click -> "Developer trace"
To Open a Work Process trace, click in "AS ABAP WP Table" -> select the work process and right
mouse click -> "Developer trace"

How to download traces

1) Work Process trace:


From SM50 -> Select the WP -> Administration -> Trace -> save as local le

This is custom documentation. For more information, please visit the SAP Help Portal 461
1/31/2024

Dispatcher trace:
From SM50 -> Administration -> Trace -> Dispatcher -> save as local le

Gateway:
SMGW -> Goto -> Trace -> Gateway -> Save as local le

ICM:
SMICM -> Goto -> Trace le -> Save Locally

2) When displaying the trace le, %pc to save it .

3) Creating a snapshot as per note 1786182


1786182 - CreateSnapshot: Collecting developer traces using sapcontrol

4) The report RSMON000_DOWNLOAD_TRACES


This report could be one of the best option to Download all relevant traces

RSMON000_DOWNLOAD_TRACES

Go to transaction SE38 and run the report RSMON000_DOWNLOAD_TRACES.

1) To download all relevant traces from work folder, mark the check box:

"Dispatcher"
"Work Process Trace File(s)" and select all work process types
"(save related RFC les)"
"Message Server Trace File"
"Gateway Trace File"
"ICM trace File"
"Save Old Trace Files Too"
"Compress Files First"

This is custom documentation. For more information, please visit the SAP Help Portal 462
1/31/2024

2) Click F8

3) Select the path to save the traces

Related Content

Related Documents

Related SAP Notes/KBAs

1786182 - CreateSnapshot: Collecting developer traces using sapcontrol

112 - Trace and error information in the "dev_" les

STATDUMP Report

Purpose

Help you to understand the STATDUMP report functionalities in order to support statistical analysis in the SAP system.

Overview

This is custom documentation. For more information, please visit the SAP Help Portal 463
1/31/2024
This page contains information about the STATDUMP report and the functionalities available on it, aiming to provide more
details about the statistics in the SAP system.

The STATDUMP Report


The STATDUMP report can be used to access the stat les created by the work processes directly, allowing you to lter the
content of the les by different criterias, similarly to the STAD initial screen. The statistics shown with the report STATDUMP are
the same than the ones shown in STAD, however, in a different format. In the below image you can see the initial screen of the
STATDUMP report, where the selections can be performed.

As shown above, the STATDUMP reports allows you to search for statistical records with the following criterias:

From the Start of File - The selection will be shown from the start of the current stat le being
written by the SAP kernel.

From End of File - The selection will be shown from the end of the current stat le being written
by the SAP kernel.

Search for User - The selection will be performed in all the stat les available in the stat les
path, based on the SAP user informed.

From Record Number - The selection will be performed as from the record number speci ed in
this eld.

From Date/Time - The selection will be performed based on the date and time speci ed.

Statistical Record Sections

Depending of the type of the statistical record (HTTP, RFC, Dialog or others) different sections will be shown for this statistic
record when displayed by the STATDUMP report. Some of the sections will always be displayed, as you can see below.

This is custom documentation. For more information, please visit the SAP Help Portal 464
1/31/2024
1. Statistical Record Header - This section shows the basic information about the statistical record, which includes the
start date and time and end date and time of the statistical record. Main statistical information such as response time,
user and report are also displayed in this section.

2. Statistical Record Database Usage - This section shows details about the database related operations during the
exection of the step which generated the statistical record. It includes read, inserts, updates, deletes and other relevant
database operations details. The time taken for each of the different operation types is also speci ed.

3. Statistical Record Memory Usage - This section shows memory usage details of the statistical record. It shows the total
memory used, the heap memory used, roll and paging memory details. This section is used for memory management
related analysis.

4. Statistical Record Other Details - This section complements the statistical record header section, bringing technical
details for the statistical record such as record type, context id, transaction name, number of RFC or HTTP call created.

This is custom documentation. For more information, please visit the SAP Help Portal 465
1/31/2024

Besides the main sections explained above, you can nd extra sections depending of the type of statistical record you are
displaying. There are extra sections for spool, RFC, HTTP, extended password, between other details. You can nd examples
below with the description for each one of them.

1. Statistical Records for RFC Requests - This section provides all technical details from the RFC perspective to the
statistical record. The information contained here includes the caller and destination instance of the RFC call, the
function module name used for the call, the duration of the call, the program responsible for it and also the client,
between other important details.

This is custom documentation. For more information, please visit the SAP Help Portal 466
1/31/2024
2. Statistical Records for HTTP Requests - This section provides all technical details from the HTTP perspective to the
statistical record. The information contained in this section includes the caller instance, the target host and port of the
request, the connection id, the URL path, the program and also the time taken for the processing of the call.

3. Statistical Records for DB Connection - This section provides all the technical and statistical details about the database
connection performed during the execution of this step, including the number of operations performed and their
duration, separated by type.

This is custom documentation. For more information, please visit the SAP Help Portal 467
1/31/2024
4. Statistical Records for Extended Passport Information - This section provides all the technical and statistical details
about the Extended Passport information of this step. This section is specially useful when the request was created in
another system, allowing the request origin to be identi ed. It includes details about the action performed with user,
client, context id, and other relevant details for analysis.

5. Statistical Records for Spool Requests - This section provides the technical and statistical details about the spool
processing, in case the request included one, providing duration details, and information about the type and mode used.

Comparing the STATDUMP report structure with the STAD transaction, both of them will provide the same information,
however, organized in a different way. In STAD, when the session does not have information to be shown, it will be reported an
empty session showing "No spool subrecords for this record", in case of Spool, for example.

Related Content

Related Documents

How to use STAD to show historical data


This is custom documentation. For more information, please visit the SAP Help Portal 468
1/31/2024
STAD - Business Transaction Analysis

sappfpar to analyse formula de ned parameters and additional features

Purpose

The goal of this Wiki is to explain the usage of sappfpar to analyse the formula based parameters and
the current size in use by each parameter.

Overview

With the advent of 74X kernel, the SAP support arithmetic formula based parameters. See details int
further information this documentation:

The Kernel also is de ning some parameters with default values based in formulas, if not overwritten
by manually setting in pro les. The formula based parameters intends to de ne the most accurate
possible size to each parameters. Due to situations where the parameters are manually set to short
sizes (less appropriated), it is recommended to keep the kernel de ning the size of each parameter
based in its current formula instead of a wrongly set to size lower than the expected by the Kernel.

In order to check the divergences between the size expected by a formula and the de ned size, we can
use the sappfpar tool.

Examples

check_formula

This is custom documentation. For more information, please visit the SAP Help Portal 469
1/31/2024

The rst part of the output there are INFORMATION with the formula that the parameter is expected
and a WARNING is the parameter if manually set in the pro le.

The second part of the output there is the list of parameters what are not following the expected size
de ned by the formula.

At the end, the summary of warnings and errors found.

There are additional nice option in sappfpar like:

check_unknown: to point unknown parameters

check_metadata: to point unknown parameters

check_rede nition: duplicated parameters

Related Content
This is custom documentation. For more information, please visit the SAP Help Portal 470
1/31/2024

Related Documents

Related SAP Notes/KBAs

SAP Update System

Management

Con guring Update Server Group

Monitoring Update Resources Using CCMS Infrastructure

Reports RSM13001 / RSM13002: description of the functions available

Deletion of update requests

Troubleshooting

Processing pending V3 update requests

Updates requests in status 'Init'

Oracle Errors that automatically deactivate the SAP update mechanism

Top relevant SAP notes

1510367 - Re-processing failed update records via SM13

671037 - Update records in INIT status without R/3 locks

F.A.Q.

What are the tables involved in the update process?

What does the update status mean?

What does V1 and V2 update mean?

What update requests can be re-posted?

Con guring Update Server Group


This is custom documentation. For more information, please visit the SAP Help Portal 471
1/31/2024

Purpose

The purpose of this document is to assist with the update server group con guration.

Solution

The update server group could be con gured as the following steps in SM14.
------------------------------------
1) Transaction SM14
2) Click on Create Group
3) Enter Server Group = the name you decide
4) Enter DB Instance = Name of the DB Host name (The parameter rsdb/dbhost which takes the
value from the parameter SAPDBHOST)
5) Update Table - VBHDR = VBHDR
VBMOD = VBMOD
VBDATA = VBDATA
------------------------------------

After you con gured the Server groups in SM14, the system will work as the following.
Suppose the con guration is as following.

There are 3 instances which are APP1, APP2 and APP3.


I have created an update group and include APP1 and APP2 to this group.
APP3 is out of groups, therefore belongs to the global dispatching.

Then

This is custom documentation. For more information, please visit the SAP Help Portal 472
1/31/2024

All updates requests made in APP1 will be dispatcher to APP1 and APP2.
All updates requests made in APP2 will be dispatcher to APP1 and APP2.
Update requests made in APP3 will be processed only by APP3 because APP1 and APP2 do not
belongs to the global dispatching.

Related SAP Notes

SAP Note 2138677 - SM13, SM14: maintenance of server groups missing

SAP Note 116335 - High number of update requests

Parameter 'rdisp/vb_included_server', provides a list of SAP update servers to be used to process


updates in accordance with load balancing principles. Update servers that do not appear in the list are
not given updates to process.
The fact that the application server appears as DEACTIVATED on SM14 depends on the value of this
parameter 'rdisp/vb_included_server' >on the machine< you're currently logged on.

Deletion of update requests

Purpose

In case you have update requests remaining on SM13 transaction, you may want to know what can be done with them.

Deletion of update requests

By default, updates which have nished successfully are deleted after execution has correctly ended. This is done due to
parameter rdisp/vb_delete_after_execution (default value is 1), which determines whether update requests are deleted after
they have been successfully executed. That means, that updates remaining on SM13 did not ended up correctly, due to different
reasons.

What should be done with those updates?

1) Check with corresponding application team why did this update failed.

This is custom documentation. For more information, please visit the SAP Help Portal 473
1/31/2024
More information about the update failure can be found on Update Header (Goto > update Header):

Status information (in this case, Update was terminated) and UD Ret. Code (9 for this example) may be different, depending on
the update “Status”.
Error details section provide deeper explanation about the root cause.

Involve application team to analyze the root cause for the update failure, and ensure it’s solved accordingly.
Once this step has been completed, what will happen to those updates remaining on SM13?

2) Can those updates be re-processed?

Refer to Note: 1510367 - Re-processing failed update records via SM13

Scenarios when "Repeat Update" is not possible:

Update record with status "Error(no retry)" ("STOP" icon in SM13)

Update record with stauts "Stopped(no retry)"

Update records generated from "Batch Input" or "CALL TRANSACTION"

Update records with status "Error" and "Enqueue released"

In those cases, it’s needed to involve colleagues from application area to check what can be done with those pending updates.
They cannot be re-processed from SM13.

Once all the relevant information has been collected; and root cause of the update failure has been identi ed; you may decide to
delete those update requests remaining.

3) Can they be deleted?


Parameter rdisp/vbdelete

This parameter speci es the duration in days after which an update request is deleted. After this duration, has expired, the
update requests are deleted irrespective of their status.
When the application server restarts, it checks all the update requests remaining older than parameter rdisp/vbdelete. Default
value is 50; which means that remaining update requests will be deleted, if they are pending for more than 50 days, counting
since server restart.

Delete updates manually from sm13

In case you need to delete those updates before those 50 days (by default) have passed, they can be manually deleted from
SM13.

This is custom documentation. For more information, please visit the SAP Help Portal 474
1/31/2024
(Select the update request, then Menu Update Requests > Delete)

Report RSM13002 (DELETE set to X).

It can be scheduled in the background with the parameter DELETE = X, to avoid the update tables becoming too large. Or, it can
be manually executed.

Related Content

Related Documents

SAP Help Portal: Deleting Update Records

SAP Documentation: Update Statuses

CST Expert Content: Reports RSM13001 and RSM13002: description of the functions available

Related SAP Notes/KBAs

SAP Note 1510367 - Re-processing failed update records via SM13

SAP Note 552300 - FAQ: Update

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

FAQ Update

Client-Server Technology - Update FAQ

How to limit the size of a developer trace le

What are the tables involved in the update process

What does mean the update status

What does V1 and V2 update mean

Which update requests can be reposted and which not

This is custom documentation. For more information, please visit the SAP Help Portal 475
1/31/2024

What are the tables involved in the update process

What are the tables involved in the update process?

There are 4 main tables involved in update request. These tables and its goal are described below:

VBHDR: one entry for each update request;

VBMOD: one entry for each update module, called function module. This describes the function module that is to be called
during the update;

This is custom documentation. For more information, please visit the SAP Help Portal 476
1/31/2024
VBDATA: This table provide the data for this function module. This is the data passed to the modules (variables, structures,
internal tables), can have several entries per update module;

VBERROR: error information if the update request gets stopped;

What does V1 and V2 update mean

What does V1/V2 update mean?

The update mechanism is a part of the SAP application server ABAP which ensures the transactional integrity during the
change of different data records within the database. Several data changes are collected in the application servers preliminarily
and get written to the database at a later time in a single chunk. This processing which nally writes the data records to the
database is called the update processing and get's triggered by the ABAP command COMMIT WORK and takes place in an
update or update-2 work process. It is actually not the data records themselves that are collected but a set of ABAP functions
(update modules).. The parameters passed to those functions are stored together with the functions and at the time of the
update processing the parameters get restored and the functions are executed with those parameters. In this way the update
mechanism can be seen as a delayed function execution that ensures that all the functions are executed in a single unit.

The database records changed by the update processing have to be locked and protected against concurrent change through
several transactions which would cause data inconsistencies. However there might be other data records that have to be
maintained together with those data records that get processed by the update mechanism but that don't have to be
necessarily protected against concurrent access. Think of progress and status information in a log table. In order to improve the
performance, update processing is split into several parts. Applications can differentiate their update functions into those
modules which are essential to be executed within the single processing mentioned above. Those are called the V1 update
modules. All other data may be stored in update modules which are processed with a slight delay and which are called the V2
update modules. It is important to know that the data records changed by V2 update modules are not protected by Enqueue
locks because those are released after the V1 processing.

There is an additional type of update modules which is called COLLECTIVE RUN. Those update modules are getting processed
even after the V2 part of an update request (but as well in update-2 work processes). The processing of the COLLECTIVE RUN
update modules has to be started explicitly using the program RSM13005. In contrast to the V1 and V2 update modules all
COLLECTIVE RUN update modules of one type are processed together. Regardless to the user who created them or to the
transaction they have been created by. So all COLLECTIVE RUN update modules which are pending all over the SAP system, are
collected and processed at once.

What does mean the update status

What does mean the update status?

INIT: this update request is completed which was sent to the update server, It is now in process or ha not yet been processed;

ERR: the update was started before, but stopped by some reason. Usually this is an program error, database issue, etc;

AUTO: The update record was selected by the system or manually selected for subsequent processing;

ENQR: this update is not yet posted, however, the related locks were deletede from enqueue table;

Which update requests can be reposted and which not

This is custom documentation. For more information, please visit the SAP Help Portal 477
1/31/2024

Which update requests can be reposted and which not?

There are two types of V1 update modules: normal V1 update modules and non-repostable V1 update modules. After V1-update
processing those Enqueue locks which protect the data against concurrent access are released. This happens always,
regardless of whether update processing was successful or failed. Those V1 update modules which would lead to inconsistent
data when they are processed without the Enqueue lock protection are of type "V1 non-repostable". Update requests which
contain update modules of that type cannot be reposted. The system prevents update requests with that type of V1 update
modules from getting reposted.

Update requests of which only the V2 or COLLECTIVE RUN modules have not been executed may always be reposted,
regardless to whether there have been non-postable V1 update modules in it or not. So only update requests of which the V1
part failed to process successfully might not be able to be reposted.

An exception to this rule are update requests which have been triggered by the ABAP command COMMIT WORK AND WAIT
(synchronous updates). If the V1-part of those update requests failed to process properly they cannot be reposted in any case.
The reason is that transactions which triggered the update processing synchronous get a return code which tells them it if the
update processing was successful or not. The proper error handling of that transaction might lead to duplicate data if the
update request get's reposted.

Another special case is the local update processing. It has to be activated by the ABAP application via the ABAP statement "SET
UPDATE TASK LOCAL". There is no way to generally activate it from outside the ABAP program. When a transaction uses local
update processing the V1 update module parameters are not stored in the database but in the main memory and the
processing is done within the COMMIT WORK statement. Only the V2 update processing is done via the usual update
mechanism and those update requests can always be reposted as all update requests with just the V2 part pending can be
reposted.

Please nd further documentation regarding the update concept at


http://help.sap.com/saphelp_nw70/helpdata/en/64/6f8337dd34ca76e10000009b38f8cf/frameset.htm

Monitoring Update Resources Using CCMS Infrastructure

Purpose

The purpose of this page is to explain how the updates of an SAP instance can be monitored through the CCMS infrastructure.

Overview
This page provides details about the CCMS monitoring infrastructure, speci cally focused in the update resources monitoring,
providing details about how to nd the monitoring functions and how to con gure them accordingly.

CCMS Transaction RZ20


The CCMS monitoring infrastructure, a solution within SAP NetWeaver, centrally monitors any IT environments - from individual
systems through networked SAP NetWeaver solutions, to complex IT landscapes incorporating several hundred systems. In this
section, you learn about the Alert Monitor (transaction RZ20) and its monitoring functionalities.

The updates monitoring functionalities can be found in transaction RZ20, by following the below path.

RZ20 transaction → SAP CCMS Monitor Templates → Entire System → Application Server → <Instance Name> -> Update

This is custom documentation. For more information, please visit the SAP Help Portal 478
1/31/2024

Monitoring Updates Resources


The CCMS Infrastructure allows you to monitor the updates resources available in the SAP instance by using the transaction
RZ20. The below MTEs are available in order to monitor different gateway resorces, they are:

For Updates V1 work processes:

ResponseTime - SAP update task V1: Average response time per dialog step
QueueTime - SAP update task V1: Average wait time in dispatcher queue
Utilization - Average usage of update V1 work processes of an application server
NumberOfWpUD1 - Number of update V1 work processes
ErrorsInWPUD1 - Number of errors in update V1 work processes
ErrorFreqInWpUD1 - Number of errors in update V1 work processes per minute
EndedWpUD1 - Number of completed update V1 work processes

For Updates V2 work processes:

ResponseTime - SAP update task V2: Average response time per dialog step
QueueTime - SAP update task V2: Average wait time in dispatcher queue
Utilization - Average usage of update V2 work processes of an application server
NumberOfWpUD2 - Number of update V2 work processes
ErrorsInWPUD2 - Number of errors in update V2 work processes
ErrorFreqInWpUD2 - Number of errors in update V2 work processes per minute
EndedWpUD2 - Number of completed update V2 work processes

The updates monitoring features also include the MTE AbapErrorInUpdate that show Update requests with errors in the
system. Following the path RZ20 transaction → SAP CCMS Technical Expert Monitors -> All Monitoring Contexts -> Update ->
UpdateServices you can also nd the below MTEs.

This is custom documentation. For more information, please visit the SAP Help Portal 479
1/31/2024

Update Status - Update status in the system


Old Update Records - Update records older than one day in SM13

Monitoring Scenarios Examples


1. Using the MTE called Update Status, you can monitor whether the update mechanism is active in the instance. This will
allow you to monitor if the update processing is active or, in case it is not, to start the root cause analysis of this behavior
in order to restart the system to its normal functions.

1. using the MTE called Old Update Records you can monitor whether there are old updates which were not processes in
the system. Old updates sometimes mean that locks from old transactions still exist in the system and can prevent
important application functions from working correctly as consequence.

CCMS Auto-Reaction Methods

In the CCMS monitoring infrastructure, you can set up any MTE available in transaction RZ20 to automatically trigger email
alerts in case the values reported by them meet the threshold values de ned. The next chapters will explain more details about
the con guration process to achieve this.

De ning Threshold Values for the Monitored MTEs

The rst step is to de ne which MTEs you want to monitor in transaction RZ20, with this, you can start to set up their
thresholds accordingly, so you are alerted in the correct scenario. Follow the Adjusting the Threshold Values chapter from
the Con guring Alert Triggering and Alert Reactions SAP online help documentation for a detailed step by step on how to
achieve this.

This is custom documentation. For more information, please visit the SAP Help Portal 480
1/31/2024

De ning and Assigning Auto-Reaction Methods for the Monitored MTEs

The second step to achieve this con guration is to de ne and assign the auto-reaction methods to the desired MTEs in the
CCMS monitoring infrastructure. In order to perform this con guration, follow the steps mentioned in the De ning an
Automatic Alert Noti cation SAP online help documentation.

Alternatively, you can choose to de ne Central auto-reaction methods, which will trigger the email alert from the central system
instead of the local system. For this con guration, refer to the SAP online help Setting Up Central Auto-Reaction Methods for
more details.

This is custom documentation. For more information, please visit the SAP Help Portal 481
1/31/2024

Displaying MTE Performance Information Graphically


Withing the CCMS transaction RZ20, you can display the performance values shown by an speci c MTE as a graphic, allowing
you to make faster and more accurate analysis based on the reported data. In order to display the MTE values as a graphic,
follow the below steps.

1. Select the Performance MTE in RZ20.

2. Click in the Display Details button.

3. Select whether you want to display the last 30 minutes or 24 hour value.

4. Click in the "Display performance values graphically" button.

5. The graphic is nally shown in the below format.

This is custom documentation. For more information, please visit the SAP Help Portal 482
1/31/2024

Related Content

Related Documents
De ning an Automatic Alert Noti cation

Con guring Alert Triggering and Alert Reactions

Setting Up Central Auto-Reaction Methods

Related SAP Notes/KBAs

SAP Note 939616 - CCMS auto-reactions: Help with troubleshooting

SAP Note 176492 - Automatic email when an alert occurs (RZ20)

Oracle Errors that automatically deactivate the SAP update mechanism

Purpose
This document provides a list of Oracle errors that lead to deactivation of SAP update mechanism.

Overview

The update mechanism has a feature to be automatically disabled in case of critical situations to avoid even a worst and
complicated scenario from users perspective. However, not all of critical errors and situation will be able to deactivate the
update mechanism.

Following the list of known errors that will trigger the deactivation of update mecahnism in SAP systems:

This is custom documentation. For more information, please visit the SAP Help Portal 483
1/31/2024
Errors ORA-XXX

1536: space quota exceeded for tablespace


1555: snapshot too old
1562: failed to extend rollback segment
1630: max # extents (%s) reached in temp segment
1631: max # extents (%s) reached in table %s.%s
1632: max # extents (%s) reached in index %s.%s
1650: unable to extend rollback segment
1651: unable to extend save undo segment
1652: unable to extend temp segment
1653: unable to extend table
1654: unable to extend index
30036: unable to extend segment in undo tablespace

Related Content

Related SAP Notes/KBAs

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Processing pending V3 update requests

Purpose

The purpose of this document is to assist with the processing of pending V3 update requests
(transaction SM13).

Overview

This page explains one possible reason for V3 update request to remain unprocessed in the system
and how to proceed in order to process them.

Cause

V3 update requests are called "collective run updates", and are not automatically processed by the
update mechanism.

These updates are not considered to be critical or urgent.

Critical/urgent update requests should be created as a V1 update.

This is custom documentation. For more information, please visit the SAP Help Portal 484
1/31/2024

Solution

A background job (transaction SM36/SM37) needs to be schedule to collect and process pending V3
update requests.

Each application area has to provide its own job / report.

Therefore, the rst step is to verify whether the application has such report, and what are the
guidelines provided by the application regarding how to schedule the job (daily, weekly, etc.).

In case the application does not provide such report, the generic report "RSM13005" can be used.

Related Content

Related Documents

Related SAP Notes/KBAs

SAP note 552300 - FAQ: Update

Reports RSM13001 and RSM13002: description of the functions available

Purpose

The purpose of this document is to describe what each of the functions from the reports RSM13001 and RSM13002 do.

RSM13001
List of functions and the expected outcome

Function Description

COUNT Counts the number of update records that match the selection criteria (selection elds: FROM DAY, FROM TIME, TO DATE, TO
TIME, USER, TCODE) and display:

The number of records in status "initial";

The number of records in status "error";

The total number of records.


SHOW Display all update requests that match the selection criteria including the total number of requests. If the "Display Update
Module" eld is marked (with an 'X', or not with a blank space), also displays the update modules and the total number of
modules.

DELINIT Delete all update records that are in status "initial" and match the selection criteria. They will be deleted in batches of at most
100 records per "commit work".

DELALL Delete all update records that match the selection criteria, disregarding their statuses. They will be deleted in batches of at
most 100 records per "commit work".

This is custom documentation. For more information, please visit the SAP Help Portal 485
1/31/2024
DELERR Delete all update records that are in error status and match the selection criteria. They will be deleted in batches of at most
100 records per "commit work".

REORG Delete orphan update records (records that have entries at the database tables VBDATA and VBMOD, but do not have the
corresponding entry at the table VBHDR).

Observation: as of SAP NetWeaver 7.4, the REORG option only deletes orphan records that are older than rdisp/vbdelete

days. The default value of this parameter is 50 and this parameter does not accept the value zero. The lower value it accepts
is one. This is to prevent data loss in case temporary orphan updates exist in the system (e.g., a job creating update requests
that did not perform the "commit work" yet).

RESET Resets the status of pending update requests that match the selection criteria to "initial", so the update mechanism starts
(re)processing them automatically.
For example, V1 and V2 modules that have status "started" will be reset to "initial". Keep in mind that not all statuses can be
reset with this report.

SHOWI Shows the number of incomplete update records (possibly orphan records, but not necessarily). Does not take into account
the selection elds.

COUNTI Counts the number of incomplete update records (possibly orphan records, but not necessarily). Does not take into account
the selection elds.

RSM13002
List of functions and the expected outcome

Function Description

STARTV2 Start all pending V2 update requests that are ready to be processed.

DELETE Deletes all update records that were already processed successfully, but are still at the database tables.
They will be deleted in batches of at most 100 records per "commit work".

REORG Performs the same function as the REORG in the report RSM13001 (see above).

Related Content
Related SAP Notes/KBAs

SAP note 67014: Reorganizing update requests

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

SAP Update system - Frequently asked Questions (FAQ)

What tables are involved in the update process?


There are 4 main tables involved in update request. These tables and its goal are described below:

VBHDR: one entry for each update request


This is custom documentation. For more information, please visit the SAP Help Portal 486
1/31/2024

VBMOD: one entry for each update module, called function module. This describes the function
module that is to be called during the update

VBDATA: This table provide the data for this function module. This is the data passed to the
modules (variables, structures, internal tables), can have several entries per update module

VBERROR: error information if the update request gets stopped;

What does the update status mean?

INIT: this update request is completed which was sent to the update server, It is now in process
or ha not yet been processed

ERR: the update was started before, but stopped by some reason. Usually this is an program
error, database issue, etc;

AUTO: The update record was selected by the system or manually selected for subsequent
processing;

ENQR: this update is not yet posted, however, the related locks were deleted from enqueue
table;

What does V1 and V2 update mean?

The update mechanism is a part of the SAP application server ABAP which ensures the transactional integrity during the
change of different data records within the database. Several data changes are collected in the application servers preliminarily
and get written to the database at a later time in a single chunk. This processing which nally writes the data records to the
database is called the update processing and get's triggered by the ABAP command COMMIT WORK and takes place in an
update or update-2 work process. It is actually not the data records themselves that are collected but a set of ABAP functions
(update modules).. The parameters passed to those functions are stored together with the functions and at the time of the
update processing the parameters get restored and the functions are executed with those parameters. In this way the update
mechanism can be seen as a delayed function execution that ensures that all the functions are executed in a single unit.

The database records changed by the update processing have to be locked and protected against concurrent change through
several transactions which would cause data inconsistencies. However there might be other data records that have to be
maintained together with those data records that get processed by the update mechanism but that don't have to be
necessarily protected against concurrent access. Think of progress and status information in a log table. In order to improve the
performance, update processing is split into several parts. Applications can differentiate their update functions into those
modules which are essential to be executed within the single processing mentioned above. Those are called the V1 update
modules. All other data may be stored in update modules which are processed with a slight delay and which are called the V2
update modules. It is important to know that the data records changed by V2 update modules are not protected by Enqueue
locks because those are released after the V1 processing.

There is an additional type of update modules which is called COLLECTIVE RUN. Those update modules are getting processed
even after the V2 part of an update request (but as well in update-2 work processes). The processing of the COLLECTIVE RUN
update modules has to be started explicitly using the program RSM13005. In contrast to the V1 and V2 update modules all
COLLECTIVE RUN update modules of one type are processed together. Regardless to the user who created them or to the
transaction they have been created by. So all COLLECTIVE RUN update modules which are pending all over the SAP system, are
collected and processed at once.

What update requests can be re-posted?


There are two types of V1 update modules: normal V1 update modules and non-repostable V1 update modules. After V1-update
processing those Enqueue locks which protect the data against concurrent access are released. This happens always,
regardless of whether update processing was successful or failed. Those V1 update modules which would lead to inconsistent
data when they are processed without the Enqueue lock protection are of type "V1 non-repostable". Update requests which
This is custom documentation. For more information, please visit the SAP Help Portal 487
1/31/2024
contain update modules of that type cannot be reposted. The system prevents update requests with that type of V1 update
modules from getting reposted.

Update requests of which only the V2 or COLLECTIVE RUN modules have not been executed may always be reposted,
regardless to whether there have been non-postable V1 update modules in it or not. So only update requests of which the V1
part failed to process successfully might not be able to be reposted.

An exception to this rule are update requests which have been triggered by the ABAP command COMMIT WORK AND WAIT
(synchronous updates). If the V1-part of those update requests failed to process properly they cannot be reposted in any case.
The reason is that transactions which triggered the update processing synchronous get a return code which tells them it if the
update processing was successful or not. The proper error handling of that transaction might lead to duplicate data if the
update request get's reposted.

Another special case is the local update processing. It has to be activated by the ABAP application via the ABAP statement "SET
UPDATE TASK LOCAL". There is no way to generally activate it from outside the ABAP program. When a transaction uses local
update processing the V1 update module parameters are not stored in the database but in the main memory and the
processing is done within the COMMIT WORK statement. Only the V2 update processing is done via the usual update
mechanism and those update requests can always be reposted as all update requests with just the V2 part pending can be
reposted.

Please nd further documentation regarding the update concept at


http://help.sap.com/saphelp_nw70/helpdata/en/64/6f8337dd34ca76e10000009b38f8cf/frameset.htm

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

Updates requests in status 'Init'

Purpose
This document provides different scenarios that may cause Update Requests remaining on transaction SM13 in status ʻInitialʻ.

Overview
Status ʻInitialʻ means: “The update request has been created but has not been fully processed. (This status applies from the
moment the dialog work process passes the update request to the update work process up to the COMMIT in the update work
process)“

Further details of the update request are shown with a double clik (or via menu Goto > Update module). There, we can see that
involved FMs (they can be type V1 or type V2) are also in status ʻInitialʻ. This means that none of them have yet been processed.

This is custom documentation. For more information, please visit the SAP Help Portal 488
1/31/2024

Header information of the request (Goto > update Header) shows:

Update Server: application server were the update record should be processed (involving UPD &
UP2 work processes).

UD Client: application server where the DIA request was executed.

A new functionality has been implemented to alleviate the issue of remaining update tasks in status INIT in transaction SM13.
See Note 2802241 - UPD: Update requests in status INIT in SM13

Where to check information?

This image shows ow of information. Communication is stablished between involved application servers (UPD Client & UPD
Server) through Dispatcher -> Message Server -> Dispatcher.

Relevant information can be found on:

SystemLog entries (transaction SM21) at update request timestamp.

Message Server trace le (dev_ms) at around relevant timestamp.

This is custom documentation. For more information, please visit the SAP Help Portal 489
1/31/2024

Dispatchers trace les (dev_disp) on both involved application servers at around relevant
timestamp.

Status of UPD work processes (transaction SM50) on Update Server.

UPD work processes trace le (dev_wX) on Update Server.

Load on both application servers.

Possible reasons
Over ow of the UPD or UPD2 Dispatcher Queue on Update Server (7.2x)

System Log will show error:

Error adding a request to the dispatcher queue ( UPD)


Request (type UPD) cannot be processed

Dispatcher trace le shows following:

*** ERROR => DpRqIPutIntoQ: OverFlow (type 6, max: 2001, prio LOW) [dpxxqueu.c 622]
***LOG Q0H=> DpRqPutIntoQueue, DpRqIPutIntoQ ( UPD) [dpxxtool2.c 3981]
***LOG Q0G=> DpRqBadHandle, bad_req ( UPD) [dpxxdisp.c 5263]
***ERROR=>BAD REQUEST – Reason:DpRqPutIntoQueue failed

This can be con rmed on transaction SM51 -if server has not been restarted- by selecting application server: Goto > Server
Name > Information > Queue Information

Dispatcher queue reached value ʻrdisp/elem_per_queueʻ, which de nes the number of requests of each WP type Dispatcher can
handle, not only for UPD or UPD2 processes.

>> UPD and UPD2 load needs to be correctly distributed among different application servers to avoid this overload problems.
The situation could be an isolated event or an incident due to the execution a job/program that needs many UPD or UPD2 work
processes.

Disconnection to Message Server on one of the Dispatchers

Dispatcher trace from UPD server or UPD client application server will show disconnection to Message Server:

*** ERROR => MsINiRead: NiBufReceive failed (NIECONN_BROKEN) [msxxi.c 2848]


****************************************************************************
* LOCATION SAP-Dispatcher <server>_<SID>_<nr> on host <hostname>
* ERROR Reading data from the message server (<mshost>/ <msport>) failed.
* Please check the trace le of the message server.
*
* TIME xxxxxx
* RELEASE xxx
* COMPONENT MS (message handling interface, multithreaded)

This is custom documentation. For more information, please visit the SAP Help Portal 490
1/31/2024
* MODULE /bas/7xx_REL/src/krn/ms/msxxi.c
*****************************************************************************
*** ERROR => MsIReadFromHdl: MsINiRead (rc=NIECONN_BROKEN) [msxxi.c 2236]
MBUF state OFF
DpMBufTypeMod: MBUF component DOWN (event=MBUF_DPEVT_DOWN)
DpMsServerDown: wakeup waiting sessions
*** ERROR => DpMsgProcess: MsReceive () -> MSENILAYER, partner: [dpMessageSer 255]
*** ERROR => DpMsgProcess: disconnect from msg_server [dpMessageSer 338]

>> Ensure network stability between different application servers.

Extended Memory exhausted on one of involved application servers (7.4x)

If Extended Memory on UPD Client or UPD Server is exhausted, updates may stay in ʻInit’ status. Work process trace le
(dev_wx) will show:

Y *** ERROR => dyInitSpa: EmAlloc failed [dyimode.c 2554]


Y {root-id=901B0E0B00C41EE781B0B5C240D9A454}_{conn- id=00000000000000000000000000000000}_0
EM Dump

Extended Memory consumption on each application server can be checked on transaction ST02; if MaxUse reaches In Mem
value, Extended Memory was exhausted: You may also nd many LOAD_NO_ROLL dumps on ST22 transaction, pointing to
same shortage on Extended Memory resources.

>> Adjust Extended Memory size, based on application server needs.

Extended Global (EG) exhausted on UPD server (7.4x)

Extended Global area is a memory pool located in the Extended Memory. This area is reserved for globla data, that is user-
independent. The amount of data involved in this area is smaller, a percentage from the whole Extended Memory pool.
UPD work process trace le (dev_wx) will show:

X *** ERROR => EgAlloc: MmxMalloc failed (9) to allocate 1048576 bytes. [egxx.c 627]
X {root-id=525400DB31461ED8809A946A5FC739D2}_{conn-id=00000000000000000000000000000000}_0
X *** ERROR => EgAlloc: out of memory, check em/global_area_MB and eg_oom_mm.dump le for memory allocations.
[egxx.c 628]

With SAP NetWeaver 7.4x the extended global area (EG) con guration has changed, as the table buffer has been moved into EG
(which is a part of EM).

>> Adjust Extended Global memory.

Shortage on Page le (Windows environment)

UPD work process trace le (dev_wx) from update server will show:

X *** ERROR => <EsNT> error: [esnti.c 2926]MapViewOfFileEx(27c,34,0,1275068416,4194304,000007DE99A00000) returned


0000000000000000
(lastError = 1455) [esnti.c 3541]
X {root-id=FA163E4942951ED8819C4454E325842F}_{conn-id=00000000000000000000000000000000}_0
X *** ERROR => <EsNT> MapViewOfFileEx size=4194304 ptr=000007DE99A00000 HighPart=0 LowPart=1275068416
MapHandle=000000000000027C error=1455 [esnti.c 2939]
Y *** ERROR => dyInitSpa: EmAlloc failed [dyimode.c 2703]
M ***LOG R1U=> Error in EmAlloc& [dyimode.c 2709]

This is custom documentation. For more information, please visit the SAP Help Portal 491
1/31/2024
This only occurs on Windows operating system platform.
Mapping the block via MapViewOfFile is failed due to no more page le available.

>> Adjust page le based on memory requirements.

Related Content

Related SAP Notes/KBAs

Over ow of the UPD or UPD2 Dispatcher Queue on Update Server (7.2x)

SAP Note 15606 - Over ow of dispatcher request queue

SAP Note 3223 - Number of WP and APPC blocks (SAP Kernel 46D to 738)

KBA 2393769 - System parameters for high interface load (ALE/RFC) for Kernel >= 7.4x

Disconnection to Message Server on one of the Dispatchers

SAP Note 1532367 - MsSCheckConnections

Extended Memory exhausted on one of involved application servers (7.4x)

SAP Note 2405581 - UPD: updates in status INITIAL as of 74X

KBA 2322108 - Update requests stay in initial status, enqueue lock entries remain after end of
session

SAP Note 2061741 - UP: R1T in system log

KBA 2148571 - Higher Extended Memory (EM) and Extended Global Memory (EG) consumption
in kernel 7.4x

KBA 2152126 - ERROR => EgAlloc: MmxMalloc failed

SAP Note 1514752 - Extended Global Memory con guration

Shortage on Page le on Windows environment

KBA 2584074 - Update requests stuck in sm13, enqueue lock entries remain after end of session
on Windows

SAP Note 1518419 - Page le and virtual memory required by the SAP system

This is custom documentation. For more information, please visit the SAP Help Portal 492
1/31/2024

Error CSS Stylesheet macro - URL 'https://fonts.googleapis.com/css?family=Ubuntu+Mono' is not on the allowlist. If you want
to include this content, contact your Con uence administrator to request adding this URL to the Allowlist.

This is custom documentation. For more information, please visit the SAP Help Portal 493

You might also like