September 23, 2009

BB note 001 - Performance issue - Yellow dispatcher - Dialog is full - SAPLSENA program RSMONICDP table

Summary:

End-users are unable to logon to the BWP system.
All work processes are occupied by user ZZZBWP with program SAPLSENA (de/enqueue process).

This is due to application launching large amount of enq/deq for locks.

Investigation of application that utilize long RFC queue locks.
Profile parameters have been adapted to allow more users in parallel with RFC.

Symptoms:

1. Performance issue.

2. DIA Work Processes are all being used by SAPLSENA program.

3. This disallows other dialog logon and bad system performance.

4. System was available but unavailable for user login is most cases.

5. Process hang. SAP response time is slow due to all work process being used by one program.

Cause:

A. SAPLSENA program is run by user ZZZ* and occupies all dialog WP.
This program is a lock handler tool which does an enqueue/dequeue operations.

B. Application issue.

Solution:

1.0 Go to SM12 and look for old lock queues. Delete old lock queues and restart SAP system

2.0 Perform DBCC checktable for affected table in database level. In this case, we did DBCC check for RSMONICDP table.
2.1 In your SQL query window execute below

DBCC CHECKTABLE ('Database.RSMONICDP')
GO

See link below for more info on errors and usage:

http://msdn.microsoft.com/en-us/library/ms174338.aspx

2.2 Troubleshoot if needed.

3.0 Do a clean restart of SAP and DB if problem persist or if you can no longer login to SAP.

When system is temporarily available. You can do other steps below:

4.0 Best practice to temporary lock the identified program user. This will disable the program to run.

Implement parameter changes in step 5.0 and 6.0.

5.0 Review note 527481, 74141, and 986373. Below are particular parameters adjusted with regards to SNOTE 74141.

rdisp/rfc_min_wait_dia_wp
rdisp/rfc_use_quotas

6.0 Review note 916706. Disable 'RFC standard Scheduling'
6.1 Login to SAP (this is the hard part for this case and we had to restart system to get random DIA process free)
6.2 Go to transaction SE38
6.3 Enter program RSA1_TRFC_OPTION_SET.
6.4 Execute
6.5 Un-check 'RFC standard Scheduling'. Make sure that all options are unchecked.
6.6 Monitor the system
6.7 Unlock process user ZZZ* if required.

The procedure above solved the issue. Good luck.