* 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:
parent
ff7d991a07
commit
dda291c079
|
@ -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):
|
||||
|
|
|
@ -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,
|
||||
|
|
Loading…
Reference in New Issue