Re: psql - add SHOW_ALL_RESULTS option

From: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
To: Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr>
Cc: "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: psql - add SHOW_ALL_RESULTS option
Date: 2022-03-22 14:52:21
Message-ID: 63350f81-6a43-f536-24e6-b30f48797732@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 17.03.22 19:04, Fabien COELHO wrote:
>
> Hello Peter,
>
>>> See attached v16 which removes the libpq workaround.
>>
>> I suppose this depends on
>>
>> https://www.postgresql.org/message-id/flat/ab4288f8-be5c-57fb-2400-e3e857f53e46%40enterprisedb.com
>>
>>
>> getting committed, because right now this makes the psql TAP tests
>> fail because of the duplicate error message.
>>
>> How should we handle that?
>
> Ok, it seems I got the patch wrong.
>
> Attached v17 is another try. The point is to record the current status,
> whatever it is, buggy or not, and to update the test when libpq fixes
> things, whenever this is done.

Your patch contains this test case:

+# Test voluntary crash
+my ($ret, $out, $err) = $node->psql(
+ 'postgres',
+ "SELECT 'before' AS running;\n" .
+ "SELECT pg_terminate_backend(pg_backend_pid());\n" .
+ "SELECT 'AFTER' AS not_running;\n");
+
+is($ret, 2, "server stopped");
+like($out, qr/before/, "output before crash");
+ok($out !~ qr/AFTER/, "no output after crash");
+is($err, 'psql:<stdin>:2: FATAL: terminating connection due to
administrator command
+psql:<stdin>:2: FATAL: terminating connection due to administrator command
+server closed the connection unexpectedly
+ This probably means the server terminated abnormally
+ before or while processing the request.
+psql:<stdin>:2: fatal: connection to server was lost', "expected error
message");

The expected output (which passes) contains this line twice:

psql:<stdin>:2: FATAL: terminating connection due to administrator command
psql:<stdin>:2: FATAL: terminating connection due to administrator command

If I paste this test case into current master without your patch, I only
get this line once. So your patch is changing this output. The whole
point of the libpq fixes was to not have this duplicate output. So I
think something is still wrong somewhere.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2022-03-22 14:53:12 Re: SQL/JSON: JSON_TABLE
Previous Message Matthias Kurz 2022-03-22 14:51:07 Re: SQL/JSON: JSON_TABLE