"Unified logging system" breaks access to pg_dump debug outputs
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2020-09-14T20:50:25Z
Lists: pgsql-hackers
Attachments
- restore-multiple-log-levels-in-pg_dump-1.patch (text/x-diff) patch
pg_dump et al have some low-level debug log messages that commit cc8d41511 converted to pg_log_debug() calls, replacing the previous one-off logging verbosity system that was there. However, these calls are dead code as things stand, because there is no way to set __pg_log_level high enough to get them to print. I propose the attached minimal patch to restore the previous functionality. Alternatively, we might consider inventing an additional logging.c function pg_logging_increase_level() with the obvious semantics, and make the various programs just call that when they see a -v switch. That would be a slightly bigger patch, but it would more easily support programs with a range of useful verbosities, so maybe that's a better idea. In a quick look around, I could not find any other unreachable pg_log_debug calls. (Note: it seems possible that the theoretical multiple verbosity levels in pg_dump were already broken before cc8d41511, because right offhand I do not see any code that that removed that would have allowed invoking the higher levels either. Nonetheless, there is no point in carrying dead code --- and these messages *are* of some interest. I discovered this problem while trying to debug parallel pg_restore behavior just now, and wondering why "-v -v" didn't produce the messages I saw in the source code.) regards, tom lane
Commits
-
Improve common/logging.c's support for multiple verbosity levels.
- 99175141c925 14.0 landed
-
Unified logging system for command-line programs
- cc8d41511721 12.0 cited