X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fbackend%2Fpostmaster%2Fsyslogger.c;h=001e206a96c76fceebf5ca49178b780c8079fe34;hb=ad8fbb549a91db1f9a9dafc990573f5bcbfcfe40;hp=fc44c4398df882858718e8da7275458ffe7052bc;hpb=bab16af807c959f5aee476b551bca89cd58cd36e;p=pg-rex%2Fsyncrep.git diff --git a/src/backend/postmaster/syslogger.c b/src/backend/postmaster/syslogger.c index fc44c4398d..001e206a96 100644 --- a/src/backend/postmaster/syslogger.c +++ b/src/backend/postmaster/syslogger.c @@ -18,7 +18,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.38 2007/08/21 01:47:19 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.39 2007/09/20 18:19:08 adunstan Exp $ * *------------------------------------------------------------------------- */ @@ -352,7 +352,15 @@ SysLoggerMain(int argc, char *argv[]) } if (rotation_requested) + { + /* + * Force rotation when both values are zero. + * It means the request was sent by pg_rotate_logfile. + */ + if (!time_based_rotation && size_rotation_for == 0) + size_rotation_for = LOG_DESTINATION_STDERR | LOG_DESTINATION_CSVLOG; logfile_rotate(time_based_rotation, size_rotation_for); + } #ifndef WIN32 @@ -1154,7 +1162,7 @@ logfile_rotate(bool time_based_rotation, int size_rotation_for) EnterCriticalSection(&sysfileSection); #endif fclose(csvlogFile); - syslogFile = fh; + csvlogFile = fh; #ifdef WIN32 LeaveCriticalSection(&sysfileSection); #endif