From 6e10631d1e6e350ba3f82b0bd3a29678f9f5badd Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 31 Oct 2022 13:59:57 +0100 Subject: [PATCH] pg_dump test: Make concatenated create_sql commands more readable When the pg_dump 002_pg_dump.pl test generates the command to load the schema, it does # Add terminating semicolon $create_sql{$test_db} .= $tests{$test}->{create_sql} . ";"; In some cases, this creates a duplicate semicolon, but more importantly, this doesn't add any newline. So if you look at the result in either the server log or in tmp_check/log/regress_log_002_pg_dump, it looks like a complete mess. This patch makes the output look cleaner for manual inspection: add semicolon only if necessary, and add two newlines. Discussion: https://www.postgresql.org/message-id/flat/d6aec95a-8729-43cc-2578-f2a5e46640e0%40enterprisedb.com --- src/bin/pg_dump/t/002_pg_dump.pl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl index a869321cdf..5df5a0ad59 100644 --- a/src/bin/pg_dump/t/002_pg_dump.pl +++ b/src/bin/pg_dump/t/002_pg_dump.pl @@ -3984,8 +3984,12 @@ foreach my $test ( next; } - # Add terminating semicolon - $create_sql{$test_db} .= $tests{$test}->{create_sql} . ";"; + # Normalize command ending: strip all line endings, add + # semicolon if missing, add two newlines. + my $create_sql = $tests{$test}->{create_sql}; + chomp $create_sql; + $create_sql .= ';' unless substr($create_sql, -1) eq ';'; + $create_sql{$test_db} .= $create_sql . "\n\n"; } } -- 2.39.5