Re: application_name backend (not) reporting back to the client : pgbouncer, PgSQL 16.1, pgbouncer 1.21.0
От | Achilleas Mantzios |
---|---|
Тема | Re: application_name backend (not) reporting back to the client : pgbouncer, PgSQL 16.1, pgbouncer 1.21.0 |
Дата | |
Msg-id | 0028c29e-26f3-48e7-9201-f94d2579b9ba@cloud.gatewaynet.com обсуждение исходный текст |
Ответ на | Re: application_name backend (not) reporting back to the client : pgbouncer, PgSQL 16.1, pgbouncer 1.21.0 (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: application_name backend (not) reporting back to the client : pgbouncer, PgSQL 16.1, pgbouncer 1.21.0
|
Список | pgsql-admin |
Στις 9/12/23 00:54, ο/η Tom Lane έγραψε: > Achilleas Mantzios <a.mantzios@cloud.gatewaynet.com> writes: >> the trick is to have "application_name=" with no value. This causes the >> server to not set application_name initially. > No, that sets it to an empty string, while application_name='' sets > it to two single quotes, according to the testing I did. In either > case, that value will be reported to the client as the active value > during connection start. Then the subsequent SET causes a new > report, but (since v14) only if the value being set is different. Thank you Tom, now I see we have a different behavior, I have uploaded a video that demonstrates my case : https://youtu.be/qcrVsFszV0Y I didn't have the time to fire up wireshark/tcpdump or debugger thought (I should). > >> Please check the scenario >> Client C1 connects to S1, sets application_name. BEGINS, COMMITS, the >> server gets freed to server the next client. >> Client C2 connects to the same S1, sets application_name, and gets no >> report back. So it stays with application_name empty. Then this breaks >> the application. >> How could pgbouncer prevent this from happening ? > pgbouncer would have to regurgitate the latest ParameterStatus > messages to the new client (during its faked-up initial connection > handshake) to ensure everything's synchronized correctly. > If for some reason it's not doing that, that would be a pretty > serious bug if you ask me, since clients might be relying on > hearing the truth about settings like client_encoding. Since > the whole point of pgbouncer is that the backend doesn't know > a new client has been slotted in, it's not clear to me how or > why the backend should solve this. You helped a great deal! It is time I open an issue on the pgbouncer project. > > regards, tom lane -- Achilleas Mantzios IT DEV - HEAD IT DEPT Dynacom Tankers Mgmt
В списке pgsql-admin по дате отправления: