On Jul 25, 2013, at 3:29 PM, "David E. Wheeler" <[email protected]> wrote:

> This definitely happens, though. And FWIW, the status for all of those rows 
> with no ended column is always "Finished (KID 11063)". Same damn KID.
> 
> Is KID doing something async?

I noticed that there were some serialization failure messages in my log.bucardo 
file, and this led me to the serialization and deadlock handling code I added a 
few months ago. Turns out that it was doing a rollback on the Bucardo database, 
rather than calling end_syncrun(). But the syncrun was already committed (so 
that other processes can see a sync is in progress, of course).

So that wasn't right. I just pushed a change that calls end_syncrun() on 
serialization or deadlock failure. It declares the run a "Failure", but the 
status notes that it's a serialization or deadlock issue. Might make sense to 
record in the status that Bucardo is going to try again, too, yes? Perhaps we 
should also consider a different status than "bad" or "failed"?

Anyway, I’m going to deploy this change and see if the orphaned syncrun records 
go away. Hopefully they will. If they don’t, then I will have to try to find 
other places where end_syncrun() is not called but should be.

Best,

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

Reply via email to