* Turn the deadlock situation described in SF bug #775414 into a

DBDeadLockError exception.
* add the test case for my previous dbtables commit.
This commit is contained in:
Gregory P. Smith 2006-06-08 05:38:11 +00:00
parent ff7d991a07
commit dda291c079
2 changed files with 11 additions and 0 deletions

View File

@ -344,6 +344,7 @@ def _openDBEnv(cachesize):
else:
raise error, "cachesize must be >= 20480"
e.open('.', db.DB_PRIVATE | db.DB_CREATE | db.DB_THREAD | db.DB_INIT_LOCK | db.DB_INIT_MPOOL)
e.set_lk_detect(db.DB_LOCK_DEFAULT)
return e
def _checkflag(flag, file):

View File

@ -339,6 +339,16 @@ class TableDBTestCase(unittest.TestCase):
conditions={'Name': dbtables.LikeCond('%')},
mappings={'Access': increment_access})
try:
self.tdb.Modify(tabname,
conditions={'Name': dbtables.LikeCond('%')},
mappings={'Access': 'What is your quest?'})
except TypeError:
# success, the string value in mappings isn't callable
pass
else:
raise RuntimeError, "why was TypeError not raised for bad callable?"
# Delete key in select conditions
values = self.tdb.Select(
tabname, None,