Re: pgsql: Make cancel request keys longer
От | Peter Eisentraut |
---|---|
Тема | Re: pgsql: Make cancel request keys longer |
Дата | |
Msg-id | 2afbd9c6-51b7-450f-9ae1-61e552368963@eisentraut.org обсуждение исходный текст |
Ответ на | Re: pgsql: Make cancel request keys longer (Heikki Linnakangas <hlinnaka@iki.fi>) |
Список | pgsql-committers |
On 09.04.25 10:53, Heikki Linnakangas wrote: > On 08/04/2025 22:41, Heikki Linnakangas wrote: >> On 08/04/2025 20:06, Peter Eisentraut wrote: >>> While I was looking at this, I suggest to make the first argument >>> void *. This is consistent for passing binary data. >> >> Ok, sure. > > On second thoughts, -1 on that. 'void *' is appropriate for functions > like libc's read() or pq_sendbytes(), where the buffer can point to > anything. In other words, the caller is expected to have a pointer like > 'foobar *', and it gets cast to 'void *' when you call the function. > That's not the case with the cancellation key. The cancellation key is > just an array of bytes, the caller is expected to pass an array of > bytes, not a struct. > > The right precedent for that are e.g. SCRAM functions in scram-common.h, > for example. They use "const uint8 *" for the hashes. > > I'll switch to "const uint *" everywhere that deals with cancel keys. > There are a few more variables elsewhere in the backend and in libpq. I was having the same second thoughts overnight. I agree with your conclusion.
В списке pgsql-committers по дате отправления: