Application Development and Automation 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: 
Read only

SYSTEM EXCEPTION for MEMORY_NO_MORE_PAGING

Former Member
0 Likes
3,155

Hi SAP bonds,

I am trying to export data to ABAP memory using statement EXPORT <itab> to MEMORY ID '<memid>'.

I am facing dump when data is large. I found EXPORT statement limit is SAP paging memory (parameter rdisp/PG_MAXFS).

I want to catch memory exception raised when this limit reached in my ABAP program. I dont wanna mmy program to dump.

Is there any system exception available which can be caught when paging memory is fully used by EXPORT statement.

Regards

Munish Garg.

Hi SAP bonds,

I am trying to export data to ABAP memory using statement EXPORT <itab> to MEMORY ID '<memid>'.

I am facing dump when data is large. I found EXPORT statement limit is SAP paging memory (parameter rdisp/PG_MAXFS).

I want to catch memory exception raised when this limit reached in my ABAP program. I dont wanna mmy program to dump.

Is there any system exception available which can be caught when paging memory is fully used by EXPORT statement.

Regards

Munish Garg.

17 REPLIES 17
Read only

Former Member
0 Likes
2,741

Hi,

Refer to following link:

regards,

Venkat.

Read only

0 Likes
2,741

Hi venkat,

I dont want to increase the parameter values, i just want to catch the exception.

For e.g. if parameter current value is 256MB and i increase it to 512MB then dump will come if i export data more than 512MB. so whatever value we give, dump will come if we try to export data more than that value.

To avoid dump, i need to CATCH exception. I hope now you got the question right.....

Regards

Munish Garg

Read only

0 Likes
2,741

Hi,

Put your code inside a try endtry block.

In your catch block try catching the exception into a local variable referring to class CX_ROOT.

This should work.

Regards,

Chen

Read only

0 Likes
2,741

Hi Chen,

I have tried with code below but it didnt catch any exception. I got a dump again.

TRY.

EXPORT it_itob TO MEMORY ID 'MUNISH'.

WRITE 😕 'Success'.

CATCH CX_ROOT.

WRITE 😕 'error'.

ENDTRY.

Regards

Munish Garg

Read only

tolga_polat
Active Participant
0 Likes
2,741

Hi Munish,

ttry this :


DATA : lv_lines TYPE i.

CATCH SYSTEM-EXCEPTIONS EXPORT_BUFFER_NO_MEMORY = 1.
  EXPORT it_itob TO MEMORY ID 'MUNISH'.
ENDCATCH.

IF sy-subrc EQ 1.
  WRITE : 'ERROR!'.
ENDIF.

its class is CX_SY_EXPORT_BUFFER_NO_MEMORY. you can see that in se24.

i hope it will work!

Read only

0 Likes
2,741

Hi Polat,

It doesn't work still....it dumped again...

Regards

Munish Garg

Read only

Former Member
0 Likes
2,741

Just press F1 on EXPORT and look at the catchable exceptions.

(Not for responders - OP only)

Rob

Read only

0 Likes
2,741

Hi Rob,

No info in F1 help, i checked it before putting to the forum.

Regards

Munish Garg

Read only

0 Likes
2,741

Hi Rob,

I checked it again, below are two exceptions given in F1 help but both of them i tested is not working:-

1)CX_SY_EXPORT_BUFFER_NO_MEMORY

Cause: During export to the application buffer, data cluster is larger than the entire buffer.

Runtime Error: EXPORT_BUFFER_NO_MEMORY (catchable)

CX_SY_EXPORT_NO_SHARED_MEMORY

Cause: During export to the application buffer, the data cluster is larger than the maximum internal buffer limit.

Runtime Error: EXPORT_NO_SHARED_MEMORY

Read only

0 Likes
2,741

hi Manish ,

check this links

Regards

deepak dhamat .

Read only

0 Likes
2,741

Hi Deepak,

Problem is not to finetune the parameter, it is to which exception to CATCH in case this limit reached.....

Regards

Munish Garg

Read only

0 Likes
2,741

hi ,

Kindly refer to SAP OSS note 619876 and 88416.

Regards

Deepak .

Read only

0 Likes
2,741

Hi Deepak,

This is all related to maintaining parameters......

I am talking about which exception to CATCH in case situation arises where we reach the memory limit.

ABAP program gives me dump in that case and i wanna avoid that dump.....

Please read the full thread for more clarification.....

Regards

Munish Garg

Read only

0 Likes
2,741

yes Dear ,

I got your Question ,

You have to Try out few Exceptions

which are avaiblable

such as

Excceptions which cannot be found

DYN_CALL_METH_EXCP_NOT_FOUND

EXPORT_BUFFER_NO_MEMORY

The EXPORT data cluster is too large for the application buffer

Regards

Deepak .

Read only

0 Likes
2,741

Hi Munish,

Try the below code, and if it still goes into a dump, then it means that the exception that is being thrown is a non-catchable exception which will lead to a short dump. As i do not have access to an SAP System i am not sure if it is a catchable or non-catchable exception.

Note: If it is a catchable expception you can try some cleaning/clear up of memory in the cleanup block.

data: lcx_root type ref to cx_root.

TRY.

EXPORT it_itob TO MEMORY ID 'MUNISH'.

WRITE 😕 'Success'.

CATCH CX_ROOT into lcx_root.

WRITE 😕 'error'.

ENDTRY.

Regards,

Chen

Read only

0 Likes
2,741

Hello, I have the exact same issue. The table select statment may return a value that is too big. I am trying to catch it. I have tried all of the suggestions in this thread.

Munish, did you ever get a solution?

Any help is greatly appreciated.

Thank you

Read only

Former Member
0 Likes
2,741

No exception was cought. No solution sought.