Okay, I shut down postmaster, recompiled and reinstalled Slony-I 1.2.1RC1 without a hitch. I brought back up postgres, tried to start slon and got the same error as below.
I then performed an uninstall node for nodes 1 and 2, thereby removing the Slony-I schema altogether. I then reinitialized the Slony-I cluster and when I tried to start slon, I got the same error about the Slony-I schema version being 1.2.0.

How do I replace the Slony-I libraries for PostgreSQL? Is this a problem with RC1?

From the documentation:
The trickiest part of this is ensuring that the C library containing SPI functions is copied into place in the PostgreSQL build; the easiest and safest way to handle this is to have two separate PostgreSQL builds, one for each Slony-I version, where the postmaster is shut down and then restarted against the "new" build; that approach requires a brief database outage on each node.

While that approach has been found to be easier and safer, nothing prevents one from carefully copying Slony-I components for the new version into place to overwrite the old version as the "install" step. That might not work on Windows™ if it locks library files that are in use."

How tricky is it? "...carefully copying Slony-I components for the new version into place to overwrite the old version as the "install" step". Can someone spell this out for me, please? I'm trying to get this running on SUSE Linux 10.1 and Mac OS X 10.4.8 Server. I'm having the identical problem with both of them.

Thanks again,

Brian Wipf

On 9-Nov-06, at 5:06 PM, Brian Wipf wrote:

From the documentation:

"where the postmaster is shut down and then restarted against the "new" build;"

Please ignore my previous post.

On 9-Nov-06, at 3:41 PM, Brian Wipf wrote:

I installed Slony-I version 1.2.0 about two weeks ago. I initialized the Slony-I cluster and created set 1 on the "master" node. I then read recommendations on the list to hold off until 1.2.1 is released, because of a bug, which would stop replication. Before starting the slon processes or subscribing node 2 to the set, I decided to hold off. Yesterday, I upgraded to 1.2.1RC1. When I tried to start the slon process, the following error was logged:

2006-11-09 21:37:47 GMT CONFIG main: slon version 1.2.1 starting up
2006-11-09 21:37:47 GMT DEBUG2 slon: watchdog process started
2006-11-09 21:37:47 GMT DEBUG2 slon: watchdog ready - pid = 11520
2006-11-09 21:37:47 GMT DEBUG2 slon: worker process created - pid = 11521
2006-11-09 21:37:47 GMT ERROR  Slony-I schema version is 1.2.0
2006-11-09 21:37:47 GMT ERROR  please upgrade Slony-I schema to version 1.2.1
2006-11-09 21:37:47 GMT FATAL  main: Node has wrong Slony-I schema or module version loaded
2006-11-09 21:37:47 GMT DEBUG2 slon_abort() from pid=11521
2006-11-09 21:37:47 GMT DEBUG1 slon: shutdown requested
2006-11-09 21:37:47 GMT DEBUG2 slon: notify worker process to shutdown
2006-11-09 21:37:47 GMT DEBUG2 slon: child terminated status: 0; pid: 11521, current worker pid: 11521
2006-11-09 21:37:47 GMT DEBUG1 slon: done
2006-11-09 21:37:47 GMT DEBUG2 slon: remove pid file
2006-11-09 21:37:47 GMT DEBUG2 slon: exit(0)

I ran the slonik command to update the functions on the nodes. The proper preamble was in the script, including the cluster name and db connection info, as well as both update function calls for both nodes. The slonik command ran without returning any standard or error output. I then tried to start slon and the same error as above was logged again.

To determine if slonik was connecting to the databases when running slonik to update the functions, I ran a while loop in a shell logging any processes connecting to the database. I noticed a connection coming in as a result of the slonik command with SELECT..., CREATE FUNCTION..., CREATE VIEW..., COMMENT..., startup... (not necessarily in that order) sql queries being logged. There may have been more commands executed; this was all the while loop was able to catch. The query info. was captured using ps auxww, so I'm not sure what the full query was.

I'm not sure if the CREATE FUNCTION should be a CREATE OR REPLACE FUNCTION, or if there is some other issue in upgrading the 1.2.0 schema to 1.2.1RC1.

I thought that perhaps the Slony-I libraries weren't properly replaced during the install of 1.2.1RC1. Doing a diff of the slony1_funcs.so and xxid.so between the install directory and the 1.2.1 source directory shows they are the same. slonik -v shows version 1.2.1. The 1.2.1RC1 install went through okay.

I've read through the documentation, including the upgrade process. I'm not sure what I'm missing.

Any assistance would be greatly appreciated.

Sincerely,

Brian Wipf

_______________________________________________
Slony1-general mailing list

_______________________________________________
Slony1-general mailing list
[email protected]
http://gborg.postgresql.org/mailman/listinfo/slony1-general

Reply via email to