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: 

Getting timeout error

Former Member
0 Kudos

Hi experts,

whenever executing one Zprogram I am getting time out error.

I have found the cause. It is because of One select query.

whenever the records are less than 15k or 16k..it is taking long time for anyhow giving the output.

whenever this limit reaches, taking long time and giving the timeout error.

In my case I have 49k records.

How to improve this.

Please help me.

Thanks in Advance


3 REPLIES 3

former_member306787
Active Participant
0 Kudos

Please provide the specific query if you need this to be improved. Your query most likely lacks performance, but to help you with specific suggestions on how to improve that, we need to see the code itself.

Best regards,

Zhou

naveen_inuganti2
Active Contributor
0 Kudos

Hi Nagireddy,

If you are getting this runtime error due to internal table storage space (you will see "No more storage space available for exceeding internal table" in this case) then you can proceed with below options:

1. Try to avoid fetching unwanted fields if you there are any.

2. Each program will have some limitation to deal with data volume. Hence, optimize your code by checking if program is holding data in any other unwanted tables.

3. If you are modifying selected data at later part of program with COLLECT or other stetements, which can minimize the record count, then check if you can do  samething at SELECT query level with aggregate functions like SUM.

4. Last but not least, this is where most of the storage issues will be resolved. Use cursors (OPEN, FETCH, CLOSE) with appropriate package size and get smaller chucks data into internal table and process it.

Package size can be determized based on the size of each record in your table.

If you are not confortable with fetching data into internal table due control break events or for some other reason then you can get into work area or field symbols.

Now, if you are getting this runtime error not because of storage issues then it could be cut-off time that your system has for fore-ground execution. 

1. You need to use lightweight WHERE condition (with Indexes if possible). Share your WHERE condtion with SCN, if possible.

2. If everything is fine (field orders, selection of required fields etc.,) then you should check for alternate architecture to display this data (Back executions, Multiple screens, Additional Filters)

Regards,

Naveen

ronaldo_aparecido
Contributor
0 Kudos

Hi

You could check with the basis tem the property "vdisp/max_wprun_time      for maximum time".

This property says the time limit of aplications .

For example in my company is 15 minutes if my select is more than 15 minutes then occurs dump by time out , maybe they can help.

Other way is user the commit before big process because this cammand clear the "vdisp/max_wprun_time      for maximum time.

For example if you is executing a select and "vdisp/max_wprun_time      for maximum time is 10 minutes

if you use commit before the "vdisp/max_wprun_time      for maximum time   is clear and begin again.


YOu could use the st05 transaction to see the time of your select and compare with "vdisp/max_wprun_time      for maximum time.