summaryrefslogtreecommitdiffstats
path: root/Lib/bsddb
Commit message (Collapse)AuthorAgeFilesLines
* Purged Berkeley code of references to the long-obsolete whrandom.Tim Peters2004-08-083-5/+4
|
* Whitespace normalization, via reindent.py.Tim Peters2004-07-181-3/+3
|
* Adds support for DB.pget and DBCursor.pget methods.Gregory P. Smith2004-06-282-0/+27
| | | | | Based on a patch supplied by Ian Ward <ian@arevco.ca> on the pybsddb mailing list 2004-03-26.
* SF patch / bug #967763Gregory P. Smith2004-06-271-0/+9
| | | | | | | | | | | | 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.
* Fix SF bug # 897820 - we can no longer use the DB_TRUNCATE flag whenGregory P. Smith2004-06-271-6/+11
| | | | | | 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.
* * supply a more useful error message when append() is called on theGregory P. Smith2004-03-161-2/+8
| | | | | wrong type of database in dbshelve. * fix a typo in the exception name when checking args
* bugfix for people executing test_all to run the test suite. (call theGregory P. Smith2004-03-161-1/+1
| | | | correct function)
* Fixes SF bug # 778421Gregory P. Smith2004-02-263-4/+29
| | | | | | | | | * 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().
* Replace backticks with repr() or "%r"Walter Dörwald2004-02-125-14/+14
| | | | From SF patch #852334.
* __init__.py: keep it compatible with older python (True and False == 1 and 0)Gregory P. Smith2004-01-132-6/+17
| | | | test_basics.py: updated for the set_get_returns_none() default of 2 change.
* * 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