cancel
Showing results for 
Search instead for 
Did you mean: 

Why are Background WPs kill/restarting very often?

Former Member
0 Kudos

Hi

We have a NW2004s ABAP/JAVA system installed on Solaris x86 (HP AMD/Opeterons) Oracle 10.2. Our systems are installed in Solaris Zones.

Background WPs kill/restart on a regular basis (eg. up to 10 - 12 times/day) after exceeding the ABAP/HEAPLIMIT.

A WP has reached abap/heaplimit = 80000000 bytes

M

M Sun Aug 12 20:00:54 2007

M ThNeedWpRestart: abap strategy == kill, restart

M ThWpRestart: restart wp (pid=5724) automatically

This does not seem to correspond to an error occuring and I realise that kill/restart is the correct action when the HEAPLIMIT is execeded.

The question is therefore 'why we are exceeding the HEAPLIMIT value when we are running very little on the system' The processes that are restarting are not handling jobs that are running for a long time..

I have doubled the HEAPLIMIT at SAP recommendation from 40000000 to 80000000 but still no difference. Other than the HEAPLIMIT change the other SAP params are defaults.

Has anyone else seen this happening, specifically in the Solaris environment?

Regards, Billy

Accepted Solutions (0)

Answers (1)

Answers (1)

JPReyes
Active Contributor
0 Kudos

Hi Billy,

Welcome to SDN!

If found an old documentation about abap heaplimit, basically it sais that the value of abap/heaplimit should be smaller than abap/heap_area_dia or abap/heap_area_nondia for the process to continue without been killed; so if you doubled the value of abap/heaplimit it might be good to check the value of abap/heap_area_dia, abap/heap_area_nondia and abap/heap_area_total

Regards

Juan

Please reward with points if helpful

Former Member
0 Kudos

Thanks for the quick response Juan, but just checked and I have the following settings:

abap/heap_area_dia = 2000000000

abap/heap_area_nondia = 2000000000

abap/heaplimit = 80000000

I have not seen this before... or at least have not noticed it happening so often.. but it's the first time that I've worked on a Solaris x86 system, so thought that their was maybe a connection.

Cheers

JPReyes
Active Contributor
0 Kudos

Hi Billy,

Whats the value of abap/heap_area_total?

Regards

Juan

Former Member
0 Kudos

Hi

The value of abap/heap_area_total = 2000000000

Former Member
0 Kudos

Hi Billy

I think you already know now, that abap/heaplimit controls after what amount of memory consumption a (batch) workprocess will be restarted.

>> Why did your change from 40mb to 80mb not change anything?

I guess there is a typical workload which often uses more then 80mb, so either the 40mb and the 80mb limit cause the process to restart.

>> Why is this parameter needed at all?

The reason is that batch workprocesses do allocate memory from the so called heap, which is private memory (opposite to shared memory). Only the one process can use this memory and it is free by killing this process.

So if you increase the limit further (until abap/heap_area_nondia at max) you will see less process restarts but more memory consumption from your heap (abap/heap_area_total) which is in fact physical memory at the end. You should not be worried to much of several restarts of a process per day. I would consider more than one restart per hour too much.

Best regards

Michael

Former Member
0 Kudos

'why we are exceeding the HEAPLIMIT value when we are running very little on the system' The processes that are restarting are not handling jobs that are running for a long time..

As already said, it has not anything to do with how long a job runs, it is just its memory consumption. 80mb is still quite small, sometimes even the SAP standard jobs take way more than 1gb.

Regards Michael

Former Member
0 Kudos

Hello,

The same problem with us ....

and it will be solved by increasing the memory.....risk has been taken care if u r running on windows 32-bit plateform....

Regards,

kamlesh