RPMs from postgresql.org break CentOS/RHEL RPMs

Started by Peter Kreftingabout 6 years ago2 messagesgeneral
Jump to latest
#1Peter Krefting
peter@softwolves.pp.se

Hi!

I have a system installed where one software is running a database
using the PostgreSQL 9.2 packages included in the CentOS/RHEL 7
release. On the side, I am trying to install another software that is
using the PostgreSQL 12 packages found at download.postgresql.org
(EL-7-x86_64). However, I am running into problems when both are
installed at the same time, the postgresql.org ones causes the CentOS
packages to fail at run-time:

psql: symbol lookup error: psql: undefined symbol: pqsignal
psql: symbol lookup error: psql: undefined symbol: pqsignal

# ldd /usr/bin/psql |grep pq
libpq.so.5 => /usr/pgsql-12/lib/libpq.so.5 (0x00007f93fcbe2000)
# /usr/bin/psql --version
psql (PostgreSQL) 9.2.24

How do I resolve this issue, to allow both programs to run on the same
host?

--
\\// Peter - http://www.softwolves.pp.se/

#2Michael Paquier
michael@paquier.xyz
In reply to: Peter Krefting (#1)
Re: RPMs from postgresql.org break CentOS/RHEL RPMs

On Thu, Mar 19, 2020 at 01:41:55PM +0100, Peter Krefting wrote:

I have a system installed where one software is running a database using the
PostgreSQL 9.2 packages included in the CentOS/RHEL 7 release. On the side,
I am trying to install another software that is using the PostgreSQL 12
packages found at download.postgresql.org (EL-7-x86_64). However, I am
running into problems when both are installed at the same time, the
postgresql.org ones causes the CentOS packages to fail at run-time:

psql: symbol lookup error: psql: undefined symbol: pqsignal
psql: symbol lookup error: psql: undefined symbol: pqsignal

# ldd /usr/bin/psql |grep pq
libpq.so.5 => /usr/pgsql-12/lib/libpq.so.5 (0x00007f93fcbe2000)
# /usr/bin/psql --version
psql (PostgreSQL) 9.2.24

How do I resolve this issue, to allow both programs to run on the same host?

You need to update your package bundling Postgres 12's libpq to the
latest version available, as pqsignal() got removed from libpq and it
was a mistake. It got back with this commit as we had similar
breakage reports causing linking issues like yours:
commit: 06a367c382d0a3595238eff2e777222dbc91911b
author: Tom Lane <tgl@sss.pgh.pa.us>
date: Thu, 10 Oct 2019 14:24:56 -0400
Put back pqsignal() as an exported libpq symbol.

Here is the thread of the discussion:
/messages/by-id/E1g5vmT-0003K1-6S@gemulon.postgresql.org
--
Michael