I have a Red Hat 7.3 box, and I updated from PostgreSQL 7.2.3 to 7.3.3
via RPM (the PGDG RPMs). When I did so, Perl DBD::Pg routines started
failing, breaking various scripts, and I had to downgrade to PostgreSQL
7.2.3 again in somewhat of a rush as I sorted things out.
The problem was that the postgresql-libs-7.3.3-1 RPM package advertises
itself as providing libpq.so.2, when in fact it does not do so: it
provides only libpq.so.3.
Other packages (in particular, perl-DBD-Pg) rely on libpq.so.2 being
present, so upgrading makes them stop working. That would be okay --
people should obviously upgrade perl-DBD-Pg at the same time -- but the
problem is that the incorrect "Provides: libpq.so.2" prevents any sort of
warning from being shown, so people don't know that there's a problem in
advance.
It appears from a Google search that other people have had this problem:
http://groups.google.com/groups?q=libpq.so.2+rpm+7.3.1
A few people recommend simply symlinking libpq.so.2 -> libpq.so.3, but
that seems to defeat the purpose of changing the library version.
Anyway: unless I'm missing something, shouldn't the "Provides:
libpq.so.2" be removed from the RPM source spec to prevent this problem?
Alternately, if it _is_ safe to symlink to libpq.so.3, shouldn't the RPM
do that?
--
Robert L Mathews, Tiger Technologies