[Zope3-checkins] CVS: ZODB4/src/zodb/storage - base.py:1.6
Barry Warsaw
barry@wooz.org
Wed, 22 Jan 2003 14:21:09 -0500
Update of /cvs-repository/ZODB4/src/zodb/storage
In directory cvs.zope.org:/tmp/cvs-serv9198
Modified Files:
base.py
Log Message:
Forward port from ZODB 3.2:
Use ZERO where appropriate
Add a flag ``berkeley_is_available`` which is true if Python 2.3 or
2.2.2 (distutils) BerkeleyDB wrapper is available. Various BDB
storage tests check this flag before adding tests it knows will fail.
=== ZODB4/src/zodb/storage/base.py 1.5 => 1.6 ===
--- ZODB4/src/zodb/storage/base.py:1.5 Tue Dec 31 11:05:06 2002
+++ ZODB4/src/zodb/storage/base.py Wed Jan 22 14:21:06 2003
@@ -1,6 +1,6 @@
##############################################################################
#
-# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
+# Copyright (c) 2001 Zope Corporation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
@@ -34,8 +34,10 @@
from bsddb import _db as db
except ImportError:
from bsddb3 import db
+ berkeley_is_available = True
except ImportError:
db = None
+ berkeley_is_available = False
from zodb import interfaces
from zodb.timestamp import newTimeStamp, TimeStamp
@@ -582,7 +584,7 @@
if value:
self._oid = value[0]
else:
- self._oid = '\0\0\0\0\0\0\0\0'
+ self._oid = ZERO
# It can be very expensive to calculate the "length" of the database, so
# we cache the length and adjust it as we add and remove objects.
@@ -693,6 +695,7 @@
self._env.close()
os.unlink(lockfile)
+ # A couple of convenience methods
def _update(self, deltas, data, incdec):
for oid in findrefs(data):
rc = deltas.get(oid, 0) + incdec