Jan Wieck JanWieck
Wed Jun 8 22:17:46 PDT 2005
Warning!

All versions of Slony-I experience problems with subtransactions (new in 
PostgreSQL 8.0) that very likely will lead to loss of synchronization 
between origin and subscribers.

Slony's replication algorithm relies on the fact that a transaction in 
progress can be identified by looking up the xip vector in the snapshot 
data. This is however not true for subtransactions, as only the sessions 
top transaction appears in the PGPROC structure. Because of this it is 
possible that a transaction using subtransactions runs long enough so 
that a SYNC event is generated and processed by a subscriber. Since the 
xid used in the log rows now is the subtransaction's xid and that xid is 
missing in the xip vector, slony considers the transaction committed. 
But the log rows are not visible yet. Subsequent SYNC events will then 
ignore the log rows since the transaction was considered belonging to 
the former SYNC.

I am working on a fix for this and we will have a Slony 1.0.6 out soon.


Jan

--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck at Yahoo.com #


More information about the Slony1-general mailing list