diff options
author | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2009-08-24 17:23:17 +0000 |
---|---|---|
committer | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2009-08-24 17:23:17 +0000 |
commit | 6887067b6d741ef35cae851f656a54f21e8c65e2 (patch) | |
tree | 049202d277707a4569ce50a0c75757d2e435e36a /src/tutorial/funcs.source | |
parent | 3600e4ced24001cc384f586a4486c6b9f31074a4 (diff) | |
download | postgresql-6887067b6d741ef35cae851f656a54f21e8c65e2.tar.gz postgresql-6887067b6d741ef35cae851f656a54f21e8c65e2.zip |
Avoid calling kill() in a postmaster signal handler.
This causes problems when the system load is high, per report from Zdenek
Kotala in <1250860954.1239.114.camel@localhost>; instead of calling kill
directly, have the signal handler set a flag which is checked in ServerLoop.
This way, the handler can return before being called again by a subsequent
signal sent from the autovacuum launcher. Also, increase the sleep in the
launcher in this failure path to 1 second.
Backpatch to 8.3, which is when the signalling between autovacuum
launcher/postmaster was introduced.
Also, add a couple of ReleasePostmasterChildSlot calls in error paths; this
part backpatched to 8.4 which is when the child slot stuff was introduced.
Diffstat (limited to 'src/tutorial/funcs.source')
0 files changed, 0 insertions, 0 deletions