Re: Assertion failure during initdb with transaction_timeout set

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Assertion failure during initdb with transaction_timeout set
Date: 2025-07-04 14:47:26
Message-ID: 231835.1751640446@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com> writes:
> While discussing the assertion failure with track_commit_timestamp=on during initdb [1],
> I found a similar issue with another GUC: transaction_timeout.

> This happens because enable_timeout() tries to start the transaction timeout
> before InitializeTimeouts() has been called, i.e., the timeout subsystem
> hasn't been initialized yet.

> To address this, I'm thinking forcibly setting transaction_timeout to 0
> during bootstrap or in initdb.

I don't like inventing a different workaround for each case we find.
The precedent established by the other patch is to prevent the
relevant subsystem from starting if IsBootstrapProcessingMode().
Can't we do something similar here?

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Yugo Nagata 2025-07-04 15:03:56 Re: Suggestion to add --continue-client-on-abort option to pgbench
Previous Message Ashutosh Bapat 2025-07-04 14:46:42 Re: Report replica identity in pg_publication_tables