Re: pgsql: Track last_inactive_time in pg_replication_slots.
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: shveta malik <shveta.malik@gmail.com>, "Drouvot, Bertrand" <bertranddrouvot.pg@gmail.com>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, Amit Kapila <akapila@postgresql.org>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2024-03-25T14:20:51Z
Lists: pgsql-hackers
On Mon, Mar 25, 2024 at 10:02 AM Amit Kapila <amit.kapila16@gmail.com> wrote: > We considered the other two names as last_inactive_at and > last_active_time. For the first (last_inactive_at), there was an > argument that most other fields that display time ends with _time. For > the second (last_active_time), there was an argument that it could be > misleading as one could think that it should be updated each time WAL > record decoding is happening [1]. The other possibility is to name it > last_used_time but I think it won't be much different from > last_active_time. I don't understand the bit about updating it each time WAL record decoding is happening. If it's the last active time, and the slot is currently active, then the answer is either "right now" or "currently undefined." I'd expect to see NULL in the system view in such a case. And if that's so, then there's nothing to update each time a record is decoded, because it's just still going to show NULL. Why does this field get set to the current time when the slot is restored from disk? -- Robert Haas EDB: http://www.enterprisedb.com
Commits
-
Allow synced slots to have their inactive_since.
- 6f132ed693b6 17.0 landed
-
Change last_inactive_time to inactive_since in pg_replication_slots.
- 6d49c8d4b4f4 17.0 landed
-
Track last_inactive_time in pg_replication_slots.
- a11f330b5584 17.0 cited
-
Remove vacuum_defer_cleanup_age
- 1118cd37eb61 16.0 cited