Skip to Content
-7

Abap dump error

Jan 18, 2017 at 12:15 PM

361

avatar image

Hello Experts,

I have a issue with a ABAP program that he teminited with dump .

Its

Its possible to optimizate the folowing code ?

4ygfa.png (6.4 kB)
1e4vs.png (27.9 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

6 Answers

Matthew Billingham
Jan 23, 2017 at 01:33 PM
9

You've not really given enough information for a proper answer.

You need to determine if this issue is due to a memory leak (faulty programming) or just too much data. In either case, the fix is not to increase the amount of memory you have - except in rare cases you'll just run into the new limit.

To work out whether it's a memory leak, run in debug. Check the amount of data in <wt_fs_tables> before the loop start - use the memory analyser to see how much memory it's actually using. As you go through the loop, watch <wt_fs_tablez> and see how its memory usage increases.

Check whether the method containing this bit of code is being called multiple times.

One more piece of advice. Your variable naming is absolutely terrible. I assume that "fs" is for field symbols? That's a complete waste, because the little brackets < > tell you it's a field symbol. And tables and tablez are utter meaningless names. Please spend some effort making your code readable and comprehensible.

Show 3 Share
10 |10000 characters needed characters left characters exceeded

Ding ding ding!!!!

Very limited info yet so many people willing to throw bad information at him hoping they are right. Uggg

I agree with your points. I suspect that <wt_fs_tables> and <wt_fs_tablez> point to the same table. He is looping one while inserting to it....basically he keeps extending the table by one on each loop, so it will just keep looping.....and keep adding records....and loop again on the new record....and add a new one....etc etc......so of course his internal table is "blowing up". BUT....he hasn't told us too much more.

3
I suspect that <wt_fs_tables> and <wt_fs_tablez> point to the same table

That is exactly what I thought looking at the code... what are the table sizes to begin with? That would be useful information!

Matthew, you brought up another pet peeve of mine. As a consultant, I have written code for many, many, clients and very often I am handed a huge manual and told to follow some cockamamie naming convention. For example, if it is local call start with 'l', next a 'v' to denote it is a variable (really, really?), next 'c' because it is a character, then local to where, so I end up with a variable lvc_funcname_counter... Argh!

2

If you haven't already seen it, you'll find this interesting

https://blogs.sap.com/2014/12/29/abap-modern-code-conventions/

1
crossmen crossmen Jan 24, 2017 at 02:03 PM
-1

Thank you so much for your answers

the amount of data in <wt_fs_tables> before the loop is 2 219 336.

Show 2 Share
10 |10000 characters needed characters left characters exceeded

You need to check in the debugger and/or dump analysis the memory consumption. The number of records in the table doesn't give the whole picture.

If you want meaningful responses, then provide additional info, e.g., screenshot of the memory analysis.

1

+1 to Suhas. There are tools available in SAP to troubleshoot such issues. Google it.

0
sudhanshu sharma Jan 18, 2017 at 12:40 PM
-9

Ask your BASIS team. They need to increase paging area.

Rgds

Show 3 Share
10 |10000 characters needed characters left characters exceeded

Yep, treat a gushing wound with a blood infusion. Stellar advice.

8

Jelena, good point, bad analogy... Often trauma patients are hooked up to blood (in my days, more commonly plasma these days) while looking for a way to get the bleeding stopped. Does save lives - just saying :)

2

Raghu, thanks for the info. Important difference - "while looking for a way to get the bleeding stopped". Folks here seem to believe that "increase memory size" is a permanent solution. At least no one other than Matthew advised OP to look for the root cause.

0
Barani Venkatesan Jan 23, 2017 at 12:41 PM
-9

Increase the memory size..check with your BASIS team or restrict the amount of data you have given in selection.

Share
10 |10000 characters needed characters left characters exceeded
crossmen crossmen Jan 24, 2017 at 04:18 PM
0

When I run the program manually , I get any errors. but when this program running in parallel with another programs I get the dump mensionned below.

Show 1 Share
10 |10000 characters needed characters left characters exceeded

What do you mean "manually" here - SE38 or the debugger? And, can you help us understand what you mean by "running in parallel with another programs". What other programs are running? Do you normally test by making sure there are no other users or background jobs running?

0
sudhanshu sharma Jan 26, 2017 at 04:30 PM
0

Wow ! can't believe this much happened since i last visit ! Thanks all for the information.

Share
10 |10000 characters needed characters left characters exceeded