plpgsql.warnings = 'all' # enable all warnings, defauls to the empty list, i.e. no warnings plpgsql.warnings = 'shadow, unused' # enable just "shadow" and "unused" warnings plpgsql.warnings_as_errors = on # defaults to off?
This interface is a lot more flexible and should address Jim's concerns as well.
In this context is not clean if this option is related to plpgsql compile warnings, plpgsql executor warnings or general warnings.
I agree, it's better to include the word "compiler" in the GUC name. But do we really need WARNING, ERROR and FATAL levels though? Would WARNING and ERROR not be enough?
I am not strong in level names - and it is my subjective opinion only (as not native speaker)
just
plpgsql.compile_warning=warning
or
plpgsql.compile_warning=error
looks little bit obscure (or as contradiction). More - "fatal" is used by gcc and some compilers as "stop on first error"