From 6d87daace8d5e9cec80d1b3b5d1a03ff9c2206ee Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Wed, 12 Aug 2020 09:19:58 +0200 Subject: [PATCH v1 1/2] Drop final newline from pg_get_functiondef result This makes it more consistent with other pg_get_*def() functions. psql (for \ef) already ensures that a trailing newline is added as necessary, so this change doesn't affect psql's functionality. --- src/backend/utils/adt/ruleutils.c | 2 -- src/test/regress/expected/create_function_3.out | 12 ++++-------- src/test/regress/expected/create_procedure.out | 3 +-- src/test/regress/expected/rules.out | 3 +-- 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index 60dd80c23c..877f99cba3 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -2832,8 +2832,6 @@ pg_get_functiondef(PG_FUNCTION_ARGS) appendStringInfoString(&buf, prosrc); appendBinaryStringInfo(&buf, dq.data, dq.len); - appendStringInfoChar(&buf, '\n'); - ReleaseSysCache(proctup); PG_RETURN_TEXT_P(string_to_text(buf.data)); diff --git a/src/test/regress/expected/create_function_3.out b/src/test/regress/expected/create_function_3.out index ba260df996..5d0be17282 100644 --- a/src/test/regress/expected/create_function_3.out +++ b/src/test/regress/expected/create_function_3.out @@ -200,8 +200,7 @@ SELECT pg_get_functiondef('functest_A_1'::regproc); CREATE OR REPLACE FUNCTION temp_func_test.functest_a_1(text, date)+ RETURNS boolean + LANGUAGE sql + - AS $function$SELECT $1 = 'abcd' AND $2 > '2001-01-01'$function$ + - + AS $function$SELECT $1 = 'abcd' AND $2 > '2001-01-01'$function$ (1 row) SELECT pg_get_functiondef('functest_B_3'::regproc); @@ -211,8 +210,7 @@ SELECT pg_get_functiondef('functest_B_3'::regproc); RETURNS boolean + LANGUAGE sql + STABLE + - AS $function$SELECT $1 = 0$function$ + - + AS $function$SELECT $1 = 0$function$ (1 row) SELECT pg_get_functiondef('functest_C_3'::regproc); @@ -222,8 +220,7 @@ SELECT pg_get_functiondef('functest_C_3'::regproc); RETURNS boolean + LANGUAGE sql + SECURITY DEFINER + - AS $function$SELECT $1 < 0$function$ + - + AS $function$SELECT $1 < 0$function$ (1 row) SELECT pg_get_functiondef('functest_F_2'::regproc); @@ -233,8 +230,7 @@ SELECT pg_get_functiondef('functest_F_2'::regproc); RETURNS boolean + LANGUAGE sql + STRICT + - AS $function$SELECT $1 = 50$function$ + - + AS $function$SELECT $1 = 50$function$ (1 row) -- information_schema tests diff --git a/src/test/regress/expected/create_procedure.out b/src/test/regress/expected/create_procedure.out index 211a42cefa..2c94b9a4b6 100644 --- a/src/test/regress/expected/create_procedure.out +++ b/src/test/regress/expected/create_procedure.out @@ -29,8 +29,7 @@ SELECT pg_get_functiondef('ptest1'::regproc); LANGUAGE sql + AS $procedure$ + INSERT INTO cp_test VALUES (1, x); + - $procedure$ + - + $procedure$ (1 row) -- show only normal functions diff --git a/src/test/regress/expected/rules.out b/src/test/regress/expected/rules.out index 601734a6f1..be434c97ac 100644 --- a/src/test/regress/expected/rules.out +++ b/src/test/regress/expected/rules.out @@ -3402,8 +3402,7 @@ SELECT pg_get_functiondef('func_with_set_params()'::regprocedure); SET work_mem TO '4MB' + SET "DateStyle" TO 'iso, mdy' + SET local_preload_libraries TO 'Mixed/Case', 'c:/''a"/path', '', '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'+ - AS $function$select 1;$function$ + - + AS $function$select 1;$function$ (1 row) -- tests for pg_get_*def with invalid objects -- 2.28.0