On 14 Mar 2025 at 16:18 +0000, Tom Lane <tgl@sss.pgh.pa.us>, wrote:
Viktor Holmberg <v@viktorh.net> writes:
However, cleaning things up to use GUC seems like it’d be bigger task, and also would only be an extra thing, as isn_weak function would need to stay in for backwards compatibility I assume.
Wouldn't be a big deal --- yes, accept_weak_input would need a bit of
modification, but it's not much. The main reason I suggested it was
that a GUC would be subject to RESET ALL and so it'd fix the pooler
hazard you pointed out.
You’re right it’d definitely be much nicer. I’ll give it a go.
In terms of just fixing the immediate bug, I believe it’d just be to change isn.sql line 3423 and 2433:
No, we'd need to create an update script that uses ALTER FUNCTION.
Extension scripts are basically frozen once shipped.
Ah, thanks for the clarification. I’ve attached a patch that fixes the volatility. I thought it best to at least get some feedback on that before I try to dust off my C knowledge and try to fix the GUC stuff.
regards, tom lane