Application Server Infrastructure
Application Server Infrastructure
PUBLIC
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.
This is custom documentation. For more information, please visit the SAP Help Portal 1
1/31/2024
Software Products:
ABAP Development
maintenance planner
SAP Gateway
Software Logistics
SAP NetWeaver
Security
MUNITY
NetWeaver Technology
NEL INFO
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
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
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
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.
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.
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]
From example #1
*** WARNING => MtxLock a00010020000270 RQ_Q_WOD owner=30004 deadlock ? [mtxxx.c 641]
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
First I would like to list out the prede ned client id's in the kernel.
By de nition it states as ( part of internal SAP coding I cant provide more detail due to security reasons ) :
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
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
RFC Gateway security settings - extra information regarding SAP note 1444282
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
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.
There is always an implicit "deny all" rule as the last rule, even if not present at the le.
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.
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
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.
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
# 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=*
Related Content
Related Documents
RFC Gateway Access Control Lists
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.
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
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
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
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.
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.
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
SAP KBA 2104408 - Checklist for "program <program ID> not registered" errors
How to display & reread RFC Gateway ACL les / secinfo and reginfo les
This is custom documentation. For more information, please visit the SAP Help Portal 16
1/31/2024
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.
2. Ensure that the parameter gw/reg_no_conn_info does not include the bitmask value 16 (setting this parameter to zero
achieves this);
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.
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>".
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
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
https://help.sap.com/doc/62b4de4187cb43668d15dac48fc00732/7.5.8/en-US/5872aed2b8cc4b0387374cbf5f4adcf6.html
RFC Gateway security settings - extra information regarding SAP note 1444282
The SAP documentation in the following link explain how to create the le rules:
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;
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
Logon to the server where the Standalone RFC Gateway is executing as "<sid>adm", and then execute the command:
Once at the gwmon tool, access the menu "m" -> "9" -> "4".
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 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:
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:
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.
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:
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.
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.
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
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]
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.
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.
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
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
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.
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.
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
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
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.
3. Select whether you want to display the last 30 minutes or 24 hour value.
This is custom documentation. For more information, please visit the SAP Help Portal 30
1/31/2024
Related Content
Related Documents
Gateway Parameters
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.
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:
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):
Go to Secinfo section
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:
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:
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 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).
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.
#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:
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:
The SAP KBA 2145145 has a video illustrating how the secinfo rules work.
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
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
This is custom documentation. For more information, please visit the SAP Help Portal 41
1/31/2024
Related Notes
SAP note 1689663: GW: Simulation mode for reg_info and sec_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 KBA 2075799: ERROR: Error (Msg EGW 748 not found)
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.
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.
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:
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").
We strongly recommend that you carefully review each note to completely understand the behavior changes. The below
information is just a super cial summary.
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.
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.
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.
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).
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.
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.
Tabulators are not allowed at the command line to start external programs. Review the SAP Note 1697971 for more details.
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.
Related Content
Related Documents
RFC Gateway Access Control Lists
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
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
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
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.
Purpose
This Expert Content explains about an ABAP program to manage a standalone gateway running in an
ASCS instance.
Overview
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.
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
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 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
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
Dispatcher Security
39412 - How many work processes should Architecture of SAP NetWeaver Application
be con gured? Server ABAP
DPMON Dispatcher Monitor How to check the work process status from
Operating System Level
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.
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
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:
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
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.
If a snapshot was written over the dispatcher trace le (dev_disp) at that time, we can check the information of the Work
process
1st option - write a snapshot on the dispatcher trace le with dpmon tool:
-->m ( m - menue )
-->p ( p - work-process-admin-table )
-->m ( m - menue )
-->l ( l - work-process-admin-table (long) )
The information from the session table could also be useful in some cases:
-->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
Start gwmon tool on the application server affected by the problem and take the information of following options.
Connection table
-->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
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:
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
This is custom documentation. For more information, please visit the SAP Help Portal 54
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 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.
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.
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
This is custom documentation. For more information, please visit the SAP Help Portal 56
1/31/2024
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:
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
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).
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
SAP note 1716826: Usage of the downward compatible kernel 721 (EXT)
SAP note 1002075: Too many enqueue clients in standalone enqueue server
SAP KBA 2196513: WARNING => NiICreateHandle: no more free handles (XXXX)
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.
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
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.
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.
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
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.
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.
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.
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.
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.
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
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".
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.
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.
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.
When you run dpmon commands it waits for the user input. It is possible to run wihtout an interactive way:
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
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
SAP Note 112 - Trace and error information in the "dev_" les
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.
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.
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.
Traffic Control
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).
Related Content
Related Documents
This is custom documentation. For more information, please visit the SAP Help Portal 69
1/31/2024
Purpose
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 are also the following reports that belongs to each service:
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.
As from SP13 in 740 (or with note 2201397) the RZ11 will store the last 10 changes of dynamic
parameter.
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
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):
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
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:
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
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
How do I nd out, which kernel patch level xes a problem described in a note
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
This is custom documentation. For more information, please visit the SAP Help Portal 75
1/31/2024
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.
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
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.
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.
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)
'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
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
SAP KBA 3066548: SAP kernel update with RKS procedure fails
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
3. Select whether you want to display the last 30 minutes or 24 hour value.
This is custom documentation. For more information, please visit the SAP Help Portal 84
1/31/2024
Related Content
Related Documents
De ning an Automatic Alert Noti cation
This is custom documentation. For more information, please visit the SAP Help Portal 85
1/31/2024
Purpose
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.
Arithmetic formulas can be used in parameter values. further information about formulas usage see
this documentation.
j2ee/phys_memsize $(PHYS_MEMSIZE)
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
Overview
CHECK BEFORE
DOWNLOAD
EXTRACTION, UPDATE
CHECK AFTER
CHECK BEFORE
This is custom documentation. For more information, please visit the SAP Help Portal 87
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
This is custom documentation. For more information, please visit the SAP Help Portal 88
1/31/2024
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
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>/*":
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
Related Content
Related Documents
This is custom documentation. For more information, please visit the SAP Help Portal 90
1/31/2024
Purpose
Overview
CHECK BEFORE
DOWNLOAD
EXTRACTION, UPDATE
CHECK AFTER
CHECK BEFORE
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
This is custom documentation. For more information, please visit the SAP Help Portal 92
1/31/2024
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
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
CHECK AFTER
Related Content
Related Documents
This is custom documentation. For more information, please visit the SAP Help Portal 94
1/31/2024
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:
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 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);
This is custom documentation. For more information, please visit the SAP Help Portal 96
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 97
1/31/2024
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.
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.
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>".
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.
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
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.
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.
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.
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.
There are some speci c situations, with kernel 72X, where the semaphore can be automatically recovered with the feature of
note 1890657.
This is custom documentation. For more information, please visit the SAP Help Portal 102
1/31/2024
Related Content
Related Documents
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.
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
Purpose
This is custom documentation. For more information, please visit the SAP Help Portal 105
1/31/2024
Overview
This page contains information regarding the snapshot functionality delivered as from the kernel 740,
aiming to explain its purpose, content and related parameters.
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.
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:
This is custom documentation. For more information, please visit the SAP Help Portal 106
1/31/2024
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
********.
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 ********.
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
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
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.
This is custom documentation. For more information, please visit the SAP Help Portal 109
1/31/2024
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?
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
KBA 3122914 - The step-by-step guide to collect a server snapshot and analyze it with kernel snapshot
analyzer
dp_new.png
Purpose
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
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
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
This is custom documentation. For more information, please visit the SAP Help Portal 115
1/31/2024
Related Content
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
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
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
requests)
RFC through WebSocket (server)
RFC through WebSocket (client)
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
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.
This is custom documentation. For more information, please visit the SAP Help Portal 120
1/31/2024
1- Dispatcher (dev_disp) :
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.
Case A - High load situation has been stabilized. When dynamic work processes are not needed anymore, the dispatcher
terminates them.
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>)
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
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.
Operation Modes
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.
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
Operation Modes
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.
Troubleshooting
This is custom documentation. For more information, please visit the SAP Help Portal 123
1/31/2024
Miscelaneous Info
Useful Tools
F.A.Q.
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).
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.
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
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.
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
enque/server/max_query_requests * enque/server/max_query_size
Example:
enque/server/max_query_requests 12000
enque/server/max_query_size 131072 bytes
Example:
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.
Related Content
Related Documents
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.
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.
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.
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
SAP KBA 2196513 - WARNING => NiICreateHandle: no more free handles (XXXX)
SAP Note 1002075 - Too many enqueue clients in standalone enqueue server
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
Both sides:
only on DI:
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:
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
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
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.
You could identify there is an issue with this in the ENSA "dev_enqwork" trace file, see the following example:
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?
Related Content
Related Documents
Related SAP Notes/KBAs
This is custom documentation. For more information, please visit the SAP Help Portal 134
1/31/2024
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.
Purpose
Overview
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
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.
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.
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”):
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.
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
Windows
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
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;
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...)
(...note that the below is only one line of the enqueue log...)
More details on the enqueue log format can be found at the SAP note 5424.
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
This is custom documentation. For more information, please visit the SAP Help Portal 138
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.
Explain the enqt usage to analyze the number of Enqueue operation in time interval.
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 enqt tool has an opcode to perform statistics about operations during the time it is running.
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.
This is custom documentation. For more information, please visit the SAP Help Portal 139
1/31/2024
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
This is custom documentation. For more information, please visit the SAP Help Portal 140
1/31/2024
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.
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
This is custom documentation. For more information, please visit the SAP Help Portal 141
1/31/2024
Related Notes
This is custom documentation. For more information, please visit the SAP Help Portal 142
1/31/2024
In order to check if your system runs a Classical CI or a Standalone Enqueue you can check in SM12 -> Extras -> Diagnosis
Classical CI:
This is custom documentation. For more information, please visit the SAP Help Portal 143
1/31/2024
The rst step is to nd out the replication port de ned by the parameter enque/encni/repl_port:
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:
This is custom documentation. For more information, please visit the SAP Help Portal 144
1/31/2024
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:
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:
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.
To check the list of available functions, call the command sapcontrol and check the list of WEBMETHODS.
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.
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:
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.
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.
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.
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
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:
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.
Go to SE11 -> lock object -> <write the object >-> Utilities -> where-used
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:
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
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.
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.
All the enqueue monitoring functionalities can be found in transaction RZ20, by following the below path.
This is custom documentation. For more information, please visit the SAP Help Portal 153
1/31/2024
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
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.
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.
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.
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.
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.
3. Select whether you want to display the last 30 minutes or 24 hour value.
This is custom documentation. For more information, please visit the SAP Help Portal 158
1/31/2024
Related Content
Related Documents
Purpose
Precondition 01: Check whether there is an active ERS in the system's landscape
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
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?
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.
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.
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
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
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
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
This is custom documentation. For more information, please visit the SAP Help Portal 162
1/31/2024
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
This is custom documentation. For more information, please visit the SAP Help Portal 163
1/31/2024
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]
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.
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
Below are some common issues that can damage the share memory before the ENSA connect to it.
Please avoid them during the failover.
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>
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)
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.
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.
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
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
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
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.
Tools
This is custom documentation. For more information, please visit the SAP Help Portal 169
1/31/2024
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:
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
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
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 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
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
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.
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)
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.
This is custom documentation. For more information, please visit the SAP Help Portal 173
1/31/2024
Business Continuity
for SAP on IBM Z
PowerHA
SystemMirror High
Availability Solutions
for SAP on AIX
PowerHA
SystemMirror High
Availability Solutions
for SAP on Linux
IBM i:
High Availability
Options for SAP
Using IBM PowerHA
SystemMirror for i
Implementing an
Independent ASP
(iASP) System on
IBM i
Multiplatform:
Tivoli System
Automation for
Multiplatforms SAP
High Availability
Policy
Windows Server
Failover Clustering
for SAP
NEC High Availability for Certified HA
SAP by solution(s)
Expresscluster available.
SAP NetWeaver
ASCS/ERS ENSA1 in
Pacemaker Cluster
Sios SIOS Protection Certified HA
Suite for Linux solution(s)
available.
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
SAPStartSRV in HA Environments
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)
Monitoring:
SAP note 877795, section 52: Improved Enqueue and Message Server Monitoring (Link to SAP
Service Marketplace)
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.
Wiki Documentation
ICM and SAP Web Dispatcher Maximum and Minimum number of threads
Tips and best practices for security on SAP Web Dispatcher and ICM
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
This is custom documentation. For more information, please visit the SAP Help Portal 177
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 178
1/31/2024
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:
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
Last-Event-ID
DPR
Downlink
Save-Data
Viewport-Width
Width
application/x-www-form-urlencoded
multipart/form-data
text/plain
Communication Example
HTTP Request
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
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
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
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.
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.
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://<WebServer2>
begin
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
This is custom documentation. For more information, please visit the SAP Help Portal 184
1/31/2024
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:
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
-->
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.
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
Purpose
You notice the following errors in the trace le of the ICM (dev_icm) and want to avoid them:
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.
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.
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:
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.
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.
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:
For the web dispatcher you can also use the web administration interface -> Core System -> Active Connections.
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.
Web Dispatcher: Menu -> Core System -> trace -> trace level
These monitoring steps should not imply any problem in terms of performance impact.
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.
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.
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
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
icm/HTTP/logging_<xx>
Related notes
SAP Note 737625: Parameter recommendations for Internet Communication Manager (ICM)
SAP Note 2007212: Tuning SAP Web Dispatcher and ICM for high load
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.
In order to use ICMON, you must be logged with the <sid>adm user in the OS level and run the below command.
In order to use WDISPMON, you must be logged with the <sid>adm user in the OS level and run the below command.
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.
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.
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".
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
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
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.
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.
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.
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.
Related Content
Related Documents
ICM and Web dispatcher: MPI parameters settings
icm/HTTP/auth_<xx>
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.
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
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.
This is custom documentation. For more information, please visit the SAP Help Portal 199
1/31/2024
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.
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
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.
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
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
3. Select whether you want to display the last 30 minutes or 24 hour value.
This is custom documentation. For more information, please visit the SAP Help Portal 202
1/31/2024
Related Content
Related Documents
Purpose
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:
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
This is custom documentation. For more information, please visit the SAP Help Portal 204
1/31/2024
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
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.
For installations on other platforms you can keep using SP Stack Kernel 754 PL 200.
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.
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.
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.
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.
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.
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.
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..."
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 .
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.
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.
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.
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.
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.
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.
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.
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.
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)
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.
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.
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.
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.
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.
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.
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.
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.
For details and correction see SAP Note 3064721 - Simple Transformation: Wait situation during transformation generation.
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.
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 .
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 .
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.
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:
RKS fails
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.
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.
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.
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.
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.
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.
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.
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.
The executable igsmux.exe doesn't start or crashes. For details see SAP note 2963158 .
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.
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.
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
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.
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.
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.
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:
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.
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.
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:
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.
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.
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.
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
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.
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.
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.
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.
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.
This is custom documentation. For more information, please visit the SAP Help Portal 218
1/31/2024
were replaced with the following kernel versions:
See SAP Notes 2784500 regarding SWPM issue and 2781974 regarding saplikey issue.
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.
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.
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.
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.
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.
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.
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.
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.
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.
745 PL #725
749 PL #516 - #517
753 PL #213 - #215
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 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.
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.
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.
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.
Message Server might hang when acting as https loadbalancer, for details see SAP Note 2603960
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.
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.
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.
As a workaround you can update CommonCryptoLib to 8.5.18. See SAP Note 2557616 for further details.
With Kernel 749 PL 217 till 315 (including) ICM / WebDispatcher has issues detecting broken https connections. For details see
SAP Note 2531833.
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.
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.
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.
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.
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.
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
Other kernel releases or patches are not affected. See SAP Note 2516910 for further details.
Other kernel releases or patches are not affected. See SAP Note 877795 item 129 for further details.
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.
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.
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.
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.
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.
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.
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.
Potentially severe issue with saphttp executable which is part of kernel 749. For details, workaround and solution, please see
SAP Note 2436809.
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.
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.
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.
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.
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.
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
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.
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.
2. On Windows 2008 (w/o R2) on Haswell CPU the SAP Kernel 745 can crash. For details see SAP Note 2330836.
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.
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.
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.
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.
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
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.
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.
Further details can be found in note 2220724. A x is expected early next week.
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.
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.
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 .
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.
SAP Note 2158856 contains the list of changes and enhancements introduced in this stack kernel compared to the previous
stack kernel PL #402.
Review SAP Note 2155366 for known issues in the stack kernel 721 PL #500. This note will be continuously updated.
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.
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.
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.
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.
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.
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
355536 - Importing a SAP license from a le How to limit the size of a developer trace le
FAQ License
This is custom documentation. For more information, please visit the SAP Help Portal 233
1/31/2024
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.
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
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.
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;
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;
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 assume the local MS HW Key until the communication with the ID generator is not possible;
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).
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
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
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
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.
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
This is custom documentation. For more information, please visit the SAP Help Portal 238
1/31/2024
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.
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.
For each group you can de ne one of the following load balancing type:
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.
Important to know
- 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.
- 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
- 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
Related Notes
This is custom documentation. For more information, please visit the SAP Help Portal 241
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 242
1/31/2024
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.
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:
This is custom documentation. For more information, please visit the SAP Help Portal 243
1/31/2024
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 }
Related Notes:
1888038 - Logon Group can not be found
16201 - Background program, timeout, SAPMSSY6
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
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
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
SAP Note 1365796 - Local host name resolution fails in Windows Failover Cluster
lg.png
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.
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)
Interactive Users
3. Implement the source code correction of RSRZLQVA report manually. See SAP Note 51789.
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
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
Describes the SAP Memory Management System, its basic functions, hardware and operating system requirement and some of
the most common issues.
TSV_TNEW_PAGE_ALLOC_FAILED
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
This is custom documentation. For more information, please visit the SAP Help Portal 250
1/31/2024
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
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
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)
rdisp/os_heap_for_restart
(available at the kernel release 72x as of the following patch levels - SAP note 2065315)
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 Windows
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).
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
Extended memory
Private Memory
PAM
2019744 - How to limit overall swap space consumption of the ABAP Server in NW 7.40
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:
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.
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:
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
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.
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.
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:
This is custom documentation. For more information, please visit the SAP Help Portal 260
1/31/2024
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
This is custom documentation. For more information, please visit the SAP Help Portal 262
1/31/2024
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:
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.
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
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
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 |
------------------------------------------------
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:
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
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.
This is custom documentation. For more information, please visit the SAP Help Portal 273
1/31/2024
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.
The report RSMEMORY can be executed from the transactions SE38 or SA38.
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 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 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;
Related Content
Related Documents
mm.png
This is custom documentation. For more information, please visit the SAP Help Portal 275
1/31/2024
Purpose
Overview
Following error appears in dev_disp trace le while starting the SAP system:
ERROR => Es2IResCreate: shmget failed (size= <size>. (17: File exists)
Background
SAP Virtual Machine Container (VM) is activated by 'vmcj/enable = on' pro le parameter
Stop sapstartsrv process as well by sapcontrol (sapcontrol -nr <instance nr> -function
StopService)
Related Content
Related Documents
FAQ Memory
This is custom documentation. For more information, please visit the SAP Help Portal 276
1/31/2024
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:
> showipc 02
Show/Cleanup SAP-IPC-Objects V2.3, 94/01/20
===========================================
Running SAP-Systems (Nr)...:
Using ipcs tool like "ipcs | grep <key>" to identify the owner:
This is custom documentation. For more information, please visit the SAP Help Portal 278
1/31/2024
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.
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
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.
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.
rdisp/plugin_auto_logout -> it may be set to 0, meaning that the resources for the
HTTP(s) sessions are never released
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
Related Content
Related Documents
Types of memory
This is custom documentation. For more information, please visit the SAP Help Portal 280
1/31/2024
CST Expert Content Memory Management
SAP Note 2019744:- How to limit overall swap space consumption of the ABAP Server in NW 7.40
SAP Note 2085980: New features in memory management as of Kernel Release 7.40
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:
Prior to NW7.4 base system, ST02 shows the "Roll area" info like below:
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.
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.
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: What's New in SAP NetWeaver 7.4 (Release 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
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
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.
The memory monitoring functionalities are basically divided in two different parts, which are: Operating System Memory
Resources and SAP System Memory Resources.
RZ20 transaction → SAP CCMS Monitor Templates → Operating System → <Instance Name> → Memory.
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.
RZ20 transaction → SAP CCMS Monitor Templates → Entire System → <SID> → Application Server → <Instance Name> →
R3BasisSystem → Memory Management → R3MemMgmtResources.
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.
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.
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
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
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.
3. Select whether you want to display the last 30 minutes or 24 hour value.
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
SAP Note 2085980 - New features in memory management as of Kernel Release 7.40
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
This page provides references to documentation that explains how to interpret the output of the
command "free" correctly.
Related Content
Related Documents
SAP note 1382721: Linux: Interpreting the output of the command 'free'
mm.png
Purpose
Overview
The size of the EG is obtained from the total of the parameter values:
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 Consumer (to displays the different consumers using EG memory)
as from Netweaver 7.4
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
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
Batch jobs generating spool outputs. If these processes don't issue a commit for sometime
there could occupied EG memory
Related Content
Related Documents
2148571 - Explanation for higher Extended Memory (EM) and Extended Global Memory (EG)
consumption after upgrade to SAP Kernel 7.4x
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
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.
em/initial_size_MB - This parameter speci es how much SAP extended memory is available on the SAP system.
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.
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.
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
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.
EM/TOTAL_SIZE_MB - This parameter speci es how much SAP extended memory is available on the SAP system.
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
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
SAP Note 941735 - SAP memory management system for 64-bit Linux systems
(Use the following Hyperlink with SAP Note/KBA number at end: https://service.sap.com/sap/support/notes/123456)
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.
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 )
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
TSV_TNEW_PAGE_ALLOC_FAILED
mm.png
This is custom documentation. For more information, please visit the SAP Help Portal 299
1/31/2024
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.
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.
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.
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.
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.
For additional information regarding memory management on Linux 64 bit (ES/TABLE = UNIX_STD), see SAP Note 941735.
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).
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.
EM/TOTAL_SIZE_MB: This parameter limits the TOTAL amount of Extended Memory that can be allocated by ALL sessions of an application
server.
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
Related Documents
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.
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.
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/
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.
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.
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.
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.
----------------------------------------------------------------
***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.
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)
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.
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
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.
Management
Troubleshooting
This is custom documentation. For more information, please visit the SAP Help Portal 307
1/31/2024
Useful Tools
F.A.Q.
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.
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.
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:
Another way to identify the HTTP(s) port is checking the dev_ms trace le:
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.
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
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.
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
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
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).
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
This is custom documentation. For more information, please visit the SAP Help Portal 311
1/31/2024
2243625
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
1871681
1918417
2003678
- ADK: Database-based
1900309 statistics
Related Transactions
1907539 SARA: Archive Administration
1919283
1934522
1936505
1936642
1954602
This is custom documentation. For more information, please visit the SAP Help Portal 314
1/31/2024
1983684
1987072
1990075
2024409
2093604
This is custom documentation. For more information, please visit the SAP Help Portal 315
1/31/2024
2170671
2179637
2222074
2439376
This is custom documentation. For more information, please visit the SAP Help Portal 316
1/31/2024
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.
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)
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)
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).
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.).
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 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:
This is custom documentation. For more information, please visit the SAP Help Portal 318
1/31/2024
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"
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:
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:
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)
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
Field Catalog
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.
Filling (program RSAINDBU) or deleting infostructure (program RSAINDDL) mainly belongs to application area BC-CCM-
ADK-AS.
Based on the archiving object check list for relevant application area.
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.
In all other cases the application is responsible to display the data. To nd out the relevant area/component follow the
steps:
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)
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
__________________________________________________________________________________________________________
This is custom documentation. For more information, please visit the SAP Help Portal 321
1/31/2024
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
Text Topic
Object
/BA1/P6_RD Bank Alyzer: Result Data From Cust. Migr. Analysis FS-BA-AN-PA
This is custom documentation. For more information, please visit the SAP Help Portal 322
1/31/2024
/CPD/RM_* Risk Management CA-CPD
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
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 324
1/31/2024
ANALYSIS_A Object for Analysis GRC-RM
^ TOP
Text Topic
Object
BA1_R0_FVS Bank Analyzer: Detail Log for Fair Value Server FS-BA-PM-GM-PVC
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
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 326
1/31/2024
CML* Consumer and Mortgage Loans FS-CML
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
This is custom documentation. For more information, please visit the SAP Help Portal 328
1/31/2024
^ TOP
Text Topic
Object
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
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
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_SAFAALU Standard Audit File for Tax Purpose (SAFT) for LU XX-CSC-FIAA
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
^ TOP
Text Topic
Object
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
^ TOP
HR archiving objects are listed in a seperate table: Assignment of HR Archiving Objects to Application Components
Text Topic
Object
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 333
1/31/2024
INV_* Bill/Payment IS-U-TO-ARC
^ TOP
Text Topic
Object
^ 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
^ TOP
Text Topic
Object
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
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
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
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 337
1/31/2024
PP_WKC Work Centers PP-BD-WKC
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 338
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 339
1/31/2024
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 340
1/31/2024
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
^ TOP
Text Topic
Object
This is custom documentation. For more information, please visit the SAP Help Portal 341
1/31/2024
^ TOP
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.
Country-speci c archiving objects for Austria, Germany and Switzerland are speci ed in a seperate table in the lower section of
this page.
This is custom documentation. For more information, please visit the SAP Help Portal 342
1/31/2024
HR99STERM Termination Group PY-XX-RS
This is custom documentation. For more information, please visit the SAP Help Portal 343
1/31/2024
HRCEGTINF Egypt: Tax Information PA-PA-EG
This is custom documentation. For more information, please visit the SAP Help Portal 344
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 345
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 346
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 347
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 348
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 349
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 350
1/31/2024
^ TOP
This is custom documentation. For more information, please visit the SAP Help Portal 351
1/31/2024
HRCATSEMRT Altersteilzeit (A) PA-PA-AT
^ TOP
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
ASCORR02
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
This is custom documentation. For more information, please visit the SAP Help Portal 353
1/31/2024
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:
#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.
2. Write that you require a credential for the Adobe Interactive Forms scenarios.
Related Content
Related Documents
Related Notes
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
Batch
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.
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]
[icxxconn.c 2271]
[Thr 11084] *** WARNING => Connection request from (30/31/0) to host:
http, service: 80 failed (NIEHOST_UNKNOWN)
[Thr 11084]
[icxxconn.c 2271]
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
Solution
Related Content
Related Document
Related Notes
308977:Repositories BIE_QMM, BIE_NET, HME_CONTENT,ED,A2 and
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.
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.
In this acitvity the Feeder System Company Code (representing the Legal Org Unit in ECC) is assigned to the
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
In this IMG Activity legal units are de ned as part of th eorganization structure in SAP GTS. This Legal
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
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.
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
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)
Example AG is one of the partner functions assigned to the partner group PGSPL2
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.
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.
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
Example: Legal regulation E01 (Export Administration Regulations (E01)). This Legal regulation is valid for Export only.
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.
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
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
This is custom documentation. For more information, please visit the SAP Help Portal 361
1/31/2024
Assignment of Determination Strategy for the procedure for Determining Active Legal Regulations
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
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.
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
Example: Document Type EXPORD (Customs Document (Export) - Sales Document Level) This document type is valid for
Exports only.
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
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.
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.
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
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
Example: Customs Item Categories EXDLV1, EXORD1, FI0A & IMORD1 are activated for Legal Control checks.
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
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.
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.
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
saprouter 32bit - The system cannot execute the speci ed program (on Windows)
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
This is custom documentation. For more information, please visit the SAP Help Portal 366
1/31/2024
This is custom documentation. For more information, please visit the SAP Help Portal 367
1/31/2024
The Hosts le standard format is de ne following the information in this link : https://wiki.scn.sap.com/wiki/x/i4IjIQ
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").
While logged on as "root", we start by using netstat to identify the "server port" of the UDS connection:
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):
"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.
Conclusion:
We have several error scenarios on which some SAP process cannot start because some other process has already bound its
TCP port.
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:
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:
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:
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.
The NIPING tool could be used to check a connection during a long life time connection.
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.
The message "connect to server o.k." means that the connection reached the destination.
This is custom documentation. For more information, please visit the SAP Help Portal 371
1/31/2024
If the error occurs at the SAPGUI, you should always select "Show detailed error messages" to get more information.
"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.
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.
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.
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.
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.
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
This error can be caused by a physical network error, a rewall idle timeout or a "black hole router".
Check for your network between the client and the server.
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.
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
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
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.
As an alternative, the following command can be used. Notice that it should be all in one line.
Related Content
Related Documents
Purpose
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:
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.
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.
This is custom documentation. For more information, please visit the SAP Help Portal 377
1/31/2024
Related Content
Related Documents
saprouter 32bit - The system cannot execute the speci ed program (on Windows)
Purpose
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.
The saprouter 32bit package for Windows 32bit is listed at the SAP Marketplace Software Download
Corner as "IA32" architecture:
https://support.sap.com/swdc
Additional Components
SAPROUTER
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
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
Management
Troubleshooting
This is custom documentation. For more information, please visit the SAP Help Portal 379
1/31/2024
Kernel update: referenced symbol not found, runtime de nition of the symbol was not found
877795 - Problems with sapstartsrv from Release 7.00 and 6.40 patch 169
Miscelaneous Info
F.A.Q.
Purpose
Overview
This is custom documentation. For more information, please visit the SAP Help Portal 380
1/31/2024
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.
It is possible to monitor these process status using the sapcontrol client calling the GetProcessList.
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;
wrong
internal
states
icman ICM not running or stuck not
running
wrong
internal
states
Related Content
Related Documents
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:
-------------------------------------------
<time>
startup of Instance failed [...]
This is custom documentation. For more information, please visit the SAP Help Portal 382
1/31/2024
Steps
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.
Related Content
Related Documents
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.
When starting a SAP system operating on top of MaxDB you have to start three components:
the X-Files
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.
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">
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:
The command imports the new manifest and makes the service ready to use. Now you can start the X-Server with the new
command:
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.
To administrate your service you need the svc* commands from Solaris. To start your service please use:
svcs -xv
svcs -p xserver
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>
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>
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.
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.
ps -ef|grep sapstartsrv
kill -9 <PID>
cd /tmp
ls -al
If .sapstream5<NN>13 exists, (where <NN> = instance number), manually remove it with command
rm .sapstream5<NN>13
If les are invalid, please backup executable folder, then copy a new set of kernel les from a running well instance.
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
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.
After system startup, you can check the processes status with OS command.
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
__________________________________________________________________________________________________________
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
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
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
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
SAP KBA 1878425 : kernel update: referenced symbol not found, runtime de nition of the symbol was not found
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
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
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 following property lists the protected web methods of corresponding instance:
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
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
AccessCheck
GetInstanceProperties
GetNetworkId
GetProcessList
GetSecNetworkId
GetSystemInstanceList
The above in bold are the methods which are not protected.
Related Documents
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).
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.
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.
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.
This is custom documentation. For more information, please visit the SAP Help Portal 403
1/31/2024
Telnet client
Related Information
SAP note 877795, "Problems with sapstartsrv as of Release 7.00 & 6.40 patch 169"
This is custom documentation. For more information, please visit the SAP Help Portal 404
1/31/2024
Link to File
This is custom documentation. For more information, please visit the SAP Help Portal 405
1/31/2024
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.
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.
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.
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".
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 sapstartsrv uses the SSL server certi cate of the SAPSSLS.pse of the local instance.
Related Content
Related Documents
There are different ways to get the kernel release and patch level of sapstartsrv:
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
UNIX
getsapversion command
getsapversion sapstartsrv
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
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.
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:16:27 Restart service by user "<user who trigger the method>" from "<IP> / <hostname>"
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
This is custom documentation. For more information, please visit the SAP Help Portal 410
1/31/2024
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"
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)
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 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.
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.
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:
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.
UNIX:
LD_LIBRARY_PATH=/usr/sap/<SID>/<instance name>/exe:$LD_LIBRARY_PATH;
export LD_LIBRARY_PATH;
WINDOWS:
1. Run "services.msc";
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:
_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)
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)
_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)
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;
This can cause several problems throughout different scenarios, but mainly on upgrade procedures. Further details on SAP note
1301712.
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:
There can be another sapstartsrv process (as below) but it will play no parts in the startup of
the instance.
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:
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).
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:
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":
SAPUXUSERCHECK FILE
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:
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.
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.
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:
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:
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.
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.
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.
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.
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:
IV. SI_EADDR_NAVAIL:
***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.
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.
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.
*** 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:
Straightforward. Dispatcher shut down as the gateway reader could not be started.
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.
*** 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:
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:
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:
--> 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.
*** 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*.
*** 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
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.
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
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.
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...
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.
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.
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.
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.
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
1. Database instance
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”.
When the process exists, the above command shows like this:
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.
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:
errors:
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:
SAP Note 1265456 SAP system does not start after kernel upgrade
Case 2:
30.11.2013 18:46:21
GetProcessList
OK
26681
Root cause:
Solution:
Case 3:
Root cause:
The version of the sapstartsrv.exe was different between DIR_CT_RUN and DIR_EXECUTABLE.
Solution:
SAP Note 1043592 MSCS: Cluster Resource Monitor Crashes on W2K3 SP2
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:
255 . ****
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
Root cause:
Solution:
Case 5:
After kernel patching, the system doesn't come up but the startsap commands runs successful. The dispatcher was
immediately down and no
Stderr2 says:
Command: dw.sapABC_DVEBMGS01
pf=/usr/sap/ABC/SYS/pro le/ABC_DVEBMGS01_walldorf
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
***
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
Root Cause
Solution:
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:
*** DP_FATAL_ERROR => Gateway died with status 2 - I better exit now
[nixxi.cpp 3740]
Root Cause:
The service port 3300 was declared twice in the /etc/services le.
sapgw00 3300/tcp
sapgw00s 3300/tcp
Solutoin:
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) **** 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]
Root Cause:
Solution:
Case 9:
When you execute sapcontrol without host opetion, you get: NIECON_REFUSED (WSAECONNREFUSED) error. However, it
success with -host opetion.
For example:
but
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.
----
GetProcessList
OK
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
---
-->here, you can see programs (message server, disp+work and IGS) are up and running.
----
GetProcessList
OK
----
This is because 'Start_Program_n' command with the program is missing in the pro le le which sapstartsrv starts with.
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)
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 UNIX domain socket or Window's named pipe, and restart sapstartsrv.
Case 1:
sapstartsrv process exists but the corresponding UNIX Domain Socket doesn't exist.
cat sapstartsrv.old
---------------------------------------------------
trc le: "sapstartsrv.log", trc level: 0, release: "741"
---------------------------------------------------
pid 2134
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:
Solution:
Case 2:
A trace le called sapstartsrv_ccms.log was generated in work dir. The content of i ends with the information:
Root Cause:
Please refer SAP note 1916333 sapcontrol error "FAIL: NIECONN_REFUSED" due to agent.log le
Solution:
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
Reason
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
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)
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
Purpose
To help with troubleshooting if you are in trouble.
Overview
Possible causes
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
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 not, a rewall may refuse the connection. Release the port in rewall.
Related Content
Related Documents
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.
Following the relevant parameter, this program will recognize in order to perform its activities:
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;
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
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
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):
To restart a program, you can use the following syntax in the start pro le instead:
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:
Windows:
Related Content
Related Documents
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
SAP Tools
This is custom documentation. For more information, please visit the SAP Help Portal 445
1/31/2024
Wiki Documentation
DUMPS
TRACES
TROUBLESHOOT
STATDUMP Report
CCMS Syslog
DISPATCHER
ENQUEUE
This is custom documentation. For more information, please visit the SAP Help Portal 446
1/31/2024
MESSAGE SERVER
DUMPS
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.
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.
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.
2. Syslog format
Length of syslog format depends of the system:
NON-UNICODE UNICODE
180 360
NON-UNICODE UNICODE
320 640
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.
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 Local system log shows the logs for the connected application server.
The Web Services method also enables an option to analyse the syslog from Operating System level with the sapcontrol toll:
c. Alert Monitor
Another way to analyse these system log messages is via transaction RZ20.
Syslog Monitor
This is custom documentation. For more information, please visit the SAP Help Portal 449
1/31/2024
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:
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:
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
This is custom documentation. For more information, please visit the SAP Help Portal 450
1/31/2024
862 Reduce size of system log le
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 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
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;
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
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
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.
HPUX: adb
AIX: dbx
LINUX: gdb
Usage:
Related Content
Related Documents
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.
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.
All debuggers mentioned on this WIKI have the same initial command.
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:
HPUX adb
AIX dbx
LINUX gdb
This is custom documentation. For more information, please visit the SAP Help Portal 459
1/31/2024
Once at the dbx prompt, type where
Related Content
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.
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
This is custom documentation. For more information, please visit the SAP Help Portal 460
1/31/2024
dev_disp Dispatcher
dev_rd Gateway
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
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"
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
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
Related Content
Related Documents
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.
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.
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
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.
Related Content
This is custom documentation. For more information, please visit the SAP Help Portal 470
1/31/2024
Related Documents
Management
Troubleshooting
F.A.Q.
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.
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.
Purpose
In case you have update requests remaining on SM13 transaction, you may want to know what can be done with them.
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.
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?
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.
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.
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)
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
CST Expert Content: Reports RSM13001 and RSM13002: description of the functions available
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
This is custom documentation. For more information, please visit the SAP Help Portal 475
1/31/2024
There are 4 main tables involved in update request. These tables and its goal are described below:
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;
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.
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;
This is custom documentation. For more information, please visit the SAP Help Portal 477
1/31/2024
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.
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.
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
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
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
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.
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.
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
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
3. Select whether you want to display the last 30 minutes or 24 hour value.
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
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
Related Content
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.
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.
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.
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
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:
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
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.
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
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;
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.
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.
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.
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
Update Server: application server were the update record should be processed (involving UPD &
UP2 work processes).
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
This image shows ow of information. Communication is stablished between involved application servers (UPD Client & UPD
Server) through Dispatcher -> Message Server -> Dispatcher.
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.
Possible reasons
Over ow of the UPD or UPD2 Dispatcher Queue on Update Server (7.2x)
*** 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.
Dispatcher trace from UPD server or UPD client application server will show disconnection to Message Server:
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]
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:
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.
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).
UPD work process trace le (dev_wx) from update server will show:
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.
Related Content
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
KBA 2322108 - Update requests stay in initial status, enqueue lock entries remain after end of
session
KBA 2148571 - Higher Extended Memory (EM) and Extended Global Memory (EG) consumption
in kernel 7.4x
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