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: 

TSV_TNEW_PAGE_ALLOC_FAILED

rajan_venkatachalam
Participant
0 Kudos

Hi All,

Currently i am working in Mobile Infrastructure and i have one memory issue,where the customer is trying to run the report MEREP_PURGE in the backround job and getting failed with the runtime error "TSV_TNEW_PAGE_ALLOC_FAILED ".

When i checked the dump i found out that the runtime error occurs while executing the select statement and found out that the select statement consumes more than 1.5 GB .The table contains more than 6 lacs records.

Interesting part is that he is trying to purge the data for one day which is containing this much of data.

Here is the select statement query.

*  Delete table 504 Outbox Data
* outbox data can be huge. So do in steps
    DO.
      select mandt direction mbl_id seqno rcd_cntr
        into table ldt_504
        up to gcf_packagesize rows
      from
           merep_504
      FOR ALL ENTRIES IN ldt_505
        where mbl_id    = ldt_505-mbl_id and
              seqno     = ldt_505-seqno and
              direction = ldt_505-direction.

FYI,

gcf_packagesize rows = 10000.

Can anyone tell me wheather is it possible to optimize the query or any memory parameters needs to be changed to handle this runtime error.

Thanks and Regards,

Rajan

9 REPLIES 9

Former Member
0 Kudos

I don't see a problem. the only thing I can suggest is to reduce your package size, but at 10,000, it's already pretty small.

Maybe you could post the portion of the dump that shows the code where it dumped.

Rob

Former Member
0 Kudos

Hi,

I am not at all aware of MI but just one observation,

Can you check whether the where condition is actually triggering any Index.

I think an index is not getting triggered. Maybe you can juggle the where condition field sequence to trigger an Index.

Also,

Have you considered creating an index if there is no index which is triggered by this field combination. Btw if you do consider Index read the SAP help since it can have impact to day to day transactions using that table.

Hope this helps

Regards

Nishant

0 Kudos

Hi Nishant,

Can you please provide me any documentation link which clearly explains about creating and using index.When i checked the table its not using index.

Thanks and Regards,

Rajan

0 Kudos

Hi Nishant,

We are using this table more than two years and this is the first problem we are facing for one customer because they are having huge amount of data in the table say 1 million records and getting runtime error when they try to purge the table data.

If we create index at this time ,what would be the impact and do you have any other suggestion in optimizing the query?

Thanks and Regards,

Rajan

0 Kudos

Hi Rajan,

There can be various reasons why there was no issue till now.

Irrespective of whether it was working for past 2 years creating an index can always be implemented.

The issue here is that you should be fully aware that though index increases performance when selecting data from it or modifying, it decreases performance slightly when you are inserting entry.

The reason users didn't face this issue could be because in those reports they were selecting using some index where as in this report they are not. I believe as your project goes on the data will increase so it would be a prudent approach.

The possible impact of creating index :

Slight decrease in performance when inserting entries into the table since insertion will have to update the index also.

Memory will be required for creating Index so it will use memory.

When the ABAP optimization technique fail then the other good alternative is to check for business logic and then try and refine the existing logic.

Also

<b>Welcome to tricky world of performance tuning</b>

Have you done SQL Trace on your system? I want to see how FOR ALL ENTRIES is getting executed in the system.

It would be best if it is getting executed as IN List but in case it's executing as 'OR' List then you can write a logic to create an IN list .

You'll need help from BASIS people also in this regard.

In case you need more help you can ask

Regards

Nishant

Message was edited by:

Nishant Rustagi

Sathish
Employee
Employee
0 Kudos

Try increasing the rollback segment. This would help. There are notes available in Service Market Place which explains how to do it.

Former Member
0 Kudos

Your BASIS guy can help here by incresing the space allocation for memeory.. the dump is due to lack of space in memory for storing huge internal table data

Former Member
0 Kudos

Hi,

This dump is becuase of not available of memory. This is one of the common dump

Try to run the report during non peak time

Please contact your basis team for the solution

regards

Shiva