From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Vladimir Sitnikov <sitnikov(dot)vladimir(at)gmail(dot)com> |
Cc: | Shay Rojansky <roji(at)roji(dot)org>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de>, Greg Stark <stark(at)mit(dot)edu>, Tatsuo Ishii <ishii(at)postgresql(dot)org>, Robert Haas <robertmhaas(at)gmail(dot)com> |
Subject: | Re: Slowness of extended protocol |
Date: | 2016-08-08 18:09:09 |
Message-ID: | 10364.1470679749@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Vladimir Sitnikov <sitnikov(dot)vladimir(at)gmail(dot)com> writes:
> The point is "adding a message to current v3 protocol is not a backward
> compatible change".
> The problem with adding new message types is not only "client support", but
> deployment issues as well: new message would require simultaneous upgrade
> of both backend, client, and pgbouncer.
Right ...
> It could make sense to add some kind of transparent extensibility to the
> protocol, so clients can just ignore unknown message types.
I'm not really sure what use that particular behavior would be. We
certainly want to try to have some incremental extensibility in there
when we do v4, but I think it would more likely take the form of a way
for client and server to agree on which extensions they support.
> On the other hand, usage of some well-defined statement name to trigger
> the special case would be fine: all pgbouncer versions would pass those
> parse/bind/exec message as if it were regular messages.
I do not accept this idea that retroactively defining special semantics
for certain statement names is not a protocol break. If it causes any
change in what the server's response would be, then it is a protocol
break.
> Note: it is quite easy to invent a name that is not yet used in the wild,
> so it is safe.
Sir, that is utter nonsense. And even if it were true, why is it that
this way would safely pass through existing releases of pgbouncer when
other ways would not? Either pgbouncer needs to understand what it's
passing through, or it doesn't.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Shay Rojansky | 2016-08-08 18:25:49 | Re: Slowness of extended protocol |
Previous Message | Pavan Deolasee | 2016-08-08 17:52:49 | Re: Heap WARM Tuples - Design Draft |