Re: Unexpected behavior when setting "idle_replication_slot_timeout"
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: "David G. Johnston" <david.g.johnston@gmail.com>
Cc: Fujii Masao <masao.fujii@oss.nttdata.com>,
Amit Kapila <amit.kapila16@gmail.com>,
Laurenz Albe <laurenz.albe@cybertec.at>,
Nisha Moond <nisha.moond412@gmail.com>,
Gunnar Morling <gunnar.morling@googlemail.com>,
"pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>
Date: 2025-07-05T16:13:08Z
Lists: pgsql-bugs
I wrote:
> I'm kind of down on changing the unit, because it will *silently*
> break configuration files where the value was set without a unit.
Oh, wait a second. I just noticed that this variable is new in v18.
So there won't be a compatibility issue as long as we change it in
v18 too. So changing it to a base of seconds seems sufficient,
and more in line with existing practice:
regression=# select name,unit from pg_settings where name like '%timeout';
name | unit
-------------------------------------+------
archive_timeout | s
authentication_timeout | s
checkpoint_timeout | s
deadlock_timeout | ms
idle_in_transaction_session_timeout | ms
idle_replication_slot_timeout | min
idle_session_timeout | ms
lock_timeout | ms
statement_timeout | ms
tcp_user_timeout | ms
transaction_timeout | ms
wal_receiver_timeout | ms
wal_sender_timeout | ms
(13 rows)
Using 'ms' seems clearly overkill, but there's precedent for
timeouts measured in seconds.
regards, tom lane
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
doc: Clarify meaning of "idle" in idle_replication_slot_timeout.
- afb64a56d9c1 18.0 landed
- 110e6dcaa659 19 (unreleased) landed
-
Change unit of idle_replication_slot_timeout to seconds.
- 37c76aeb9ae3 18.0 landed
- 05dedf43d380 19 (unreleased) landed