Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Memory space issue in internal table

Former Member
0 Kudos

Hi ,

My report is dumping because there is no memory space availabe for extending the memory of an internal table, after it gets filled with about 2500000 lakh records.

the dump analysis is as follows :-

Error analysis

The internal table (with the internal identifier "IT_317") could not be

enlarged any further. To enable error handling, the internal table had

to be deleted before this error log was formatted. Consequently, if you

navigate back from this error log to the ABAP Debugger, the table will

be displayed there with 0 lines.

When the program was terminated, the internal table concerned returned

the following information:

Line width: 1700

Number of lines: 106904

Allocated lines: 106904

New no. of requested lines: 8 (in 1 blocks)

How to correct the error

The amount of storage space (in bytes) filled at termination time was:

Roll area...................... 7272944

Extended memory (EM)........... 603339264

Assigned memory (HEAP)......... 396390176

Short area..................... " "

Paging area.................... 40960

Maximum address space.......... 529887568

You may able to find an interim solution to the problem

in the SAP note system. If you have access to the note system yourself,

use the following search criteria:

Please suggest what can be done.

Regards,

Vikas Arya

6 REPLIES 6

former_member181995
Active Contributor
0 Kudos

Check with youe basis to increase your available resource memory.

also you can try to give package size with internal table which you are showing to output.

Amit.

Former Member
0 Kudos

Hey Vikas,

Its obvious that if you dump so much of data into an internal table then you are asking for Trouble....

This dump is occurring in the Select Statement....

If not here then it would have occurred while processing these huge amount of data....

My suggestion to you would be to make the Where Clause in the Select query more precise so that only limited entries are selected...

Note: Every thing has some technical constraint and those technical constraint cannot be over come for such huge amount of data....

Regards,

Kunjal

0 Kudos

Thanks Kunjal, I get your point about optimizing the select statement ..

but this dump is occuring while i am appending the internal table and not while during the select statement.

If there is no way i can reduce the records being populated to the internal table, is there a solution ??

0 Kudos

Hi Vikas,

There is a probable solution but I dont know how feasible it will be as per your requirements.

Heres the solution:

If you are appending the records to the DB table from Internal table then you can divide them into batch of few records then empty the internal table and do the same thing with the remaining records.

Regards,

Kunjal

0 Kudos

Hi,

This solution might not sound good. But give a thought.

While appending data u may take more than one internal table.

Append first 10lakh records to 1st table, Second 10 lakhs to second table etc.

But from where are u getting the source data? It should be present in some internal table correct?

Probably u can use dynamic internal tables concept.

Also check ur code carefully. After the place of appending if u are not going to use any internal tables then use FREE itab

statement to free the memory allocated.

Also reduce the global declarations as much as possible

Thanks,

Vinod.

ThomasZloch
Active Contributor
0 Kudos

Please describe what your program is supposed to do, then maybe a workaround can be recommended.

Thomas