diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-12 01:55:15 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-12 01:55:15 +0000 |
commit | bdcf632d623f4234d6067d30a004ea1b22ad7a30 (patch) | |
tree | 225bdd28327760f19b404941514f2ce8e5f8b183 /src/backend/postmaster/syslogger.c | |
parent | 2e964aee757c1000590fc38c411ebdfbd66d37fe (diff) | |
download | postgresql-bdcf632d623f4234d6067d30a004ea1b22ad7a30.tar.gz postgresql-bdcf632d623f4234d6067d30a004ea1b22ad7a30.zip |
Fix problem with infinite recursion between write_syslogger_file and
elog if the former has trouble writing its file. Code review for
Magnus' patch to redirect stderr to syslog on Windows (Bruce's version
seems right, but did some minor prettification).
Backpatch both changes to 8.0 branch.
Diffstat (limited to 'src/backend/postmaster/syslogger.c')
-rw-r--r-- | src/backend/postmaster/syslogger.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/backend/postmaster/syslogger.c b/src/backend/postmaster/syslogger.c index e057666370a..60d1337cabb 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.12 2005/01/01 20:44:16 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.12.4.1 2005/03/12 01:55:14 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -697,10 +697,9 @@ write_syslogger_file_binary(const char *buffer, int count) LeaveCriticalSection(&sysfileSection); #endif + /* can't use ereport here because of possible recursion */ if (rc != count) - ereport(LOG, - (errcode_for_file_access(), - errmsg("could not write to log file: %m"))); + write_stderr("could not write to log file: %s\n", strerror(errno)); } #ifdef WIN32 |