On Mon, 23 Jun 2025 at 18:02, Jacob Champion <jacob.champ...@enterprisedb.com> wrote: > If anyone today is relying on "backend-key-less" connection, this is > potentially a breaking change. For example, psycopg2 now complains: > > psycopg2.OperationalError: can't get cancellation key
It's not super clear what you're referring to with "this" in your first sentence. To be clear, I'm not saying we should start throwing errors for things in libpq that weren't errors before. But more as: I don't expect many client authors to have considered the scenario of no BackendKeyData. Because either an author believes the BackendKeyData is optional, in which case they shouldn't send a CancelRequest for those connections. Or they think it is required, in which case throwing an error seems like the sensible thing to do. And the implementations in PgBouncer and PG17 is neither, i.e. it won't throw an error, but instead of doing nothing it will do something clearly useless.