From: | Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com> |
---|---|
To: | Jelte Fennema-Nio <postgres(at)jeltef(dot)nl> |
Cc: | Tatsuo Ishii <ishii(at)postgresql(dot)org>, tgl(at)sss(dot)pgh(dot)pa(dot)us, hlinnaka(at)iki(dot)fi, peter(at)eisentraut(dot)org, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: BackendKeyData is mandatory? |
Date: | 2025-06-30 17:58:53 |
Message-ID: | CAOYmi+nx1FBpCRXQdCzqBvw2NqYWRCe=z4wrDiX0FE3aA3zLEg@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Jun 25, 2025 at 12:12 AM Jelte Fennema-Nio <postgres(at)jeltef(dot)nl> wrote:
> Attached is an attempt at implementing the above. I did not test it
> against these systems though.
With 0001, psycopg2 appears to function again when talking to a server
that doesn't send a cancellation key, so that's good.
It looks like Heikki has an open item for this, so I'll defer to him
for copyediting preferences around the comments and commit messages. I
do have a problem with this part of the new documentation:
+ [...] If no
+ BackendKeyData is sent by the server, then that means that the backend
+ does not support canceling queries using the CancelRequest messages.
I don't think we really know that it means that, yet. I'd prefer something like
Beginning with PostgreSQL 18, libpq assumes that servers do not
support query cancellation if they do not send BackendKeyData.
in the hope that either anyone affected will complain at us to revert,
or it'll become the de facto meaning after some time.
> I also added small commit that checks for the 256 byte key length limit
> described in the protocol documentation. This thread made me remember
> that we talked about that during PGConf.dev.
0002 seems to result in a connection hang if the server sends a bigger
key. I think this may be a latent bug in the original patch -- if
getBackendKeyData() fails, no effort is made to clean up state or
manage the connection buffer. We just... return.
Also, what should we do if the server sends a zero-length key?
Thanks,
--Jacob
From | Date | Subject | |
---|---|---|---|
Next Message | Antonin Houska | 2025-06-30 18:22:05 | Re: why there is not VACUUM FULL CONCURRENTLY? |
Previous Message | Shirisha Shirisha | 2025-06-30 17:24:05 | Re: Proposal to allow DELETE/UPDATE on partitioned tables with unsupported foreign partitions |