Re: pg_resetwal tests, logging, and docs update

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: Aleksander Alekseev <aleksander(at)timescale(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pg_resetwal tests, logging, and docs update
Date: 2023-10-31 11:50:23
Message-ID: 15a59bca-0383-183c-9383-0446da9b87e1@eisentraut.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 30.10.23 12:55, Aleksander Alekseev wrote:
> The patch LGTM. However, postgresql:pg_resetwal test suite doesn't
> pass on Windows according to cfbot. Seems to be a matter of picking a
> more generic regular expression:
>
> ```
> at C:/cirrus/src/bin/pg_resetwal/t/001_basic.pl line 54.
> 'pg_resetwal: error: could not change directory to
> "foo": No such file or directory
> doesn't match '(?^:error: could not read permissions of directory)'
> ```
>
> Should we simply use something like:
>
> ```
> qr/error: could not (read|change).* directory/
> ```

Hmm. I think maybe we should fix the behavior of
GetDataDirectoryCreatePerm() to be more consistent between Windows and
non-Windows. This is usually the first function a program uses on the
proposed data directory, so it's also responsible for reporting if the
data directory does not exist. But then on Windows, because the
function does nothing, those error scenarios end up on quite different
code paths, and I'm not sure if those are really checked that carefully.
I think we can make this more robust if we have
GetDataDirectoryCreatePerm() still run the stat() call on the proposed
data directory and report the error. See attached patch.

Attachment Content-Type Size
0001-More-consistent-behavior-of-GetDataDirectoryCreatePe.patch text/plain 2.1 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2023-10-31 12:21:07 Re: Intermittent failure with t/003_logical_slots.pl test on windows
Previous Message Vik Fearing 2023-10-31 11:45:20 Re: MERGE ... RETURNING