Pavel Stehule wrote: > changes: > > * fixed warnings > * support for options - actually only two options are supported - > quite and fatal_errors > > these options are +/- useful - main reason for their existence is > testing of support of options - processing on CHECK ... stmt side and > processing on checker function side. > > options are send as 2d text array - some like > '{{quite,on},{fatal_errors,on}} - so direct call of checker function > is possible > > * regress test for multi check
First of all: It should be "quiet" and not "quite". The patch applies and builds fine. It fails one of ist own regression tests, here is the diff: *** /postgres/cvs/postgresql/src/test/regress/expected/plpgsql.out 2011-12-14 11:50:44.000000000 +0100 --- /postgres/cvs/postgresql/src/test/regress/results/plpgsql.out 2011-12-14 16:19:45.000000000 +0100 *************** *** 4975,4991 **** end; $$ language plpgsql; check function all in schema plpgsql_check; - NOTICE: checked function "plpgsql_check.fce1()" WARNING: error in function "plpgsql_check.fce2()" DETAIL: too few parameters specified for RAISE CONTEXT: line 3 at RAISE NOTICE: checked function "plpgsql_check.fce3()" check function all in schema plpgsql_check with (quite); WARNING: error in function "plpgsql_check.fce2()" DETAIL: too few parameters specified for RAISE CONTEXT: line 3 at RAISE check function all in schema plpgsql_check with (fatal_errors); - NOTICE: checked function "plpgsql_check.fce1()" ERROR: too few parameters specified for RAISE CONTEXT: PL/pgSQL function "fce2" line 3 at RAISE check function all in schema plpgsql_check with (quite, fatal_errors on); --- 4975,4990 ---- end; $$ language plpgsql; check function all in schema plpgsql_check; WARNING: error in function "plpgsql_check.fce2()" DETAIL: too few parameters specified for RAISE CONTEXT: line 3 at RAISE NOTICE: checked function "plpgsql_check.fce3()" + NOTICE: checked function "plpgsql_check.fce1()" check function all in schema plpgsql_check with (quite); WARNING: error in function "plpgsql_check.fce2()" DETAIL: too few parameters specified for RAISE CONTEXT: line 3 at RAISE check function all in schema plpgsql_check with (fatal_errors); ERROR: too few parameters specified for RAISE CONTEXT: PL/pgSQL function "fce2" line 3 at RAISE check function all in schema plpgsql_check with (quite, fatal_errors on); ====================================================================== The "quiet" option is not very intuitive: test=> CHECK FUNCTION ALL WITH (quite 'off'); NOTICE: skip check function "atrig()", it is trigger function NOTICE: skip check function "perl_max(integer,integer)", language "plperl" hasn't checker function NOTICE: checked function "ok()" NOTICE: checked function "newstyle(integer)" CHECK FUNCTION test=> CHECK FUNCTION ALL WITH (quite 'on'); NOTICE: skip check function "atrig()", it is trigger function CHECK FUNCTION I understand that "quiet" cannot silence this message, nor "skip ..., uses C language" and "skip ..., it uses internal language", but that means that it is not very useful as it is. If all we need is a sample option, I think that "fatal_errors" is enough, and I think that is an option that can be useful. Yours, Laurenz Albe -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers