bugzilla-daemon at main.slony.info bugzilla-daemon at main.slony.info
Tue Jun 1 12:01:13 PDT 2010
http://www.slony.info/bugzilla/show_bug.cgi?id=133

           Summary: DROP set in the middle of a subscribe to the same set
                    confuses slon
           Product: Slony-I
           Version: 2.0
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: low
         Component: slon
        AssignedTo: slony1-bugs at lists.slony.info
        ReportedBy: ssinger at ca.afilias.info
                CC: slony1-bugs at lists.slony.info
   Estimated Hours: 0.0


Consider a setup such as

1==>3===>4

Node 1 is the origin for a replication set (set 2).

This set is subscribed to on node 2.

We then concurrently issue (with different slonik instances)

1:  subscribe set(set id=2, provider=3, receiver=4)
2:  drop set (id=2, origin=1);

It is possible for the slons at various nodes to get confused and start logging
things like

db5 - 2010-06-01 14:51:02 EDTERROR  remoteWorkerThread_3: "select
"_disorder_replica".subscribeSet_int(2, 3, 4, 't', 'f'); insert into
"_disorder_replica".sl_event     (ev_origin, ev_seqno, ev_timestamp,     
ev_snapshot, ev_type , ev_data1, ev_data2, ev_data3, ev_data4, ev_data5    )
values ('3', '5000000005', '2010-06-01 14:50:36.965441', '690742:690742:',
'SUBSCRIBE_SET', '2', '3', '4', 't', 'f'); insert into
"_disorder_replica".sl_confirm     (con_origin, con_received, con_seqno,
con_timestamp)    values (3, 5, '5000000005', now()); commit transaction;"
PGRES_FATAL_ERROR ERROR:  Slony-I: subscribeSet_int(): set 2 not found



Note that the slon complaining is for node 5, and is not directly involved in
the actions on set 2 (but other slons log similar errors).


I realize that I am trying to shoot myself in the foot with this example but I
can see how this can happen in real life (two admins that don't talk or
misbehaving scripts) and it shouldn't be that easy to corrupt my replication
cluster.  I would think that the subscribeSet_int should log an error but mark
the event as processed?

-- 
Configure bugmail: http://www.slony.info/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Slony1-bugs mailing list