Обсуждение: Slony error please help
I am working on a project to upgrade postgresql from 9.4 to 9.5 we use slony for replication
Phase 1 problem
1. We had slony version slony1-94-2.2.2-1.rhel5.x86_64 installed when i tried testing upgrade on my test env it failed coz slony 2.2.2 version is not compatible with 9.5 so i upgraded slony1-94-2.2.2-1.rhel5.x86_64 to slony1-94-2.2.4-4.rhel5.x86_64 which went well.
Phase 2 problem
1. Back to upgrade testing now when i run the check_upgrade script which includes the command below
/usr/pgsql-9.5/bin/pg_upgrade -b /usr/pgsql-9.4/bin/ -B /usr/pgsql-9.5/bin/ -d /var/lib/pgsql/cmates1/data/ -D /var/lib/pgsql/cmates1/data/9.5/ -p 5432 -P 5433 -c
it throws this error
Could not load library "$libdir/slony1_funcs.2.2.2"
ERROR: could not access file "$libdir/slony1_funcs.2.2.2": No such file or directory
Not sure why it is still looking for slony1_funcs.2.2.2 even though the version is upgraded to 2.2.4 and it is running fine. i do see slony1_funcs.2.2.4.so files in lib directory which is how it should be since i have upgraded it to 2.2.4
Any suggestions?
Thanks
Avi
On Fri, Jun 17, 2016 at 5:36 AM, avi Singh <avisingh19811981@gmail.com> wrote:
I am working on a project to upgrade postgresql from 9.4 to 9.5 we use slony for replicationPhase 1 problem1. We had slony version slony1-94-2.2.2-1.rhel5.x86_64 installed when i tried testing upgrade on my test env it failed coz slony 2.2.2 version is not compatible with 9.5 so i upgraded slony1-94-2.2.2-1.rhel5.x86_64 to slony1-94-2.2.4-4.rhel5.x86_64 which went well.Phase 2 problem1. Back to upgrade testing now when i run the check_upgrade script which includes the command below/usr/pgsql-9.5/bin/pg_upgrade -b /usr/pgsql-9.4/bin/ -B /usr/pgsql-9.5/bin/ -d /var/lib/pgsql/cmates1/data/ -D /var/lib/pgsql/cmates1/data/9.5/ -p 5432 -P 5433 -cit throws this errorCould not load library "$libdir/slony1_funcs.2.2.2"ERROR: could not access file "$libdir/slony1_funcs.2.2.2": No such file or directory
How did you upgrade Slony ? Uninstall Slony, drop slony related schemas and re-install, re-configure slony from scratch ? or did you ensure SLONIK_UPDATE_FUNCTIONS has been executed successfully ?
Regards,
Venkata B N
Fujitsu Australia
1. Stoped slon process on both provider and subscriber nodes
2. installed slony1-94-2.2.4-4.rhel5.x86_64 on both nodes
3. ran the script listed below
#!/bin/bash
/usr/pgsql-9.4/bin/slonik <<_EOF_
cluster name = slon_cluster_cmates;
node 1 admin conninfo = 'dbname=site host=site-db01.qs01.sea1.cmates.com user=repl password=';
node 3 admin conninfo = 'dbname=site host=pg-db03.qs01.sea1.cmates.com user=repl password=';
update functions ( id = 1 );
update functions ( id = 3 );
_EOF_
4. Start all slony processes
Upgrade executed successfully and replication is running fine since than
On Thu, Jun 16, 2016 at 8:44 PM, Venkata Balaji N <nag1010@gmail.com> wrote:
On Fri, Jun 17, 2016 at 5:36 AM, avi Singh <avisingh19811981@gmail.com> wrote:I am working on a project to upgrade postgresql from 9.4 to 9.5 we use slony for replicationPhase 1 problem1. We had slony version slony1-94-2.2.2-1.rhel5.x86_64 installed when i tried testing upgrade on my test env it failed coz slony 2.2.2 version is not compatible with 9.5 so i upgraded slony1-94-2.2.2-1.rhel5.x86_64 to slony1-94-2.2.4-4.rhel5.x86_64 which went well.Phase 2 problem1. Back to upgrade testing now when i run the check_upgrade script which includes the command below/usr/pgsql-9.5/bin/pg_upgrade -b /usr/pgsql-9.4/bin/ -B /usr/pgsql-9.5/bin/ -d /var/lib/pgsql/cmates1/data/ -D /var/lib/pgsql/cmates1/data/9.5/ -p 5432 -P 5433 -cit throws this errorCould not load library "$libdir/slony1_funcs.2.2.2"ERROR: could not access file "$libdir/slony1_funcs.2.2.2": No such file or directoryHow did you upgrade Slony ? Uninstall Slony, drop slony related schemas and re-install, re-configure slony from scratch ? or did you ensure SLONIK_UPDATE_FUNCTIONS has been executed successfully ?Regards,Venkata B NFujitsu Australia
On Thu, Jun 16, 2016 at 3:36 PM, avi Singh <avisingh19811981@gmail.com> wrote:
/usr/pgsql-9.5/bin/pg_upgrade -b /usr/pgsql-9.4/bin/ -B /usr/pgsql-9.5/bin/ -d /var/lib/pgsql/cmates1/data/ -D /var/lib/pgsql/cmates1/data/9.5/ -p 5432 -P 5433 -cit throws this errorCould not load library "$libdir/slony1_funcs.2.2.2"ERROR: could not access file "$libdir/slony1_funcs.2.2.2": No such file or directory
Using git clones of everything on CentOS 7.1 I cannot reproduce this problem.
Even the actual pg_upgrade without -c works, the cluster starts up and replicates
just fine. I went through installing a 9.4 with 2.2.2, then upgrading to 2.2.4 (via
UPDATE FUNCTIONS) and last upgrading to 9.5 with pg_upgrade.
The only thing I can imagine would be that there is another slony cluster (or
remnants of it) hanging around in the 9.4 installation, possibly in another database.
Can you provide a list of all databases and all schemas in them from the 9.4 install?
Regards, Jan
Not sure why it is still looking for slony1_funcs.2.2.2 even though the version is upgraded to 2.2.4 and it is running fine. i do see slony1_funcs.2.2.4.so files in lib directory which is how it should be since i have upgraded it to 2.2.4Any suggestions?ThanksAvi
Jan Wieck
Senior Postgres Architect
Senior Postgres Architect
On Sun, Jul 17, 2016 at 12:47 AM, Jan Wieck <jan@wi3ck.info> wrote:
The only thing I can imagine would be that there is another slony cluster (orremnants of it) hanging around in the 9.4 installation, possibly in another database.
That does reproduce the problem. I ran the new doc/pgbench-tutorial through steps
01, 02 and 03 with a 9.4/2.2.2 installation. Upgraded to 9.4/2.2.5 but left out the
UPDATE FUNCTIONS for node 3. I could have created a fourth database and just
run INIT CLUSTER against that.
I then installed 9.5/2.2.5 in parallel and the pg_upgrade run looks like this:
(venv)[postgres@db1 pgbench-tutorial]$ pg_upgrade -b /var/lib/pgsql/test_94/bin -B /var/lib/pgsql/test_95/bin -d /opt/pgsql/test_94 -D /opt/pgsql/test_95 -p 54394 -P 54395 -cPerforming Consistency Checks-----------------------------Checking cluster versions okChecking database user is the install user okChecking database connection settings okChecking for prepared transactions okChecking for reg* system OID user data types okChecking for contrib/isn with bigint-passing mismatch okChecking for presence of required libraries fatalYour installation references loadable libraries that are missing from thenew installation. You can add these libraries to the new installation,or remove the functions using them from the old installation. A list ofproblem libraries is in the file:loadable_libraries.txtFailure, exiting(venv)[postgres@db1 pgbench-tutorial]$ cat loadable_libraries.txtCould not load library "$libdir/slony1_funcs.2.2.2"ERROR: could not access file "$libdir/slony1_funcs.2.2.2": No such file or directory
If I drop the offending database or run UPDATE FUNCTIONS in it, pg_upgrade is happy.
Jan Wieck
Senior Postgres Architect
Senior Postgres Architect