Re: Tom Lane 2018-09-28 <20671.1538142538@sss.pgh.pa.us>
> >> I proposed in
> >> https://www.postgresql.org/message-id/19581.1538077716@sss.pgh.pa.us
> >>
> >> that we should remove pqsignal, as well as
> >> pg_utf_mblen
> >> pg_encoding_to_char
> >> pg_char_to_encoding
> >> pg_valid_server_encoding
> >> pg_valid_server_encoding_id
> >>
> >> from libpq's exports, on the grounds that (a) nobody should be using
> >> those (they're undocumented as exports), and (b) anybody who is using
> >> them should get them from libpgport/libpgcommon instead. Thoughts?
>
> > I'm fine with that if we say (a) should be true, and even if it is
> > not, (b) is an easy workaround. Bumping the libpq SONAME just because
> > of this seems excessive.
>
> Yeah, if anyone insists that this requires a soname bump, I'd probably
> look for another solution. Making the makefiles a bit cleaner is not
> worth the churn that would cause, IMO.
It took a while to notice, but this change does break 8.2's initdb if
libpq5 from PG12 is installed:
$ /usr/lib/postgresql/8.2/bin/initdb
/usr/lib/postgresql/8.2/bin/initdb: symbol lookup error: /usr/lib/postgresql/8.2/bin/initdb: undefined symbol:
pqsignal
postgres 8.2 itself seems to work fine.
Christoph