On Wed, Jan 25, 2012 at 12:54:00PM -0600, Merlin Moncure wrote:
> On Wed, Jan 25, 2012 at 11:24 AM, Marko Kreen <markokr@gmail.com> wrote:
> > I specifically want to avoid any sort of per-connection
> > negotation, except the "max format version supported",
> > because it will mess up multiplexed usage of single connection.
> > Then they need to either disabled advanced formats completely,
> > or still do it per-query somehow (via GUCs?) which is mess.
>
> Being able to explicitly pick format version other than the one the
> application was specifically written against adds a lot of complexity
> and needs to be justified. Maybe you're trying to translate data
> between two differently versioned servers? I'm trying to understand
> the motive behind your wanting finer grained control of picking format
> version...
You mean if client has written with version N formats, but connects
to server with version N-1 formats? True, simply not supporting
such case simplifies client-side API.
But note that it does not change anything on protocol level, it's purely
client-API specific. It may well be that some higher-level APIs
(JDBC, Npgsql, Psycopg) may support such downgrade, but with lower-level
API-s (raw libpq), it may be optional whether the client wants to
support such usage or not.
--
marko