[Bucardo-general] More Noob Questions

David E. Wheeler david at justatheory.com
Wed Oct 3 16:27:35 UTC 2012


On Oct 2, 2012, at 8:48 PM, Greg Sabino Mullane <greg at endpoint.com> wrote:

> The conflict handling is still in flux, but at the moment there 
> are two main strategies. First, we simply walk through the provided 
> list of datbases, and the first one in which any changes have occured 
> is declare the winner. So, if you have databases A, B, and C, you 
> might set your standard_conflict to 'A B C', which means that A 
> trumps B trumps C.

Wait, I’m confused. You can set standard_conflict to a list of databases? http://bucardo.org/wiki/Swap says that the values are:

> • source - the rows on the "source" database always "win" (in a conflict, we copy rows from source to target)
> • target - the rows on the "target" database always win
> • skip - any conflicted rows are simply not replicated. Not recommended for most cases.
> • random - each database has an equal chance of winning each time
> • latest - the row that was most recently changed wins
> • abort - the sync is aborted on a conflict

Has that changed? Is this documented somewhere other than the wiki (I don’t see it in the man page)? And which of these is the default if the value is ''?

> The other main way is to set standard_conflict 
> to 'bucardo_latest'. In this mode, the last database to make any 
> changes to any of the tables in the sync is the winner.

I think that’s probably what we’ll go with, seems like a reasonable default to me (it’s what I would expect). Although is it “latest” or “bucardo_latest”?

> That's the quick version, I will expand on this later.

I will look into documenting `update` and fixing the lack of support for specifying standard_conflict in the call to `add sync`.

Er, could it perhaps be called something else? `standard_conflict` is a bit of an odd name: I’m not specifying a conflict, but a conflict resolution handler. Maybe `conflict_handler`?

Best,

David



More information about the Bucardo-general mailing list