Glyn Astill glynastill at yahoo.co.uk
Fri Mar 14 02:48:57 PDT 2014
> From: Vick Khera <vivek at khera.org>

>To: slony <slony1-general at lists.slony.info> 
>Sent: Thursday, 13 March 2014, 18:43
>Subject: [Slony1-general] question about upgrading 2.1 to 2.2 steps from    manual
> 
>
>
>In the docs, a suggested method to upgrade 2.1 to to 2.2 is as follows:
>
>
>    1. Use SLONIK LOCK SET to lock all sets, so that no new changes are being injected into the log tables
>
>    2. Set slon parameter slon_config_cleanup_interval to a very low value (a few seconds) so that the slon cleanup thread will trim data out of sl_log_1 and sl_log_2 immediately
>
>    3. Restart slon for each node and let it run through a cleanup cycle to empty out sl_log_1 and sl_log_2 on all nodes.
>
>    4. Verify that sl_log_1 and sl_log_2 are empty on all nodes in the cluster.
>
>    5. Use SLONIK UPDATE FUNCTIONS against each node to upgrade to version 2.2
>
>    6. Use SLONIK UNLOCK SET to unlock all sets
>
>Based on my experience and other reading, I think between steps 4 and 5 should be:
>
>
>    1. stop slon
>
>    2. install new version of slony
>
>then after step 5, restart slon.
>
>
>Is that the correct place to perform the install? Or can/should that be done between steps 2 and 3?
>
>
>Also, will the lock set survive restarting slon? I thought it took out an exclusive lock on all tables, but if you stop the process, the locks would then go away.


Nice timing Vick; I was just thinking about the upgrade steps myself yesterday.

I think that although the lock set takes out exclusive locks on the individual tables, the actual locking mechanism is by adding a "lockedset" trigger to all the tables - so it should survive the slon restart.

However my concern is that I have many replication sets, and as I recall it's not possible to lock more than one set at a time - or has this changed as of 2.2?

There's definitely a need for some clarification on those upgrade steps.


More information about the Slony1-general mailing list