| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
bsddb.*open() methods cachesize parameter wouldn't work (raised an
internal bsddb.db exception when it was given). The set_cachesize
call needed to be moved from the DB object to the DBEnv since the env
was introduced to allow for threading.
(will backport to 2.4)
|
|
|
|
|
|
|
| |
Using None for a filename with the 'n' flag when calling bsddb.btopen
would cause an error while checking if the file None existed. error
not likely to be seen as anyone using None for a filename would likely
use the 'c' flag in the first place.
|
|
|
|
|
| |
Also adds some backwards compatibility when compiling _bsddb.c on earlier
python versions (needed for pybsddb).
|
|
|
|
|
|
|
| |
between a TestCase instance, the database it opened (or a cursor to a
database) and a bound method as a registered database callback, and a lack
of GC-handling in bsddb caused the TestCases to linger. Fix the test, for
now, as backward compatibility makes adding GC to bsddb annoying.
|
| |
|
| |
|
| |
|
|
|
|
| |
It now returns "{}". Is that the correct solution?
|
|
|
|
| |
as python builtin bsddb.
|
|
|
|
| |
(test cases and dbobj wrapping)
|
|
|
|
| |
Will backport.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
for them in a roundabout way (catching and parsing stderr)
keeps test output clean.
|
| |
|
|
|
|
| |
bug #1215432
|
|
|
|
|
|
|
|
|
|
|
| |
* the has_key() method was not raising a DBError when a database error
had occurred. [SF patch id 1212590]
* added a wrapper for the DBEnv.set_lg_regionmax method [SF patch id 1212590]
* DBKeyEmptyError now derives from KeyError just like DBNotFoundError.
* internally everywhere DB_NOTFOUND was checked for has been updated
to also check for DB_KEYEMPTY. This fixes the semantics of a couple
operations on recno and queue databases to be more intuitive and results
in less unexpected DBKeyEmptyError exceptions being raised.
|
| |
|
|
|
|
|
|
| |
functions written in python.
contributed by <frederic.gobry@epfl.ch>
|
|
|
|
| |
Backported to 2.4.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Based on a patch supplied by Ian Ward <ian@arevco.ca> on the pybsddb
mailing list 2004-03-26.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix memory leaks revealed by valgrind and ensuing code inspection.
In the existing test suite valgrind revealed two memory leaks (DB_get
and DBC_set_range). Code inspection revealed that there were many other
potential similar leaks (many on odd code error paths such as passing
something other than a DBTxn object for a txn= parameter or in the face
of an out of memory error). The most common case that would cause a
leak was when using recno or queue format databases with integer keys,
sometimes only with an exception exit.
|
|
|
|
|
|
| |
opening the DB to implement legacy interface flag='n' support as
BerkeleyDB 4.2.52 no longer allows it in transaction protected
environments. Do the os.unlink ourselves.
|
|
|
|
|
| |
wrong type of database in dbshelve.
* fix a typo in the exception name when checking args
|
|
|
|
| |
correct function)
|
|
|
|
|
|
|
|
|
| |
* Fixed a bug in the compatibility interface set_location() method
where it would not properly search to the next nearest key when
used on BTree databases. [SF bug id 788421]
* Fixed a bug in the compatibility interface set_location() method
where it could crash when looking up keys in a hash or recno
format database due to an incorrect free().
|
|
|
|
| |
From SF patch #852334.
|
|
|
|
| |
test_basics.py: updated for the set_get_returns_none() default of 2 change.
|
|
|
|
|
|
|
|
|
|
| |
memory leak that would've occurred for all iterators that were
destroyed before having iterated until they raised StopIteration.
* Simplify some code.
* Add new test cases to check for the memleak and ensure that mixing
iteration with modification of the values for existing keys works.
|
|
|
|
|
| |
* Add support for multiple iterator/generator objects at once on the simple
bsddb _DBWithCursor interface.
|
|
|
|
| |
of the current value without reading the value itself.
|
|
|
|
|
|
|
| |
db that is opened. DB_THREAD and DB_INIT_LOCK allow for multithreaded
access. DB_PRIVATE prevents the DBEnv from using the filesystem
(making it only usable by this process; and in this implementation
using one DBEnv per bsddb database)
|
|
|
|
|
|
|
|
|
|
| |
features in BerkeleyDB not exposed. notably: the DB_MPOOLFILE interface
has not yet been wrapped in an object.
Adds support for building and installing bsddb3 in python2.3 that has
an older version of this module installed as bsddb without conflicts.
The pybsddb.sf.net build/packaged version of the module uses a
dynamicly loadable module called _pybsddb rather than _bsddb.
|
|
|
|
| |
adding the iterator interface for python >= 2.3.
|
|
|
|
| |
iteritems() is defined.
|
|
|
|
|
|
| |
Add support for the iterator and mapping protocols.
For Py2.3, this was done for shelve, dumbdbm and other mapping objects, but
not for bsddb and dbhash which were inadvertently missed.
|
|
|
|
| |
database environments to use shared memory on systems supporting it.
|
|
|
|
| |
may cause some tests to fail but it prevents them from hanging.
|
|
|
|
| |
setting of sCursor happened in an assert.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* Extended DB & DBEnv set_get_returns_none functionality to take a
"level" instead of a boolean flag. The boolean 0 and 1 values still
have the same effect. A value of 2 extends the "return None instead
of raising an exception" behaviour to the DBCursor set methods.
This will become the default behaviour in pybsddb 4.2.
* Fixed a typo in DBCursor.join_item method that made it crash instead
of returning a value. Obviously nobody uses it. Wrote a test case
for join and join_item.
|
|
|
|
| |
expected DBLockDeadLockErrors.
|
| |
|