summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorTom Lane2011-07-08 21:02:58 +0000
committerTom Lane2011-07-08 21:02:58 +0000
commit9d522cb35d8b4f266abadd0d019f68eb8802ae05 (patch)
tree684addb86e6997476745eaf00738875f6ac94a59 /src/include
parent89fd72cbf26f5d2e3d86ab19c1ead73ab8fac0fe (diff)
Fix another oversight in logging of changes in postgresql.conf settings.
We were using GetConfigOption to collect the old value of each setting, overlooking the possibility that it didn't exist yet. This does happen in the case of adding a new entry within a custom variable class, as exhibited in bug #6097 from Maxim Boguk. To fix, add a missing_ok parameter to GetConfigOption, but only in 9.1 and HEAD --- it seems possible that some third-party code is using that function, so changing its API in a minor release would cause problems. In 9.0, create a near-duplicate function instead.
Diffstat (limited to 'src/include')
-rw-r--r--src/include/utils/guc.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/include/utils/guc.h b/src/include/utils/guc.h
index ee52cd735e3..011f6b7f001 100644
--- a/src/include/utils/guc.h
+++ b/src/include/utils/guc.h
@@ -296,7 +296,8 @@ extern void DefineCustomEnumVariable(
extern void EmitWarningsOnPlaceholders(const char *className);
-extern const char *GetConfigOption(const char *name, bool restrict_superuser);
+extern const char *GetConfigOption(const char *name, bool missing_ok,
+ bool restrict_superuser);
extern const char *GetConfigOptionResetString(const char *name);
extern void ProcessConfigFile(GucContext context);
extern void InitializeGUCOptions(void);