On Mon, Feb 9, 2026 at 3:56 PM Jelte Fennema-Nio <[email protected]> wrote:
> Looks like a good improvement. As said before I'm fine with either location 
> for the URL.

Thanks, squashed in v8.

> I'm wondering if we should be a bit more liberal in showing this error 
> explanation, since I expect most servers to throw an error rather than send 
> an incorrect negotiation. e.g. We could report it on hard connection 
> closures. Or if there is "3.9999" or "version" or "_pq_" in the error 
> message. (the message should then be "this could indicate a bug in..." 
> because we're not fully certain)

I think this is a great point, but I don't want to turn a clear signal
of "bug somewhere in the server, investigate now" into "maybe a bug,
probably just work around it". I don't really want anyone to be able
to (correctly) say that you can ignore this message in X case.

I took a look at some old implementation behaviors, and I think that
if a server responds to our startup packet with either a protocol
violation code or the literal grease version number (maybe in decimal,
maybe in other formats) in the error message, that's probably a clear
enough signal that something is wrong with the server. I've
implemented that idea in v8-0002. Maybe "_pq_." would be an okay
marker, too?

Would this patch result in desirable behavior for a legacy pgbouncer deployment?

--Jacob

Attachment: v8-0001-libpq-Grease-the-protocol-by-default.patch
Description: Binary data

Attachment: v8-0002-squash-libpq-Grease-the-protocol-by-default.patch
Description: Binary data

Reply via email to