On Sat, Apr 30, 2016 at 9:39 AM, Tom Lane <t...@sss.pgh.pa.us> wrote:
> "David G. Johnston" <david.g.johns...@gmail.com> writes: > > I've seen and can work with various work-arounds but it seems odd that > > pg_settings doesn't show these custom GUCs. > > Because we don't know what type they should be. > > If we're ever to support custom GUCs properly, rather than as a hack that > accidentally sorta works, there needs to be a way to declare them and > establish their properties; whereupon there would be info for pg_settings > to display. > It seems that a "reasonable defaults" policy would be better than nothing...though given the "missing_ok" feature the work-around with pg_settings isn't needed. The existing set_config would setup the text-oriented defaults while, if someone cares enough, a set_custom_config (or overloaded set_config) function could be written that would allow specifying stuff like description, unit, initial value, etc. But what amounts to a session-local hstore seem, whose contents are displayed in pg_settings along with the system GUCs, and is documented, seems like an adequate feature to acknowledge officially. > > Is there a simple way to read the value without receiving an error if the > > value is missing? > > See 10fb48d66, which I don't particularly approve of because it piled > another hack on top of that mess without doing a thing to make it cleaner. > Thanks. I recalled seeing that, just didn't remember that it is new to 9.6 - I only looked at the 9.5 documentation and didn't see it. David J.