[Bucardo-general] could not serialize access due to read/write

Adam Kozłowski tronix.ak at gmail.com
Thu May 31 18:43:07 UTC 2012


> In other words, it's an artifact of the way Bucardo tries to
> be safe with your data and can be ignored if it only happens
> rarely.

There are 500 to 1000 errors each day.

All those errors concern to

INSERT INTO bucardo.bucardo_track (txntime,targetdb,tablename)
SELECT DISTINCT txntime, 'node2'::text, 17640::oid FROM bucardo.bucardo_delta d
WHERE d.tablename = 17640::oid AND NOT EXISTS (
SELECT 1 FROM   bucardo.bucardo_track t WHERE  d.txntime = t.txntime
AND    t.targetdb = 'node2'::text AND t.tablename = 17640::oid);

with different tables OIDs

> Those are the new serialization errors.

Yes, it is new type of serialization error, but I wonder if something
can be changed into bucardo code...

1) Is it a good idea to upgrade bucardo to new 4.99.x ?

2) Is it a good idea to add everything into only one sync.... ? as far
I understand the basis of this bucardo error, it is a competition
between concurrent transactions of bucardo itself.

3) Is it a good idea to rewrite this statement "INSERT INTO
bucardo.bucardo_track ..." to locks less rows ?

4) Is it a good idea to reexecute this statement "INSERT INTO
bucardo.bucardo_track ..." if such error occur ?

5) ...?

What else, can someone suggests to do, to get rid of this type of errors... ?

Before upgrading master node to 9.1.3, there were no errors.

/Adam


More information about the Bucardo-general mailing list