summaryrefslogtreecommitdiffstats
path: root/Lib/bsddb
Commit message (Collapse)AuthorAgeFilesLines
* * Use weakref's of DBCursor objects for the iterator cursors to avoid aGregory P. Smith2003-11-031-47/+45
| | | | | | | | | | 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.
* * Fix the singlethreaded deadlocks occurring in the simple bsddb interface.Gregory P. Smith2003-11-021-7/+102
| | | | | * Add support for multiple iterator/generator objects at once on the simple bsddb _DBWithCursor interface.
* bsddb3 4.2.2, adds DBCursor.get_current_size() method to return the lengthGregory P. Smith2003-10-011-36/+36
| | | | of the current value without reading the value itself.
* Use a threadsafe private DBEnv for each bsddb compatibility interfaceGregory P. Smith2003-09-271-3/+10
| | | | | | | 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)
* Adds basic support for BerkeleyDB 4.2.x. Compiles and passes tests; newGregory P. Smith2003-09-2120-66/+70
| | | | | | | | | | 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.
* Maintain backwards compatibility with python < 2.3 by dynamicallyGregory P. Smith2003-09-201-18/+30
| | | | adding the iterator interface for python >= 2.3.
* The previous change works much faster (one lookup per key) whenRaymond Hettinger2003-09-131-0/+9
| | | | iteritems() is defined.
* SF #662923Raymond Hettinger2003-09-121-1/+10
| | | | | | 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.
* Support DBEnv.set_shm_key() to allow multi-threaded multi-processGregory P. Smith2003-08-281-0/+2
| | | | database environments to use shared memory on systems supporting it.
* readerThread(): Add max_retries to both DeadlockWrap() calls. ThisBarry Warsaw2003-07-211-2/+2
| | | | may cause some tests to fail but it prevents them from hanging.
* test01_join(): Fix a test failure when run with "python -O". TheBarry Warsaw2003-07-211-1/+4
| | | | setting of sCursor happened in an assert.
* fix to work on python <= 2.1Gregory P. Smith2003-07-091-2/+2
|
* bugfix: proper import bsddb exists belowGregory P. Smith2003-07-091-1/+0
|
* bsddb 4.1.6:Gregory P. Smith2003-07-095-10/+174
| | | | | | | | | | | * 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.
* Wrap the cursor functions with dbutils.DeadlockWrap to deal with theGregory P. Smith2003-05-281-2/+2
| | | | expected DBLockDeadLockErrors.
* Whitespace normalization.Tim Peters2003-04-243-5/+1
|
* Adds support for the DBEnv->set_timeout() method.Gregory P. Smith2003-03-271-1/+7
|
* Fix compatibility for earlier versions of Python (than 2.3), whichBarry Warsaw2003-02-082-5/+15
| | | | doesn't have UserDict.DictMixin.
* SF patch #674396: Apply UserDict.DictMixin to expand dbshelve and dbojbRaymond Hettinger2003-02-052-2/+4
| | | | to have a full dictionary interface.
* fix for use on python 2.1Gregory P. Smith2003-02-031-2/+0
|
* Everything worked in both the distutils distro and in Python 2.3cvs,Barry Warsaw2003-01-2818-119/+213
| | | | so merge from the bsddb-bsddb3-schizo-branch back to the trunk.
* bugfix: do not double-close DB cursor during deallocation when theGregory P. Smith2003-01-171-0/+12
| | | | | | | | | | underlying DB has already been closed (and thus all of its cursors). This fixes a potential segfault. SF pybsddb bug id 667343 bugfix: close the DB object when raising an exception due to an error during DB.open. This prevents an exception when closing the environment about not all databases being closed. SF pybsddb bug id 667340
* bugfix: disallow use of DB_TXN after commit() or abort(), prevents aGregory P. Smith2003-01-171-0/+20
| | | | | | | | | coredump or segmentation violation. Sourceforge patch ID 664896: http://sourceforge.net/tracker/index.php?func=detail&aid=664896&group_id=13900&atid=313900 The bug was reported on the pybsddb-users mailing list.
* Python 2.1's string module doesn't have ascii_letters, so let's justBarry Warsaw2003-01-101-13/+10
| | | | hard code it. We want this module to work with Python 2.1 for now.
* Cleanups, and conversion of assert to assertEqual()Barry Warsaw2003-01-101-71/+69
|
* Make two tests non-locale-dependentBarry Warsaw2002-12-311-2/+2
|
* test01_close_dbenv_before_db(): Added an XXX comment that this test isBarry Warsaw2002-12-311-0/+2
| | | | BerkeleyDB version dependent.
* Port BerkeleyDB 4.1 support from the pybsddb project. bsddb is now atBarry Warsaw2002-12-3021-329/+597
| | | | version 4.1.1 and works with up to BerkeleyDB 4.1.25.
* Template for future tests.Barry Warsaw2002-12-301-7/+4
|
* In class bsdTableDB, add class variables db and env (set to None) toGuido van Rossum2002-12-021-0/+5
| | | | | prevent close() called from __del__ from bombing out when __init__() fails early.
* Fix typo in except clause (_db should be _bsddb).Guido van Rossum2002-12-021-1/+1
|
* Delete bsddb from sys.modules if _bsddb cannot be imported.Martin v. Löwis2002-11-241-1/+8
|
* Whitespace normalization.Tim Peters2002-11-2414-25/+5
|
* Merge with bsddb3 2002.11.23.10.42.36Martin v. Löwis2002-11-235-39/+84
|
* Replace bsddb3 and _db occurrences.Martin v. Löwis2002-11-193-4/+4
|
* Importing test suite from bsddb3 3.4.0 (with modifications).Martin v. Löwis2002-11-1915-0/+3240
|
* Import PyBSDDB 3.4.0. Rename historical wrapper to bsddb185.Martin v. Löwis2002-11-197-0/+1638