From: | Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> |
---|---|
To: | pg noob <pgnube(at)gmail(dot)com> |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: deadlock_timeout affect on performance |
Date: | 2012-10-02 08:11:40 |
Message-ID: | 506AA1BC.1070305@vmware.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
On 01.10.2012 19:49, pg noob wrote:
> Hi all,
>
> I have a question about the deadlock_timeout in regards to performance.
> Right now we have this timeout set at its default of 1s.
> My understanding of it is that this means that every 1 second the server
> will check for deadlocks.
Not quite. It means that when a backend gets blocked, waiting on a lock,
it will check for deadlocks after waiting for 1 second. When no backend
is waiting for a lock, there are no deadlock checks regardless of
deadlock_timeout.
> What I am wondering is how much of a performance improvement we would
> expect to get if this was raised to 30 seconds?
> Is it negligible or could it be a substantial performance improvement on a
> busy system?
> We very rarely have deadlocks and waiting 30 seconds to discover one
> doesn't seem too bad.
It's almost certainly negligible. If you regularly have deadlocks, it
might even better for performance to make the timeout shorter than 1 s,
so that deadlocks are detected earlier, and backends will spend less
time deadlocked, and more time doing real work. Although I doubt it will
make any meaningful difference either way.
- Heikki
From | Date | Subject | |
---|---|---|---|
Next Message | Glyn Astill | 2012-10-02 08:20:51 | Re: hardware advice |
Previous Message | Craig Ringer | 2012-10-02 04:54:38 | Re: A Tale of 2 algorithms |