How to read SAP system short dumps
Well, pretty easy. Google it, search for SAP notes, dive into already dead SAP SCN/SDN forum, take a gallon of coffee, sprinkle it with a debugger, learn ABAP and turn off social networks. Then it would take you only 5 minutes to read the system dump and fix the issue. Sounds easy, huh? Sometimes it’s quicker to read the dump then to open a ticket with a developer and wait until it’s resolved.
In real life, we have we could have two situations: recent dumps and old ones. The difference is in timing. If we ran into something and a short dump occurred, we can dive into a debugger right away and see the issue. If it’s old, it could be taught to understand what was the real cause of it. Usually, a dump occurs when user inputs something not expected by the system, like his name instead of a salary amount. In the first scenario just click on the debugger icon and the system opens a new window, where we can do some investigation. Otherwise open transaction ST22 and find your short dump which is usually under your name, but not necessarily.
Here is the dump from my SAP system from HR module.
Many strange letters here, but here is the trick. The system dump could happen in the customer program (read your developer did a bad job) or SAP namespace. The easy way to distinguish is to look into the object names like if they start with Y or Z. these could be field names, class names, program names, routines, etc. If it falls into the customer namespace, then it’s much easier to fix cause we have a developer on board and can fix this. Otherwise, we need to search for SAP notes or support packages or even file a ticket with SAP Global Support and let them investigate our system.
If you’re a consultant, not a developer, stay with me and I’ll show how to read system dumps. Developers won’t find anything new here.
The first and most obvious is to read what’s written on the first page of the system short dump (who called it short when it’s a huge long read?). IN 90% the issue is right here and self-explanatory, like a value, doesn’t fit the field, wrong field or there is no active version of a program. Don’t close the window, read it! It could be a memory shortage and all you need is to restart the transaction (let’s say you ran a huge report). That’s easy! Or there is a broken network connection to other servers which will be back shortly.
The next case is when it happened to our in-house development. We need to understand what code caused the dump. To figure this out let’s scroll down a little to see the exact ABAP statement and row line in ‘Information on where terminated’ and ‘Source Code Extract’ sections. Have a look.
For example, here the system shows something broken on line 7. In plain English it says some value in P_NAME variable is missed, so the system doesn’t know how to proceed. If we have no clue why is that, let’s open the code, throw a breakpoint at the beginning of this routine and rerun the transaction. The system will stop there and step-by-step we’ll go over the code watching where this variable is filled. Why is it empty? Maybe the system reads some customing tables with some key and there is no value inside? A good point to open that table in SM30 and review configuration.
If you scroll down to the ‘Chosen Variables’ section, there are variable values shown at the moment. Maybe something is, issued or has a wrong value there and it’s telling us the cause? A developer was expecting a user to input date on 10/10/2020 format, not 101020, let’s say.
In ‘Active Calls/Events’ section we see the stack – what routines, classes had been called before we reached the outage point. If it’s a background program where the dump occurred, we can see the root cause.
Rarely we can see system dumps caused by kernel or system packages. If we installed something new in the system and it’s not compatible with the current configuration. Therefore we go straight to SAP Notes and search for it. It’s a high chance the issue was already resolved and all you need is to install a new SAP note with SNOTE transaction. This is a good reason why it’s not recommended to install the most recent patches, but the most recent minus one – somebody has already met that issue before you.
If it’s completely unusual and you’ve tried everything and it didn’t work, try to look into ‘How to correct the error’ section. They either say how to fix the issue or provide you with a set of keywords you should use to google or search in SAP Support Portal. It really helps.
The last resort. If nothing works, call the developer. They know how to dive very deeply and find the very root cause. Or open a ticket with SAP global Support. It’s free of charge.