Re: libpq API incompatibility between 7.4 and 8.0 - Mailing list pgsql-hackers

From Martin Pitt
Subject Re: libpq API incompatibility between 7.4 and 8.0
Date
Msg-id 20050202165359.GB31131@box79162.elkhouse.de
Whole thread Raw
In response to Re: libpq API incompatibility between 7.4 and 8.0  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Hi!

(sorry for the additional addresses; I'm not subscribed to -hackers,
so my mail will last a while until it arrives there).

Tom Lane [2005-02-02 11:07 -0500]:
> Peter Eisentraut <peter_e@gmx.net> writes:
> > Martin Pitt has detected that the libpq API has changed incompatibly
> > between 7.4 and 8.0.  This has the effect, for example, that 7.4's psql
> > cannot run with 8.0's libpq.
>
> [ shrug... ]  I don't think we've ever guaranteed that anyway.

If you don't guarantee a backwards compatible API, then you should
give libpq a new SONAME. By keeping the SONAME "3" you did promise
backwards compatibility.

The problem with this issue is that it is a real pain for distributors
to handle broken SONAMEs. If every distributor invents his own one,
then there will be conflicts at some point. This gets worse if you do
release a new libpq SONAME later, which might conflict with any  fake
SONAME a distributor might have invented.

> I will resist putting get_progname back into libpq, because it
> should never have been there, at least not with that name: it's an
> undocumented infringement on application namespace.

I understand such concerns, but you cannot undo the history.  libpq3
is out there and installed on maybe hundreds of thousands of machines,
and your own psql frontend uses it.

The next best option would be to fix the 7.4 version of psql to not
use this symbol any more. However, this is still a pain since then you
cannot upgrade from earlier versions to 8.0 any more.

What would you propose as a solution? There can only be one
/usr/lib/libpq.so.3.

Thanks,

Martin

--
Martin Pitt                       http://www.piware.de
Ubuntu Developer            http://www.ubuntulinux.org
Debian GNU/Linux Developer       http://www.debian.org

pgsql-hackers by date:

Previous
From: Gaetano Mendola
Date:
Subject: Re: weird behaviour on DISTINCT ON
Next
From: Robin Chauhan
Date:
Subject: Crash when inserting gist records, or creating index on ( int, geom )