(original) (raw)

Patch by Robert Scheck robert-scheck@users.sourceforge.net for python >= 2.4.3, which fixes python for building using Oracle/Sleepycat db 4.5.20. --- Python-2.4.3/Modules/_bsddb.c 2006-03-07 15:16:02.000000000 +0100 +++ Python-2.4.3/Modules/_bsddb.c.db45 2006-10-07 19:30:27.000000000 +0200 @@ -2450,7 +2450,7 @@ if (self->haveStat) { /* Has the stat function been called recently? If so, we can use the cached value. */ - flags = DB_CACHED_COUNTS; + flags = DB_FAST_STAT; } MYDB_BEGIN_ALLOW_THREADS; @@ -3798,6 +3798,8 @@ } +#if (DBVER < 45) + static PyObject* DBEnv_set_lk_max(DBEnvObject* self, PyObject* args) { @@ -3814,6 +3816,8 @@ RETURN_NONE(); } +#endif + #if (DBVER >= 32) @@ -4496,7 +4500,9 @@ {"set_lg_dir", (PyCFunction)DBEnv_set_lg_dir, METH_VARARGS}, {"set_lg_max", (PyCFunction)DBEnv_set_lg_max, METH_VARARGS}, {"set_lk_detect", (PyCFunction)DBEnv_set_lk_detect, METH_VARARGS}, +#if (DBVER < 45) {"set_lk_max", (PyCFunction)DBEnv_set_lk_max, METH_VARARGS}, +#endif #if (DBVER >= 32) {"set_lk_max_locks", (PyCFunction)DBEnv_set_lk_max_locks, METH_VARARGS}, {"set_lk_max_lockers", (PyCFunction)DBEnv_set_lk_max_lockers, METH_VARARGS}, @@ -5001,7 +5007,9 @@ ADD_INT(d, DB_AFTER); ADD_INT(d, DB_APPEND); ADD_INT(d, DB_BEFORE); +#if (DBVER < 45) ADD_INT(d, DB_CACHED_COUNTS); +#endif #if (DBVER >= 41) _addIntToDict(d, "DB_CHECKPOINT", 0); #else @@ -5036,7 +5044,9 @@ ADD_INT(d, DB_POSITION); ADD_INT(d, DB_PREV); ADD_INT(d, DB_PREV_NODUP); +#if (DBVER < 45) ADD_INT(d, DB_RECORDCOUNT); +#endif ADD_INT(d, DB_SET); ADD_INT(d, DB_SET_RANGE); ADD_INT(d, DB_SET_RECNO); /robert-scheck@users.sourceforge.net