Tom Lane <t...@sss.pgh.pa.us> writes:

> Michael Paquier <mich...@paquier.xyz> writes:
>> On Thu, Jan 23, 2025 at 08:25:45PM +0000, Dagfinn Ilmari Mannsåker wrote:
>>> Here's a patch for that.
>
>> Thanks.  I had a bit of time today and applied it.
>
> BF member drongo doesn't like the new test for amcheck.
> Looks like it has to do with SSPI authentication producing
> a different error than expected:

Ah yes, I always forget about that quirk on Windows.

> stderr:
> #   Failed test 'checking with a non-existent user stderr /(?^:role 
> "no_such_user" does not exist)/'
> #   at C:/prog/bf/root/HEAD/pgsql/src/bin/pg_amcheck/t/002_nonesuch.pl line 
> 86.
> # 'pg_amcheck: error: connection to server at "127.0.0.1", port 19928
> failed: FATAL: SSPI authentication failed for user "no_such_user"
> # '
> #     doesn't match '(?^:role "no_such_user" does not exist)'
> # Looks like you failed 1 test of 107.
>
> You might be able to work around this with auth_extra,
> a la 1e3f461e8 and other past fixes.

Here's a (blind, but at least doesn't break on Linux) patch for that.

- ilmari

>From eb168096c3e88cbd849907f7b6398d87a7844544 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dagfinn=20Ilmari=20Manns=C3=A5ker?= <ilm...@ilmari.org>
Date: Fri, 24 Jan 2025 18:50:05 +0000
Subject: [PATCH] Fix Windows pg_amcheck test failure

For SSPI auth extra users need to be explicitly allowed, or we get
"SSPI authentication failed" instead of the expected "role does not
exist" error.
---
 src/bin/pg_amcheck/t/002_nonesuch.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/pg_amcheck/t/002_nonesuch.pl b/src/bin/pg_amcheck/t/002_nonesuch.pl
index 2697f1c1b1a..f23368abeab 100644
--- a/src/bin/pg_amcheck/t/002_nonesuch.pl
+++ b/src/bin/pg_amcheck/t/002_nonesuch.pl
@@ -11,7 +11,7 @@
 # Test set-up
 my ($node, $port);
 $node = PostgreSQL::Test::Cluster->new('test');
-$node->init;
+$node->init(auth_extra => [ '--create-role' => 'no_such_user' ]);
 $node->start;
 $port = $node->port;
 
-- 
2.39.5

Reply via email to