initdb from postgresql-previous (15.4) works with -current...

Did the commit expose a bug or create a bug? :)

On 8/22/24 9:31 PM, Philip Guenther wrote:
Whee.  Can someone send me or point me to a reproducer for this; e.g.,
does postgresql's own test suite hit this?

Philip


On Thu, Aug 22, 2024 at 10:35 AM Jeremy Evans <[email protected]> wrote:

On 08/22 03:43, Stuart Henderson wrote:
On 2024/08/22 14:14, Jeremy Evans wrote:
On 08/22 11:53, Markus Hennecke wrote:
Hello Jeremy,

when trying to create a new postgresql 16.4 instance on -current I run into
this error:

fixing permissions on existing directory /var/postgresql/data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Europe/Berlin
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... 2024-08-22 11:29:47.157 CEST
[54316] FATAL:  syntax error at or near "FOR" at character 5
2024-08-22 11:29:47.157 CEST [54316] STATEMENT:      FOR asciiword,
hword_asciipart, asciihword
                 WITH french_stem;

child process exited with exit code 1
initdb: removing contents of data directory "/var/postgresql/data"

Existing databases from previous 16.x versions are working, it is only the
initdb step that is failing.

I am pretty much lost how to proceed. The statement seems to be somewhere in
the middle of snoball_create.sql and I didn't see any obvious problems.

I've had two separate reports with the same error when using initdb,
part of PostgreSQL.  These don't occur on an older snapshot when using
PostgreSQL 16.4 (the version in -current), so something outside of
PostgreSQL in -current in the last few days seems likely to be the
cause.  I will be doing some testing, but my guess is, the older
version of PostgreSQL (16.3) also has the same issues on -current.

Confirmed, 16.3 does the same on -current.

Does anyone have an idea of what could have caused this?

There were some libc changes, it may be a bit fiddly to test with
this as there was a bump, easiest way is probably to start with
say ftp.hostserver.de:/archive/2024-08-01-0105 on a scratch machine
(it has packages too), and move forwards between snapshots, testing
initdb each time.

tb@ narrowed this down to the "Make exit(), fclose(), fflush(), and
freopen() comply with POSIX-2008" commit.  Reverting that commit fixes
the issue.  Thanks tb!



Reply via email to