Martin Eriksson m.eriksson at albourne.com
Tue Jun 3 04:08:47 PDT 2008
Hi,

Been trying out lots of things with slony lately. And i've run into a 
bit a problem when i move the origin. Its probably nothing serious, its 
probably just me doing it wrong.
running slony 1.2.14

got 2 machines. M1 and M2.
on M1 i got Origin (1) postgres 8.2.4
one M2 i got Slave 1 (2) postgres 8.3.1

replication is working successfull.

on M1 I add a second slave (3) Postgres 8.3.1 (diffrent port) add it 
using the "slonik_store_node" and then subscribe it to 1.
I update the slon config file on both machines to take into account the 
new node.

All data is replicated over successfully to 3.
Replication works correctly, insert a record on 1 is showed correctly on 
both 2 and 3.

I issue the "slonik_move_set" moving my set from 1 to 3 (on M1)

but it appear that it is only the subscription of 1 -> 3 that is changed 
to correctly be 3->1
but for some reason 1->2 remain as such!

but i get messages in log:
 BSTLOG:  unexpected EOF on client connection
 BSTNOTICE:  Slony-I: cleanup stale sl_nodelock entry for pid=9764

but that is all! that is on M2 where 2 resides.

replication continue to work afterwards but of course it will be chain 
instead of a master and two slaves. it will go 3 -> 1 -> 2

on the M2 if i try to issue the slonik_move_set again it will just say:
 PGRES_FATAL_ERROR select "_hfdb_cluster".lockSet(1); select 
"_hfdb_cluster".getMaxXid();  - ERROR:  Slony-I: set 1 does not 
originate on local node

which is correct since 1 is no longer the provider! except that 2 thinks 
it....

so for some reason it just doesn't like moving my node 2 subscription 
anyone got some ideas? permissions? but feels weird since everything 
else appear to be working correctly.


regards
Martin


More information about the Slony1-general mailing list