postgres.git / summary / log / commit / refs

commit    b55619948ea18dbc0f4f8ca823aaa687c0fa2567
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Wed Apr 07 10:58:54 2021 +0000
First released in: 11.12, 12.7, 13.3

    Fix potential rare failure in the kerberos TAP tests
    
    Instead of writing a query to psql's stdin, which can cause a failure
    where psql exits before writing, reporting a write failure with a broken
    pipe, this changes the logic to use -c.  This was not seen in the
    buildfarm as no animals with a sensitive environment are running the
    kerberos tests, but let's be safe.
    
    HEAD is able to handle the situation as of 6d41dd0 for all the test
    suites doing connection checks.  f44b9b6 has fixed the same problem for
    the LDAP tests.
    
    Discussion: https://postgr.es/m/YGu7ceWAiSNQDgH5@paquier.xyz
    Backpatch-through: 11


src/test/kerberos/t/001_auth.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/test/kerberos/t/001_auth.pl b/src/test/kerberos/t/001_auth.pl index d476a7800e7..8d49847948c 100644 --- a/src/test/kerberos/t/001_auth.pl +++ b/src/test/kerberos/t/001_auth.pl @@ -177,13 +177,15 @@ sub test_access # need to connect over TCP/IP for Kerberos my ($res, $stdoutres, $stderrres) = $node->psql( 'postgres', - "$query", + undef, extra_params => [ '-XAtd', $node->connstr('postgres') . " host=$host hostaddr=$hostaddr $gssencmode", '-U', - $role + $role, + '-c', + $query ]); # If we get a query result back, it should be true. [parent: e7bcfd717ef3]