[Bucardo-general] Test Failures: Serialized Isolation

David E. Wheeler david at justatheory.com
Mon Oct 22 17:47:11 UTC 2012


On Oct 19, 2012, at 7:06 PM, Greg Sabino Mullane <greg at endpoint.com> wrote:

> Ah yes, seen those as well during t/20-postgres.t testing. Annoying. I suspect 
> that we are simply doing something out of order in the tests, as in an 
> ideal testing environment we should not see these as we have complete 
> control over everything happening.

Maybe it's related to the support for more than two masters in 5.0? In such a case, when you kick, can you predict which masters will sync to which others and in what order?

> Yes, we switch to serializable inside 
> of Bucardo.pm: grep for ISO.

Ah-ha. Not sure how I missed that before. Must've forgotten to use the -i option.

> Good question about the tests - I think we 
> probably need deeper hooks so the test can tell a failed serialization 
> from some other error and allow the test suite to wait for the sync to 
> try again (which is should be doing).

Well, when you `bucardo kick 0`, does it not wait on isolation failures? If not, should it?

> However, I suspect that the test 
> syncs are *not* retrying precisely because they are run-on-external-kick 
> only tests. But such a sync probably should be retrying on serialization 
> errors - or at least that should be an option.

Yeah. I think if you tell it to wait, it should wait. I will dig into that.

> Anyway, too tired at the end of a long week to dig in deeper, but hope 
> the above helps. I should have more time next week.

Great, I'll find you on IRC.

Thanks,

David



More information about the Bucardo-general mailing list