1565578 - Lock Table Overflow - ENSA 1
Symptom
Some of the following symptoms occurs:
- The work process trace (dev_w*) shows the following error "*** ERROR => EqSet1(): GetFreeArg() failed, ArgTable overflow";
- ENSA traces like dev_enqwork report errors like:
[Thr 15300] ***LOG GEA=> [enxxmenq.h 2035]
[Thr 15300] ***LOG GZZ=> EnqueCluster: rtc=16 [enxxmenq.h 2036]
[Thr 15300] *** ERROR => EnqueCluster: EntryTable overflow [enxxmenq.h 2023]
[Thr 15300] ***LOG GZZ=> EnqueCluster: rtc=16 [enxxmenq.h 2036]
[Thr 15300] *** ERROR => EnqueCluster: ArgTable overflow [enxxmenq.h 2014]
[Thr 15300] *** ERROR => EnqueCluster: EntryTable overflow [enxxmenq.h 2023]
- The error pops "A system error has occurred while locking" up and the transaction fails;
- Syslog (SM21) shows "SAPSYS GE G Lock table overflow" or some of the following errors:
"Lock table overflow" (Message no. MC603).
ENQ 000 GEA Internal lock administration error
ENQ 000 GZZ > EnqueCluster: rtc=16 enxxmenq2036
ENQ 000 GEA Internal lock administration error
ENQ 000 GZZ > EnqueCluster: rtc=16 enxxmenq2036
DIA 026 042 EGD > Error locking table TBTCO
DIA 026 042 EGD > Error locking table TBTCO
- On SM12 -> Extras -> Diagnosis system returns errors during lock operation.
- The log file ENQHISOVR inside of ENSA work folder shows:
EnqStoreTopHist: Lock Table Overflow at yyy/mm/dd 12:34:56 caused by
Top user 1:
Cnt= 56382 Cli=<CLIENT> Uname=<USER> Tcode=<CODE>
Owner1=20170306140359329206000202<instance>....................
Owner2=20170306140359329206000202<instance>....................
- On SM12 -> Extras -> Statistics the following "Maximum Fill level" reached the "Maximum Number..."
Maximum Number of Lock Owners 112878
Maximum Fill level 112878
Current Fill Level 4
Maximum Number of Lock Arguments 112878
Maximum Fill level 112878
Current Fill Level 79
Maximum Number of Lock Entries 112878
Maximum Fill level 112878
Environment
All SAP NetWeaver systems
Reproducing the Issue
Create more additional enqueue locks than the supported by the system configuration.
Cause
This error occurs because there is an overflow in the lock table and it is not possible to set further locks.
The overflow can occur due to the following reasons:
- The lock table is too small for loads encountered on the system.
- An application is creating a large number of locks at once.
Check on ENQHISOVR file from the work directory if an application/transaction has created an unusual large amount of locks
Resolution
- Check which Enqueue Server is running on your system (Standalone Enqueue Server or Classical Central Instance).
This can be seen on transaction SM12 -> Extras -> Diagnosis. It will show "Lock management operation mode":
a) In case of Standalone Enqueue Server 1 , information shown will be:
b) In case of Central Instance, one of these outcomes (depending on the application server where SM12 is executed):
c) In case of Standalone Enqueue Server 2 (ENSA 2.0), refer to KBA 2917868 - ENQU, ENSA 2.0: Lock Table Overflow
But if system has Standalone Enqueue Server 1 (ENSA 1), then proceed as following:
-
Confirm that a lock table overflow has occurred by going to SM12 -> Extras -> Statistics and looking at the maximum fill level.
If the maximum fill level is the same as maximum number locks Owners, Arguments or Entries, this indicates an enqueue table overflow.
Note that the statistics are reset every restart, therefore, the statistics only will be useful if no restart has been made after the problem.
-
In order to avoid this situation you should increase the size of the profile parameter 'enque/table_size'. This parameter defined the size of the lock table in KBytes.
When running Standalone Enqueue Server, enque/table_size value shown on RSPARAM or RZ11 should not be taken into account.
The value can be checked instead on following line from dev_enqsrv trace file, written when the Enqueue Server is started:
EnqLockTableCreate: create lock table (size = <value in bytes>)
Parameter should be increased on the profile where the Enqueue Server is defined.
In the ENQ trace file dev_enqsrv, find out the profile which is used by the enqueue server, then change/set the parameter in the profile.
Restart is needed so that change takes effect.
SAP Note 13907 contains more information on setting the enqueue table size. SAP Note 746138 also helps with enqueue overflow analysis
See Also
79084 - Syslog: Error when writing the lock handler file
13907 -System error in the block handler, overflow lock table
746138 - Analyzing lock table overflows
2138377 - Output delivered by "Top Capacity Used" menu in SM12
1384191 - SM50: Many processes in status "holds ENQ"
Keywords
ASCS, SCS, enque ,ENQ_OVERFLOW, EnquServerException, enque/table_size, overflow, ArgTable overflow, EntryTable overflow, ENSA1, ENSA2, ENQHISOVR, lock table is too small
Products
| Products |
|---|
| SAP NetWeaver all versions |
wechat: ywkonline
专注于SAP运维、升级、迁移
出处:http://www.cnblogs.com/weikui/
浙公网安备 33010602011771号