[BDB 11gR2 Beta] Potential migration issues with BDB locking model [#18275]

Michael Cahill michael.cahill at oracle.com
Wed Mar 3 14:04:56 PST 2010


Hi Mike,

My name is Michael Cahill, I am a Berkeley DB engineer working on the SQL interface.  Thanks for the excellent write up: as Dave said, we should cover this in the documentation (and we could do a lot worse than copying and pasting your mail).

> One thing I do see however that may easily explain/resolve all of this is whether the behavior in BDB mirrors SQLite in shared cache mode. I have been looking through the source and it seems more and more that it might and therefore SQLITE_LOCK might simply be interpreted as in shared cache mode, in which case the behavior would always  be to rollback the transaction and retry.  If that is true, then the protocol would be simpler -- just start over every time you get SQLITE_LOCKED. SQLite's shared cache mode also changes the locking semantics as well.

That is exactly the intention: Berkeley DB does always work in SQLite's shared cache mode, so applications should roll back when SQLITE_LOCK is returned.  I'll update the documentation to make this clear.

Thanks again,
Michael Cahill, Oracle Berkeley DB.


More information about the BDB-BETA-FEEDBACK mailing list