Tom Lane <tgl@sss.pgh.pa.us> writes:
> Michael Paquier <michael@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?= <ilmari@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