Re: Introduce XID age and inactive timeout based replication slot invalidation - Mailing list pgsql-hackers

From Álvaro Herrera
Subject Re: Introduce XID age and inactive timeout based replication slot invalidation
Date
Msg-id 202502111422.xq6cztpgl2lm@alvherre.pgsql
Whole thread Raw
In response to Introduce XID age and inactive timeout based replication slot invalidation  (Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>)
Responses Re: Introduce XID age and inactive timeout based replication slot invalidation
List pgsql-hackers
Hello,

I find this proposed patch a bit strange and I feel it needs more
explanation.

When this thread started, Bharath justified his patches saying that a
slot that's inactive for a very long time could be problematic because
of XID wraparound.  Fine, that sounds a reasonable feature.  If you
wanted to invalidate slots whose xmins were too old, I would support
that.  He submitted that as his 0004 patch then.

However, he also chose to submit 0003 with invalidation based on a
timeout.  This is far less convincing a feature to me.  The
justification for the time out seems to be that ... it's difficult to
have a one-size-fits-all value because size of disks vary. (???)
Or something like that.  Really?  I mean -- yes, this will prevent
problems in toy databases when run in developer's laptops.  It will not
prevent any problems in production databases.  Do we really want a
setting that is only useful for toy situations rather than production?


Anyway, the thread is way too long, but after some initial pieces were
committed, Nisha took over and submitting patches derived from Bharath's
0003, and at some point the initial 0004 was dropped.  But 0004 was the
more useful one, I thought, so what's going on?

I'm baffled.

-- 
Álvaro Herrera         PostgreSQL Developer  —  https://www.EnterpriseDB.com/
Officer Krupke, what are we to do?
Gee, officer Krupke, Krup you! (West Side Story, "Gee, Officer Krupke")



pgsql-hackers by date:

Previous
From: Bertrand Drouvot
Date:
Subject: Re: Move wal_buffers_full to WalUsage (and report it in pgss/explain)
Next
From: Matheus Alcantara
Date:
Subject: Re: explain analyze rows=%.0f