[ZODB-Dev] new-style class status

John Belmonte jvb at prairienet.org
Mon Oct 20 01:49:32 EDT 2003


Tim Peters wrote:

> I see Jim Fulton checked in some new stuff on that branch today (Sunday), so
> it's got his current attention.

I'm not seeing this on the cvs web interface.  Perhaps there is a delay.

> User-defined comparison in Python is complex, especially when comparand
> types are mixed, to the extent that "broken" is sometimes arguable.  We've
> seen evidence here in the past that ExtensionClass adds more complications,
> to the point where I gave up trying to understand it.

My class with comparisons is definitely broken due to ExtensionClass. 
It works fine in the new-style class version.

> MVCC isn't needed to provide consistency.  You get a ReadConflictError
> without MVCC if you try to read data that's been changed by another
> transaction since the time your current transaction started (with MVCC, you
> get the data as of the time your current transaction started).  Then you
> should abort your current transaction and try again.  Under 3.1 it's
> possible to get in trouble by ignoring ReadConflictError (e.g., swallowing
> it in a bare "except:" clause); under 3.2 a transaction refuses to commit if
> a ReadConflictError occurred during it.

OK, I was misinterpreting the meaning of the infamous BTree bug 
mentioned at http://www.python.org/~jeremy/weblog/030514.html.  I had 
thought the bug was that the BTree code was failing to deal with 
inconsistency, not that ZODB was failing to provide consistency.

-John


-- 
http:// if   le.o  /




More information about the ZODB-Dev mailing list