[Zope3-dev] Re: [ZODB-Dev] ZODB4 project plan

Toby Dickenson tdickenson@geminidataloggers.com
Wed, 27 Nov 2002 10:35:25 +0000


On Tuesday 26 November 2002 9:17 pm, Jeremy Hylton wrote:

> - Can some form of locking be correctly and fully implemented at the
>   application layer?  Is there anything about a locking mechanism that
>   complements optimism that must be implemented in the database?

Yes. I dont think Shane was suggesting using an application-level lock in=
stead=20
of zodb versions. The two approaches are complementary, and need to be us=
ed=20
simultaneously for best effect.

The application-level queue is there to avoid version lock errors.

Versions are there to guarantee consistency (by raising version lock erro=
rs)=20
if something neglects to use the queue.

> - Would the locking mechanism be significantly more efficient or
>   robust if it was implemented in the database?

One thing that makes me nervous of versions is that, in Zope at least, th=
ey=20
can get created implicitly. There is no explicit 'create a version'=20
operation.