On Mon, Dec 27, 2010 at 6:06 AM, Tatsuo Ishii <is...@postgresql.org> wrote:
> Hi,
>
> While inspecting a report from pgpool-II user, I found an interesting
> behavior change in 8.2 series.
>
> When connecting to 8.2.13 using 9.0's psql, I got following error
> message:
>
> 11034 2010-12-27 14:50:57 JST FATAL:  unrecognized configuration parameter 
> "application_name"
>
> However if I connect to 8.2.18, I got no such error message. This
> makes pgpool-II confusing if those version of PostgreSQL are mixed
> used as backend.
>
> It seems somewhere between 8.2.13 and 8.2.18, an behavior change was
> made. According to a someone who were inspecting this, the change was
> precisely made between 8.2.14 and 8.2.15.  I couldn't find related
> item in HISTORY of 8.2.15.  Does anybody know if this change was
> intentional? If so, why?

It was intentional. The application_name GUC was added to libpq for
9.0 as a startup parameter to allow connections to indicate what they
were. A change was backported to prevent the server from rejecting
this parameter if libpq tried to set it, instead we simply ignore it
(if memory serves). The reason is, that we need to set
application_name early in the connection process, before we know the
server version, so we need the server to ignore it if we want people
to be able to use the 9.0 libpq with older servers (which of course,
we do).


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to