Looks good Pavel! May I just suggest you add the default case to src/test/regress/sql/plpgsql.sql and src/test/regress/expected/plpgsql.out, to make it easier for the reviewer to compare the difference between what happens in the default case, when not using the raise-syntax and not using the GUCs?
Suggested addition to the beginning of src/test/regress/sql/plpgsql.sql: +do $$ +begin + raise notice 'hello'; +end; +$$; + +do $$ +begin + raise exception 'hello'; +end; +$$; Many thanks for this patch! I will pray to the PL/pgSQL God it will be accepted. :) Best regards, Joel On Sun, Apr 26, 2015 at 9:19 AM, Pavel Stehule <pavel.steh...@gmail.com> wrote: > Hi > > I reduced this patch, little bit cleaned - now it is based on plpgsql GUC > display_context_min_messages - like client_min_messages, log_min_messages. > > Documentation added. > > Regards > > Pavel > > 2015-04-25 22:23 GMT+02:00 Pavel Stehule <pavel.steh...@gmail.com>: > >> Hi >> >> 2015-04-24 19:16 GMT+02:00 Joel Jacobson <j...@trustly.com>: >> >>> On Fri, Apr 24, 2015 at 6:07 PM, Pavel Stehule <pavel.steh...@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 >> >> What do you think about it? >> >> Regards >> >> Pavel >> >> >