From aae078198dd4b9cbb3590262dcb65d0b735c80d7 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 28 May 2003 17:25:02 +0000 Subject: In bootstrap and standalone-backend modes, do not sort LOG elevel out of order; the 'server log' output is actually client output in these scenarios and we ought to treat elevels the same way as in the client case. This allows initdb to not send backend stderr to /dev/null anymore, which makes it much more likely that people will notice problems during initdb. --- src/backend/utils/error/elog.c | 40 ++++++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 16 deletions(-) (limited to 'src/backend/utils/error/elog.c') diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index 6ca9f384017..fd6d35bb5ad 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -37,7 +37,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/error/elog.c,v 1.109 2003/04/24 21:16:44 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/error/elog.c,v 1.110 2003/05/28 17:25:02 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -189,25 +189,33 @@ errstart(int elevel, const char *filename, int lineno, } /* Determine whether message is enabled for server log output */ - /* Complicated because LOG is sorted out-of-order for this purpose */ - if (elevel == LOG || elevel == COMMERROR) + if (IsPostmasterEnvironment) { - if (log_min_messages == LOG) - output_to_server = true; - else if (log_min_messages < FATAL) - output_to_server = true; - } - else - { - /* elevel != LOG */ - if (log_min_messages == LOG) + /* Complicated because LOG is sorted out-of-order for this purpose */ + if (elevel == LOG || elevel == COMMERROR) { - if (elevel >= FATAL) + if (log_min_messages == LOG) + output_to_server = true; + else if (log_min_messages < FATAL) output_to_server = true; } - /* Neither is LOG */ - else if (elevel >= log_min_messages) - output_to_server = true; + else + { + /* elevel != LOG */ + if (log_min_messages == LOG) + { + if (elevel >= FATAL) + output_to_server = true; + } + /* Neither is LOG */ + else if (elevel >= log_min_messages) + output_to_server = true; + } + } + else + { + /* In bootstrap/standalone case, do not sort LOG out-of-order */ + output_to_server = (elevel >= log_min_messages); } /* Determine whether message is enabled for client output */ -- cgit v1.2.3