2010 Apr 05 8:32 AM
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.
2010 Apr 05 8:35 AM
2010 Apr 05 8:41 AM
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
2010 Apr 05 12:30 PM
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
2010 Apr 05 2:28 PM
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
2010 Apr 05 2:41 PM
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!
2010 Apr 05 2:51 PM
Hi Polat,
It doesn't work still....it dumped again...
Regards
Munish Garg
2010 Apr 05 3:05 PM
Just press F1 on EXPORT and look at the catchable exceptions.
(Not for responders - OP only)
Rob
2010 Apr 06 7:04 AM
Hi Rob,
No info in F1 help, i checked it before putting to the forum.
Regards
Munish Garg
2010 Apr 06 7:13 AM
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
2010 Apr 06 7:43 AM
2010 Apr 06 7:47 AM
Hi Deepak,
Problem is not to finetune the parameter, it is to which exception to CATCH in case this limit reached.....
Regards
Munish Garg
2010 Apr 06 7:52 AM
hi ,
Kindly refer to SAP OSS note 619876 and 88416.
Regards
Deepak .
2010 Apr 06 7:58 AM
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
2010 Apr 06 8:05 AM
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 .
2010 Apr 06 10:27 AM
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
2010 Aug 05 7:42 PM
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
2010 Aug 31 2:25 PM