If you need some basic and important information about SAP lock table overflow, you have come to the right place. The application protocol that is created to ensure that one business object is changed by one user, execution or transaction at one time is called SAP lock. Actually, SAP is an application that can place a request so it can lock the object like sale order, and then the application can be proceed with change logic when only the lock request is granted, but this can happen only when the changes are completed and then the lock on the object can be released. The SAP lock request can be held in memory central lock table with size that is pretty well configurable via SAP transaction RZ10. This lock request can be granted only when no existing lock is related to the object in the central look table. The database lock is not the same as the SAP lock because the SAP lock is related only on level of business objects and one object can be stored in many tables. It can occur to you to face with the problem of SAP lock table overflow, but like every problem, it has solution and all the information will be explained bellow.
The SAP Lock Table Overflow Guide
Like it is already mentioned, SAP can manage locks using lock table. That lock table will contain all of the information that are related to those locks that are holding the lock, or which of the locks are held currently etc. The lock table can have specified size through the SAP parameter enque/table_size. That parameter enables the size of the table to limit the number of locks, lock owners or lock names. If that size is exceeded, this issue can occur. Actually, this overflow can happen if the lock table configuration is too small, if there is a large number of locks, if the update process is hanging and if the report is running with improper selection criteria.
How to Identify This Issue
Identifying this issue can be very obvious. If it happens to you to find error in the SM21 transaction log or the ST22 dumps, maybe you have this issue. Actually, to be sure of this care, you will have to look if the error is a message named LOCK_TABLE_OVERFLOW, that actually is Internal lock administration error that is telling you that is sure that this issue really you got it. So, with this dumps you get the idea of the issue problem.
What Parameter Needs to be Changed if We Want to Increase the Lock Table Size in SAP?
If you want to increase the size of the lock table, you will have to change the enque/table_size parameter. Here you have to use RZ10 transaction. The parameter has default value that is 32768. Also, the value can have minimal version that can be set – 4096, but also there can be maximum value – 102400. But, you will have to pay attention that the unit of the value of parameter is in KB.
How to Change the SAP Parameter
If you have problem that you don’t know how to change the SAP parameter, just follow the instructions. First, go to RZ10, then select the instance profile of the server of which you like to change the parameter. When you select the profile, next you have to select the extended maintenance button and press on the button to change it. You will notice a screen that will be displayed to you and there are shown all the parameters. The user is enabled to search or create for the parameter and insert/change the value that is desired. When the value is inserted in the box, in the next text box you have to click on the copy button so it can be copied in the next screen, then you click SAVE and activate the profile, you press no to the next box, and when you will get the request of activating the profile, you click yes and restart the application server if you want the parameter to take effect.
How to Resolve This Issue
Like it is already mentioned above, there are several reasons why this issue can happen, but all of them can be resolved. If you want to solve this issue problem, all you have to do is follow the instructions bellow.
First, you will have to increase the size of the lock table, better said to change the parameter using RZ10 transaction. If you do not know how to do it, you have the needed information on the previous chapter. There is also option to determine the optimal value for any parameter, so you can look at the Statistics that can be found from SM12 > Extras > Statistics.
The next thing if you want to resolve the issue is to increase the number of enqueuer work processes. If you don’t know how to do it, just follow the instructions bellow.
How to increase the number of work processes?
Actually, the work processes are used if you want to execute some particular job in the SAP system. There are several types of work processes like:
- Dialog work process (DIA) that is used for execution of dialog steps through the active users, for every dispatcher at least 2 dialog work processes can be configured.
- Update work process (UPD) it is used for execution of update tasks with at least one update
- Background work process (BTC) for background jobs
- Spoil work process for passing sequential data to printers
- Update2 work process that is similar to UPD
- Enqueue work process for administer lock table in the shared memory.
If you need to increase the number of work processes, you will have to change their parameters through RZ10 transaction. Parameters:
rdisp/wp_no_dia
rdisp/wp_no_btc
rdisp/wp_no_spo
rdisp/wp_no_enq
rdisp/wp_no_vb
rdisp/wp_no_vb2
Conclusion
If we assume everything, we can see the reasons why can this issue happen and how to resolve it. On that way you are enabled to solve the issue of SAP lock table overflow and deal with it, just change the parameter for improving in the size, and increase the number of work processes.