Enqueue Test
The Enqueue service allows SAP ABAP applications to lock data so that only they can use it. Locking the data prevents parallel changes to the same data, which would lead to data inconsistency. There is one instance of an enqueue service for each system - this instance becomes the central instance of the system by virtue of having this service. This Enqueue Client collects performance values for requests from other instances to this service. The Enqueue server provides the enqueue service for the system.
This test monitors the performance of the enqueue service and reports how well the owner IDs in the lock table were utilized. In addition, this test reports how well the elementary lock IDs were utilized and how many errors were encountered in the enqueue work process.
Target of the test : A SAP ABAP System
Agent deploying the test : An internal/remote agent
Outputs of the test : One set of results for every SAP ABAP System being monitored.
Parameter | Description |
Test Period |
How often should the test be executed |
Host |
Host name of the server for which the test is to be configured. |
PortNo |
Enter the port to which the specified host listens. |
Connection Type |
Specify how this test should connect to the target SAP ABAP System and collect the required metrics. By default, this flag is set to Application Server indicating that the test uses the IP address of a SAP ABAP Instance connected to the target SAP ABAP System to collect the required metrics. If this flag is set to Logon Group, then, the eG agent automatically connects to the logon group, chooses any one of the available SAP ABAP Instances within the group to connect to the target SAP ABAP System and collects the required metrics. |
SID |
Specify the three-digit server-specific unique identification code associated with the target SAP ABAP System here. The SID helps in uniquely identifying the target SAP ABAP System. |
Application Server |
This parameter appears only when the Connection Type flag is set to Application Server. For the eG agent to connect to the target SAP ABAP System and collect metrics, this test should be configured with the IP address of any of the SAP ABAP Instances associated with the target SAP ABAP System. Specify such IP address in this text box. |
Message Server |
This parameter appears only when the Connection Type flag is set to Logon Group. Specify the IP address of the SAP Message Server to which the target SAP ABAP System is connected to. |
Logon Group |
This parameter appears only when the Connection Type flag is set to Logon Group. A logon group is a group of servers that belongs to one SAP system. Logon groups are used to automatically distribute user logons to individual instances or to groups of SAP instances (Applications Server). Specify the name of the logon group that should be used by the eG agent to connect to any one of the SAP ABAP Instances within the group and collect the required metrics from the target SAP ABAP System. |
ClientName |
Specify the ID of the client system as what the eG agent will be connecting to the SAP ABAP instance. To know how to determine the client ID to use, follow the instructions provided in Determining the Client ID/Name for the eG Agent to Connect to the SAP ABAP Instance. |
SAPUser |
Typically, to connect to a SAP ABAP instance and run tests, the eG agent requires the permissions of a SAP user who has been assigned |
Password |
The password of the specified SAPUser. |
Confirm Password |
Confirm the password by retyping it here. |
SysNo |
An indicator of the TCP/IP port at which the SAP server listens. For example, for a server that listens at port 3200, the SysNo will be ‘00’. Similarly, if the SAP server port is 3201, the SysNo will have to be specified as ‘01’. Therefore, in the SysNo text box specify the system number of the SAP server with which the specified client communicates. To know the system number for the ABAP server being monitored, follow the procedure detailed in Identifying the SAP Router String and System Number. |
Router |
If the SAP client with the specified ClientName exists in a network external to the SAP server, then a router will be used to enable the server-client communication. In such a case, specify the router string of the router in the Router text box. If both the client and the server exist in the same network, then specify ‘none’ against the Router text box. To know what is the SAP Router string for the ABAP server being monitored, follow the procedure detailed in Identifying the SAP Router String and System Number. |
InstanceName |
This is set to none by default. This implies that the eG agent automatically discovers the instance name at run time. |
Timeout |
Indicate the duration (in seconds) for which this test should wait for a response from the SAP ABAP instance. By default, this is set to 120 seconds. |
JCO Version |
The eG agent uses the SAP JCO library to connect to the SAP ABAP system and pull out metrics. To enable the eG agent to make this connection and query the metrics, you need to specify the version of the SAP JCO library that the agent needs to use. For instance, to instruct the eG agent to use JCO v2.1.19, it would suffice if you specify the ‘major version number’ alone against JCO Version – in the case of this example, this will be 2.x. Note that if you have downloaded the SAP JCO CONNECTOR files for SAP JCO version 3 from the SAP market place (as instructed by Downloading the SAP JCO Connector files Required for Monitoring ), then the JCO Version configuration should be 3.x. |
IsPassive |
If the value chosen is Yes, then the server under consideration is a passive server in a SAP ABAP INSTANCE cluster. No alerts will be generated if the server is not running. Measures will be reported as “Not applicable” by the agent if the server is not up. |
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Client enqueue frequency |
The rate of Enqueue operations (logical data locks) coming from another instance to the central instance. |
Locks/Min |
This is a relative measure of activity in the system, useful only for analyzing unusual events or patterns of activity in an application server. The SAP ABAP enqueue service is capable of handling very high rates of operation. Should an alert occur, it indicates that the wait times for lock operations are having an adverse effect on the overall dialog response time. These situations are of a temporary nature and should correct themselves. They are likely to occur only under unusual circumstances, such as massively parallel execution of RFC calls to a particular server. |
Server queue length |
The percentage length of the wait queue for the enqueue service |
Percent |
If an error occurs in this MTE, analyze the problem by executing the following diagnosis function in the lock management: Call Transaction SM12 and choose Extras -> Diagnosis or -> Diagnosis in update. With SAP’S agreement, you can use the extended diagnosis functions that are displayed by entering the OK codes “TEST”. |
Owner names utilization |
Indicates the percentage of owner IDs in the lock table that are currently utilized. |
Percent |
Every time the enqueue server receives a lock request, the system checks the lock table to determine whether the request collides with an existing lock. If this is the case, the request is rejected. Otherwise, the new lock is written to the lock table. This lock table available in the main memory of the enqueue server records the current locks in the system. For each elementary lock, the table specifies the owner, lock mode, name, and the fields in the locked table. If the value of this measure is close to 100%, it indicates that all the owner IDs in the lock table are exhausted and hence, new locks cannot be created unless the existing locks assigned to the owner IDs are released. |
Granule arguments utilization |
Indicates the percentage of lock arguments in the lock table that are currently utilized. |
Percent |
The locks of different owners or with different lock modes containing the same lock argument occupy one entry in the lock table. If the value of this measure is close to 100%, it indicates that all the lock argument s in the lock table are exhausted and new locks cannot be created unless the existing locks are released. |
Granule entries utilization |
Indicates the percentage of elementary locks in the lock table that are currently utilized. |
Percent |
An elementary lock corresponds to a data record in the lock table. For each elementary lock, the table specifies the owner, lock mode, name, and the fields in the locked table. If the value of this measure is close to 100%. It indicates that all the elementary locks in the lock table are utilized and hence, new locks cannot be created unless the existing elementary locks are released from the lock table. |
Enqueue work process errors |
Indicates the number of errors encountered by the enqueue work process. |
Number |
Ideally, the value of this measure should be zero. |
Enqueue work process error rate |
Indicates the rate of enqueue work process errors encountered. |
Errors/Min |
|