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: 

Short Dump TSV_TNEW_PAGE_ALLOC_FAILED while using shared memory objects

Former Member
0 Kudos

Hi Gurus,

We are using shared memory objects to stor some data which we will be reading later. I have implemented the interfce IF_SHM_BUILD_INSTANCE in root class and using its method BUILD for automatic area structuring.

Today our developments moved from dev system to quality system, and while writing the data into the shared memory using the methods ATTACH_FOR_WRITE and DETACH_COMMIT in one report. We started getting the run time error TSV_TNEW_PAGE_ALLOC_FAILED.This is raised when the method DETACH_COMMIT is called to commit the changes in the shared memory.

Everyhting works fine before DETACH_COMMIT. I know that it is happening since the program ran out of extended memory, but I am not sure why it is happening at DETACH_COMMIT call. If excessive memory is being used in the program, this run time error should have been raised while calling the ATTACH_FOR_WRITE method or while filling the root class attributes. I am not sure why it is happening at DETACH_COMMIT method.

Many Thanks in advance.

Thanks,

Raveesh

1 ACCEPTED SOLUTION

naimesh_patel
Active Contributor
0 Kudos

Looks like it is because the shared memory object is needing more memory than system can allocate. Check the note [Note 1322182 - Memory consumption of ABAP Shared Objects|https://service.sap.com/sap/support/notes/1322182]

Regards,

Naimesh Patel

3 REPLIES 3

naimesh_patel
Active Contributor
0 Kudos

Looks like it is because the shared memory object is needing more memory than system can allocate. Check the note [Note 1322182 - Memory consumption of ABAP Shared Objects|https://service.sap.com/sap/support/notes/1322182]

Regards,

Naimesh Patel

Clemenss
Active Contributor
0 Kudos

Hi raveesh,

as Naimesh suggested: Probably system parameter for shared memory area is too small. Compare the system parameters in devel and QA, check what other shared memory areas are used.

Regarding your question, why it does not fail at ATTACH_FOR_WRITE but then on DETACH_COMMIT:

Probably ATTACH_FOR_WRITE will set an exclusive write lock on the shared memory data, then write to some kind of 'rollback' memory and DETACH_COMMIT will really put the data into shared memory area and release the lock. The 'rollback' memory is in the LUW's work memory which is much bigger as the usual shared memory size.

This is my assumption - don't know who can verify or reject it.

Regards,

Clemens

Former Member
0 Kudos

Did you got the solution for this one? we got the same issue.