On Fri, Apr 24, 2015 at 6:07 PM, Pavel Stehule <pavel.stehule@gmail.com> wrote: >> Example: >> >> context_messages = -warning, -error, +notice > > > I prefer your first proposal - and there is a precedent for plpgsql - > plpgsql_extra_checks > > It is clean for anybody. +-identifiers looks like horrible httpd config. :)
I have to agree on that :) Just thought this is the best we can do if we want to reduce the number of GUCs to a minimum.
I played with some prototype and I am thinking so we need only one GUC
plpgsql.display_context_messages = 'none'; -- compatible with current
plpgsql.display_context_messages = 'all';
plpgsql.display_context_messages = 'exception, log'; -- what I prefer
I implemented [ (WITH|WITHOUT) CONTEXT ] clause for RAISE statement
RAISE NOTICE WITH CONTEXT 'some message';
RAISE NOTICE WITH CONTEXT USING message = 'some message';
RAISE EXCEPTION WITHOUT CONTEXT 'other message';
The patch is very small with full functionality (without documentation) - I am thinking so it can work. This patch is back compatible - and allow to change default behave simply.
plpgsql.display_context_messages can be simplified to some like plpgsql.display_context_min_messages