mirror of
https://github.com/python/cpython.git
synced 2025-11-01 02:38:53 +00:00
Support for BerkeleyDB 4.4 (tested against 4.4.20 as well as all the
way back thru 3.2). This should be backported to the release24-maint branch.
This commit is contained in:
parent
bab05c9604
commit
29602d2153
2 changed files with 21 additions and 5 deletions
|
|
@ -97,7 +97,7 @@
|
|||
#error "eek! DBVER can't handle minor versions > 9"
|
||||
#endif
|
||||
|
||||
#define PY_BSDDB_VERSION "4.3.3"
|
||||
#define PY_BSDDB_VERSION "4.4.0"
|
||||
static char *rcs_id = "$Id$";
|
||||
|
||||
|
||||
|
|
@ -4308,8 +4308,13 @@ DBEnv_lock_stat(DBEnvObject* self, PyObject* args)
|
|||
#endif
|
||||
MAKE_ENTRY(nrequests);
|
||||
MAKE_ENTRY(nreleases);
|
||||
MAKE_ENTRY(nnowaits);
|
||||
#if (DBVER < 44)
|
||||
MAKE_ENTRY(nnowaits); /* these were renamed in 4.4 */
|
||||
MAKE_ENTRY(nconflicts);
|
||||
#else
|
||||
MAKE_ENTRY(lock_nowait);
|
||||
MAKE_ENTRY(lock_wait);
|
||||
#endif
|
||||
MAKE_ENTRY(ndeadlocks);
|
||||
MAKE_ENTRY(regsize);
|
||||
MAKE_ENTRY(region_wait);
|
||||
|
|
@ -5153,7 +5158,11 @@ DL_EXPORT(void) init_bsddb(void)
|
|||
ADD_INT(d, DB_LOCK_IREAD);
|
||||
ADD_INT(d, DB_LOCK_IWR);
|
||||
#if (DBVER >= 33)
|
||||
#if (DBVER < 44)
|
||||
ADD_INT(d, DB_LOCK_DIRTY);
|
||||
#else
|
||||
ADD_INT(d, DB_LOCK_READ_UNCOMMITTED); /* renamed in 4.4 */
|
||||
#endif
|
||||
ADD_INT(d, DB_LOCK_WWRITE);
|
||||
#endif
|
||||
|
||||
|
|
@ -5255,6 +5264,11 @@ DL_EXPORT(void) init_bsddb(void)
|
|||
ADD_INT(d, DB_MULTIPLE_KEY);
|
||||
#endif
|
||||
|
||||
#if (DBVER >= 44)
|
||||
ADD_INT(d, DB_READ_UNCOMMITTED); /* replaces DB_DIRTY_READ in 4.4 */
|
||||
ADD_INT(d, DB_READ_COMMITTED);
|
||||
#endif
|
||||
|
||||
#if (DBVER >= 33)
|
||||
ADD_INT(d, DB_DONOTINDEX);
|
||||
#endif
|
||||
|
|
|
|||
8
setup.py
8
setup.py
|
|
@ -556,12 +556,12 @@ class PyBuildExt(build_ext):
|
|||
# Sleepycat Berkeley DB interface. http://www.sleepycat.com
|
||||
#
|
||||
# This requires the Sleepycat DB code. The earliest supported version
|
||||
# of that library is 3.2, the latest supported version is 4.3. A list
|
||||
# of that library is 3.2, the latest supported version is 4.4. A list
|
||||
# of available releases can be found at
|
||||
#
|
||||
# http://www.sleepycat.com/update/index.html
|
||||
|
||||
max_db_ver = (4, 3)
|
||||
max_db_ver = (4, 4)
|
||||
min_db_ver = (3, 2)
|
||||
db_setup_debug = False # verbose debug prints from this script?
|
||||
|
||||
|
|
@ -578,18 +578,20 @@ class PyBuildExt(build_ext):
|
|||
'/sw/include/db3',
|
||||
]
|
||||
# 4.x minor number specific paths
|
||||
for x in (0,1,2,3):
|
||||
for x in (0,1,2,3,4):
|
||||
db_inc_paths.append('/usr/include/db4%d' % x)
|
||||
db_inc_paths.append('/usr/include/db4.%d' % x)
|
||||
db_inc_paths.append('/usr/local/BerkeleyDB.4.%d/include' % x)
|
||||
db_inc_paths.append('/usr/local/include/db4%d' % x)
|
||||
db_inc_paths.append('/pkg/db-4.%d/include' % x)
|
||||
db_inc_paths.append('/opt/db-4.%d/include' % x)
|
||||
# 3.x minor number specific paths
|
||||
for x in (2,3):
|
||||
db_inc_paths.append('/usr/include/db3%d' % x)
|
||||
db_inc_paths.append('/usr/local/BerkeleyDB.3.%d/include' % x)
|
||||
db_inc_paths.append('/usr/local/include/db3%d' % x)
|
||||
db_inc_paths.append('/pkg/db-3.%d/include' % x)
|
||||
db_inc_paths.append('/opt/db-3.%d/include' % x)
|
||||
|
||||
db_ver_inc_map = {}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue