Ujwal S. Setlur uvsetlur
Wed Aug 10 18:25:23 PDT 2005
Hi,

I am testing the controlled switching of roles between
master and slave nodes. I have two sets that are being
subscribed to. I switch roles for both sets with the
following script:

slonik <<_EOF_

        cluster name = $CLUSTERNAME;

        node $REMOTENODEID admin conninfo =
'dbname=$REMOTEDBNAME host=$REMOTEHOST
user=$REPLICATIONUSER';
        node $LOCALNODEID admin conninfo =
'dbname=$LOCALDBNAME  host=$LOCALHOST
user=$REPLICATIONUSER';

        # Move set 1
        lock set (id = 1, origin = $REMOTENODEID);
        wait for event (origin = $REMOTENODEID,
confirmed = $LOCALNODEID);
        move set (id = 1, old origin = $REMOTENODEID,
new origin = $LOCALNODEID);
        wait for event (origin = $REMOTENODEID,
confirmed = $LOCALNODEID);

        # Move set 2
        lock set (id = 2, origin = $REMOTENODEID);
        wait for event (origin = $REMOTENODEID,
confirmed = $LOCALNODEID);
        move set (id = 2, old origin = $REMOTENODEID,
new origin = $LOCALNODEID);
        wait for event (origin = $REMOTENODEID,
confirmed = $LOCALNODEID);

_EOF_

However, this script causes the slon process on the
old origin to terminate with the following error:

localListenThread: MOVE_SET but no provider found for
set 2

If I move only one set, it works fine. I tried
reversing the order of the sets being moved, but it
still fails on the second set being moved.

Any ideas?

Thanks,

Ujwal


More information about the Slony1-general mailing list