Christopher Browne cbbrowne at ca.afilias.info
Thu Nov 1 06:47:12 PDT 2007
Dane Miller <dane at greatschools.net> writes:

> Hi Slony folks,
>
> I've been reading docs trying to understand how Slony works.  I've tried to outline below my understanding of how an INSERT into the origin gets replicated to the subscriber.  Do I get the gist of it here?  If not, could someone be so kind as to correct me?  I hope this isn't too much of a newbie question, but I didn't find an answer in the admin guide on slony.info.
>
> Tracing an insert from the origin to a subscriber (2 node cluster)
>
> 1. INSERT into the origin
> 2. AFTER ROW trigger executes logtrigger which inserts into sl_log_{1,2}
> 3. origin's slon checks sl_log_{1,2}, inserts event into sl_event, generates NOTIFY
> 4. subscriber receives NOTIFY, inserts event into its sl_event table, inserts confirmation into its local sl_confirm table.
> 5. subscriber inserts event into origin's sl_confirm table
> 6. subscriber queries origin's sl_log_{1,2} using event info
> 7. Subscriber applies result of #6 to its local tables.
>
> whew!  If this has been covered elsewhere, please point me in the right direction.  I got this far by reading Slony-I-concept.pdf, but it seemed to cover more complex setups, and I got a bit lost in the detail.

That's about right.

It's worth noting that the NOTIFY isn't run for each update to a
replicated table - it happens more on a cronological basis.
-- 
let name="cbbrowne" and tld="linuxdatabases.info" in String.concat "@" [name;tld];;
http://linuxdatabases.info/info/nonrdbms.html
Have you ever considered beating yourself with a cluestick?


More information about the Slony1-general mailing list