Le 22/01/2015 15:59, Greg Sabino Mullane a écrit :
- All tables are updated by A, and no table are updated by B
*except* the field "state" of the table "Events" that may be written
by B too.
...
I see the following solution to avoid the line "re"creation:
1) Change the application design to avoid machine B updating the
Event table. But this is hard to change.
2) Instruct bucardo not to consider the "state"field when filling
the delta table
It's not perfectly clear what your requirements are. When A goes down,
do you want B to start recording all rows, including "state" changes?

Yes this it the case.

The problem is really that the table Events mixes static information that does not change over time and dynamic information that often changes. In fact, only static information matters (from 'replication' point of view), so it is finally better to break the table in two parts, where the dynamic part does not need to be replicated.

As a consequence, there is no need to create custom trigger and / or to change/switch the sync configuration from source to target and vice versa, no more race condition.

So even if harder, after reflexion, the 1) solution is finally the cleaner solution for me.

Thanks and regards
Sylvain
_______________________________________________
Bucardo-general mailing list
[email protected]
https://mail.endcrypt.com/mailman/listinfo/bucardo-general

Reply via email to