Opened 3 years ago

Closed 3 years ago

#61305 closed defect (wontfix)

postgresql13: pg_upgrade not working for postgresql 12 to 13

Reported by: quintusdias (John G Evans) Owned by: jyrkiwahlstedt
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: postgresql13 postgresql12

Description

When trying to run a pg_upgrade dry run on an existing postgresql 12 installation, I get the following:

$ /opt/local/lib/postgresql13/bin/pg_upgrade \
   --old-bindir /opt/local/lib/postgresql12/bin \
   --new-bindir /opt/local/lib/postgresql13/bin \
   --old-datadir /opt/local/var/db/postgresql12/defaultdb \
   --new-datadir /opt/local/var/db/postgresql13/defaultdb \
   --check

Performing Consistency Checks
-----------------------------
Checking cluster versions                                   ok
Checking database user is the install user                  ok
Checking database connection settings                       ok
Checking for prepared transactions                          ok
Checking for reg* data types in user tables                 ok
Checking for contrib/isn with bigint-passing mismatch       ok
Checking for presence of required libraries                 fatal

Your installation references loadable libraries that are missing from the
new installation.  You can add these libraries to the new installation,
or remove the functions using them from the old installation.  A list of
problem libraries is in the file:
    loadable_libraries.txt

Failure, exiting

real	0m1.924s
user	0m0.046s
sys	0m0.110s

The loadable_libraries.txt file reveals the following:

could not load library "fact": ERROR:  could not access file "fact": No such file or directory
In database: template1
In database: test
In database: test_column_acl
In database: test_rls

There does not appear to be a libfact in the dynamic load library location for postgresql13, but it does exist for postgresql12, i.e.

$ pg_config --pkglibdir
/opt/local/lib/postgresql12

$ ls /opt/local/lib/postgresql1[23]/*fact*
/opt/local/lib/postgresql12/fact.so

In fact, the 'fact' shared library appears to not belonging to any port?

$ port provides  /opt/local/lib/postgresql12/fact.so
/opt/local/lib/postgresql12/fact.so is not provided by a MacPorts port.

That file seems to be older than other files in that directory, I'm wondering if it is left over from an earlier revision of postgresql12?

Change History (2)

comment:1 Changed 3 years ago by jmroot (Joshua Root)

Owner: set to jyrkiwahlstedt
Port: postgresql13 postgresql12 added
Status: newassigned
Summary: pg_upgrade not working for postgresql 12 to 13postgresql13: pg_upgrade not working for postgresql 12 to 13

comment:2 Changed 3 years ago by jyrkiwahlstedt

Resolution: wontfix
Status: assignedclosed

Can't replicate. I have no such library in my system, so I assume it is accidentally inserted in the past. Especially so as "port provides" indicates it does not belong to a port.

Note: See TracTickets for help on using tickets.