]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Fix syslogger's rotation disable/re-enable logic.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 27 Apr 2012 04:13:05 +0000 (00:13 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 27 Apr 2012 04:13:05 +0000 (00:13 -0400)
commitf8d7f9adfd6d8d65cd9c6a535b192e61971f4ed4
tree43c915758e4878b9a62fececf8977ec42d9f7f10
parent17fc5db766146c6144f808a8117aee9d7c7901d6
Fix syslogger's rotation disable/re-enable logic.

If it fails to open a new log file, the syslogger assumes there's something
wrong with its parameters (such as log_directory), and stops attempting
automatic time-based or size-based log file rotations.  Sending it SIGHUP
is supposed to start that up again.  However, the original coding for that
was really bogus, involving clobbering a couple of GUC variables and hoping
that SIGHUP processing would restore them.  Get rid of that technique in
favor of maintaining a separate flag showing we've turned rotation off.
Per report from Mark Kirkwood.

Also, the syslogger will automatically attempt to create the log_directory
directory if it doesn't exist, but that was only happening at startup.
For consistency and ease of use, it should do the same whenever the value
of log_directory is changed by SIGHUP.

Back-patch to all supported branches.
src/backend/postmaster/syslogger.c