Saturday, 2 June 2012

How to avoid “DEBUGGING IMPOSSIBLE” dump in ST22 of sap?


This article answers the following queries:

ü  What is debugger?
ü  What is debugging?
ü  What is the reason for “DEBUGGING IMPOSSIBLE” dump in ST22?
ü  How to avoid “DEBUGGING IMPOSSIBLE” dump in ST22 of sap?
ü  What is the parameter used to increase or decrease debugged sessions in SAP?
ü  Usually, in which role of sap systems, debugging can be done?
ü  How many dialog work processes can be in debugging mode in SAP as per recommendation in development systems?
ü  What is the reason for system performance issues, if large numbers of developers are doing debugging in an SAP system simultaneously?
ü  Is it suggested to perform debugging in production systems? If not, why?
-------------------------------------------------------------------------------------------
What is debugger?
The debugger is a programming tool that can be used to execute ABAP programs line by line or section by section. With this tool, you can display data objects and check the flow logic of programs.

What is debugging?
Debugging is the process of executing ABAP programs line by line or section by section. This process will be done usually by developers to analyze the flow and issues (like performance problems etc) in the ABAP programs.

What is the reason for “DEBUGGING IMPOSSIBLE” dump in ST22?
In real time scenarios, we may see dump like “DEBUGGING IMPOSSIBLE” in ST22 transaction of SAP as part of monitoring system.  Also, developers might have complained to Basis team that they are not able to debug in SAP system and while they are trying to do debug, they are encountering “DEBUGGING IMPOSSIBLE” dump. The short text of the dump says “ABAP programs cannot be debugged currently”.


































So, it is responsibility of Basis administrator to avoid those dumps and help developers to debug in development systems.
Usually debugging will be done in development systems. It is not suggested to allow debugging in production systems as it impacts system performance because work processes that are in debugging mode cannot be used by other users.
Usually this dump occurs when the maximum number of work processes in debugging mode has already reached.

How to avoid “DEBUGGING IMPOSSIBLE” dump in ST22 of sap?

Please check the process overview (SM50 or SM66 transaction) and find out how many work processes are currently in debug mode.
The number of work processes that are available exclusively for debugging is defined by the profile parameter rdisp/wpdbug_max_no.
Please check this parameter value in a sap system and compare with the number of processes that are currently in debug mode. This dump occurs when the maximum of work processes in debugging mode has already crossed the parameter value set for rdisp/wpdbug_maxno.
So, it is suggested to increase the value of this parameter to avoid these dumps. This is dynamically switchable parameter and can be changed immediately and no need to restart SAP system for the value to take effect.

Note:  Please refer below link to understand how to increase/decrease an sap parameter value.
Details related to this parameter can be checked in Rz11 transaction which will be similar to as shown in below figure.



























However, please note setting this parameter to a very high value leads to performance issues in SAP system, as “work process multiplexing” won’t happen if debugging is being done. That is work processes that are in debugging mode cannot be used by other users.  This reduces the amount of free dialog work processes, which affects system performance.
In development systems, this parameter should be approximately half the number of dialog work processes.

Hint :
Usually, as debugging is not suggested in Production systems, the parameter value rdisp/wpdbug_max_no is set to low value. Most of the times, when a development system is refreshed with production system, the number of debug sessions will be low in the corresponding development system as those values are copied from profile parameter of a production system. So, it is responsibility of basis administrator after system refresh to cross check this parameter value and set correct value as per the recommendations in the development system to avoid these dumps.


0 comments:

Post a Comment