Make "postgres -C guc" print "" not "(null)" for null-valued GUCs.
authorTom Lane
Wed, 22 Jun 2016 15:55:18 +0000 (11:55 -0400)
committerTom Lane
Wed, 22 Jun 2016 15:55:28 +0000 (11:55 -0400)
Commit 0b0baf262 et al made this case print "(null)" on the grounds that
that's what happened on platforms that didn't crash.  But neither behavior
was actually intentional.  What we should print is just an empty string,
for compatibility with the behavior of SHOW and other ways of examining
string GUCs.  Those code paths don't distinguish NULL from empty strings,
so we should not here either.  Per gripe from Alain Radix.

Like the previous patch, back-patch to 9.2 where -C option was introduced.

Discussion: 

src/backend/postmaster/postmaster.c

index b562ea75be3ce806409a7c7a4b210d1614714f8e..e2d8d7ae5182a2bc7904355211c95d89f6c0044a 100644 (file)
@@ -823,7 +823,7 @@ PostmasterMain(int argc, char *argv[])
        const char *config_val = GetConfigOption(output_config_variable,
                                                 false, false);
 
-       puts(config_val ? config_val : "(null)");
+       puts(config_val ? config_val : "");
        ExitPostmaster(0);
    }