Michael Squires msquires at whitepages.com
Fri Nov 20 04:50:29 PST 2009
I'm testing various configuration changes so we can have a good set of
recipes for production use. I've got a configuration with master + 2 slaves,
and each slave is subscribed directly to the master. (So N1 -> N2, and N1 ->
N3)

I kill the postgres and slony processes on the master (N1).

I then issue this command to slonik:

   failover( id = 1, backup node = 2);

When this completes N2 is the new master and N3 is subscribed to N2, so the
failover appears to be working. But N1 is still represented in the sl_node
and the slon daemons on both N2 and N3 are trying to connect to it.

I can then do a 'drop node ( id = 1 , event node = 2);' to remove N1.

I'd like to do this in one script, rather than two of them. I've been unable
to come up with a way to wait for the failover to complete in slonik. I've
tried some obvious statements (and many variants), like:

 wait for event (  origin = all,  confirmed = all,  wait on = 2);


But so far have been unsuccessful. If I don't put a wait after the failover
to complete, the drop node fails because N3 is still subscribed to N1.

Is there a way to do this in a single slonik script?


Michael Lee Squires
 
WhitePages
Software Developer
msquires at whitepages.com
whitepages.com
P 206 973 5143  
C 206 388 7063




More information about the Slony1-general mailing list