How reduce latch timeout Progress 10.1A

Posted by gmuchon on 24-Oct-2011 07:47

I have a DB with high value latch timeout per minute (around 700), I tried reduce this value increase -spin but didn't work.

Follow enviroment:

- HPUX 11.23

- Progress 10.1A0234

- Itanium with 4 processor

As this may be interfering with performance?

Anybody help me?


All Replies

Posted by gus on 25-Oct-2011 09:40

Latch timeouts are usually caused by contention for some shared resource. Sometimes the contention is caused by users of the resource taking too long to go about their business. For example doing I/O to a slow or overloaded device.

Finding the cause of these problems can often be difficult.

However, it is not clear that you have a problem. We do not have enough data.

700 per minute does not seem especially high. Depends on how many users are doing it and how many of the latches have timeouts. For example, if there are 700 users and each one has a latch timeout once per minute, then there may be nothing to worry about. If it is 10 with 70 per minute, it might be.

Is the rate of latch timeouts more or less constant during a normal day or does it vary?

Posted by gmuchon on 25-Oct-2011 12:00

This rate of latch timeouts are constants.

This DB has in rate 80 users connected by month and apparently I don't have any problem with this situation, but I have any others large DBs with rate of latch timeouts less 10 per minutes and this DBs has rate 140 users connected.

My preoccupation is that this becomes a problem.

I know that finding the cause of these problems can often be difficult but follow any questions

1). In this case the parameter -spin has 300000, maybe I increase this parameter unnecessarily without effect, there is a formule to determine the limit value for this parameter? (I know that the physical limit are server's CPUs)

2). The are any others parameters to adjust this performance item by promon or command line?


Posted by gus on 25-Oct-2011 14:12

I would reduce the value of -spin to about 10,000 or 20,000 and see if that helps. It may be that at 300,000 you are using too many cpu cyles for latch operations and you have only 4 processors. You can adjust -spin in promon without bouncing the server.

There is no formula for -spin. The optimal value is a function of many things, such as processor speed, number of processors, number of users, amount and rate of database activity performed by the users, and so on. However, it is not necessary to be very precise with the -spin value. One has to make relatively large changes to see a significant effect.

There is a parameter called -napmax which you can use to set the maximum duration of latch timeouts. This defaults to 5,000 milliseconds in releases prior to 10.2B05 where it defaults to 250 milliseconds. You might try a smaller value than 5,000, say 500.

On the other hand, we are discussing metrics here that are not measures of application performance. They are merely symptoms. Are your users complaining about application performance? Are there application related metrics (e.g. batch jobs takes longer than it should, etc.) that are telling you something is wrong?

This thread is closed