SM21显示大量进程类型为ENQ的Internal lock administration error

SM21显示大量进程类型为ENQ的Internal lock administration error

主要关联参数:enque/table_size,rdisp/wp_no_enq。原因是ENQ表溢出,详细分析参考如下解释,解释中相关参数的限制值因服务器配置、SAP版本不同而不同,可用RZ11查看参数的详细解释和限制

What is lock table over flow ? How to resolve lock table overflow issue ?

This article answers the below queries ?

  • What is lock table overflow ?
  • How to identify lock table over flow issue ?
  • What is the parameter to be changed to increase lock table size in SAP ?
  • What is the reason for lock table overflow ?
  • How to resolve lock table overflow ?

—————————————————————————————–
What is lock table overflow ?
SAP manages locks using lock table. The lock table contains all of the informaton related to locks like who is holding the lock and which locks are currently held etc. The size of the lock table can be specified by the SAP parameter enque/table_size. The size of the lock table limits the number of locks, lock owners and lock names. If this size is exceeded, then the lock table overflow occurs.
How to identify lock table overflow issue ?
In SM21 transaction log and ST22 dumps, if you find any error messages like LOCK_TABLE_OVERFLOW, Lock table overflow, Internal lock administration error it means there is a lock table overflow issue.

What is the parameter to be changed to increase lock table size in SAP ?
Parameterenque/table_size to be changed to increase or decrease lock table size using RZ10 transaction. Default value of this parameter is 32768. The min value that can be set is 4096 and max value is 102400. The unit for this parameter is KB.

As this is not dynamic parameter, for the new value to take effect, a system restart is required after modifying the parameter.
What is the reason for lock table overflow ?
A lock table overflow can occur due to

  • The lock table is configured too small (i.e value set to enque/table_size parameter is very low)
  • Due to improper design of application which sets a large number of locks
  • Number of enqueue worprocesses configured in a sap system are less and update is very slow/hanging due to which lots of locks are accumulated in lock table
  • Running a custom report with improper selection criteria (like very long time periods data pull) which sets so many locks & eventually lock table overflow occurs

How to resolve lock table overflow ?

  • Increase the size of lock table i.e increase the parameter enque/table_size value using RZ10 transaction.

          To determine the optimal value for this parameter, you can check the maximum locks set so far in the history and the current number of locks set from SM12 -> Extras -> Statistics

  • Increase the number of enqueue workprocesses

其他参考信息:

To Do Checklist:

1) First check the user who has caused the issue. For this go to following path: 

/usr/sap/<SID>/<Instance_directory>/work/ 

Check the file “ENQHISOVR” 

Check last 10 lines of this file. You will get the users and the transactions that caused the issue. 

2) Check with the user what was he doing with the transaction 

3) If its occurring frequently, try to increase lock table size by another 20,000 

4) Further, you can also configure CCMS alerts by setting a threshold to 80%. To warm you before the issue of Lock Table Overflow. 
 

Personal Experience:

The issue was because of a background job that was trying to process thousands of Idocs, as a result it was placing locks on table EDIDC. We review the program logic and suspended the background job from execution. 

我们的问题分析

根据日志显示,ZMM069这个事务代码导致了大量的锁失败,问了下MM模块的同学,说是这个事务代码有个批次输入区间功能,报错的时候用户输入了一个不合理的区间,导致锁表瞬间爆掉。

所以,是否需要增大锁表容量(enque/table_size)还值得思考,像这种作死的操作,如果锁表容量设置的太大,反而会引发更严重的问题。

SM21显示大量进程类型为ENQ的Internal lock administration error
SM21显示大量进程类型为ENQ的Internal lock administration error

如若转载,请注明出处:https://www.gavindong.com/7384.html

微信沟通
自2021年2月16日开始,全站文章免费阅读。