This is the third sub-post of a series, which outlines how to investigate a particular example/pattern of system dump caused by a programmming error.
Here it is about an incorrect call of BOPF methods from a custom enhancement:
Read first the introduction and general information in the main-post.
As described in the main-post, the information you get from the system dump in ST22 does not help you to identify the root cause, hence you like to debug it.
The system dump looks similar to the ones from the screenshots in the main post and in sub-post 1 and 2.
... except in the call stack you see it is coming from an „end_modify“
This time the application information is completely empty.
This is one of the tricky ones, but it occurs quite often...
Usually users cannot reproduce the system dump or it even happens in batch mode. (It happens actually „by chance“, because someone else or another batch process has locked the object in parallel. But this is still an error of the enhancement.)
There is a dump „message_type_x“ and nobody has a clue what the root cause could be and there is no info given in the system dump and you don‘t like to go through those steps of debugging, OK, then go to the /BOBF/CONF_UI transaction and click through all the actions of all the enhancements of the BO of concern (mentioned in the dump) and check whether there is an action, which did not declare any update node. 80% of the root causes could have been found this way (faster than debugging).
Here comes the hard way, in case the shortcut does not help or is not yours because you are the debugging one.
Unfortunately it is essential that the user knows which UI was used and which steps were done OR that you know which batch job to re-run, e.g. /SCMTMS/PROCESS_TRIGGER_BGD . (=> <steps>)
If you don‘t know any <steps>, then you can exit here.
Remember or find this guide and then assume: „Maybe there is a custom enhancement, which changes data, which are not locked explicitely.“
Try to reproduce the system dump systematically as follows.
Note: There are 2 main patterns:
a) Usually there is a cross BO change – so the user (or the batch job) edits one BO instance and the enhancement shall update an instance of a different BO...
b) The user (or the batch job) edits a BO instance and the enhancement changes a node that the standard application does not know (custom node) or does not lock per se.
For b) the node key should be detectable in the system dump. See the main-post on how to search for it. I continue here for a) ...
===========================================================
All posts of this series:
General info and steps in the main-post.
Sub-posts:
===========================================================
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
11 | |
10 | |
5 | |
3 | |
3 | |
3 | |
2 | |
2 | |
1 | |
1 |