FYI, there's still an issue with BDB 4.1 support -- mod_dav_svn (or
rather, the server side of a ra_dav session) doesn't seem to like it, on
both Unix and Windows. So that part still has to be resolved before we
can recommend upgrading to 4.1. Oh, and there's also a rather horrible
performance problem on Windows -- with 4.1, fs-test 30 takes longer on
my machine than the whole test suite with 4.0.
Since this patch doesn't (or shouldn't, *pray*) interact with BDB 4.0,
I'm committing it to get it off my chest.
brane@tigris.org wrote:
>Author: brane
>Date: 2002-10-23 17:54:50 -0500 (Wed, 23 Oct 2002)
>New Revision: 3467
>
>Added:
> trunk/subversion/libsvn_fs/bdb/bdb_compat.c
> trunk/subversion/libsvn_fs/bdb/bdb_compat.h
>Modified:
> trunk/build/win32/build_neon.bat
> trunk/subversion/libsvn_fs/bdb/changes-table.c
> trunk/subversion/libsvn_fs/bdb/changes-table.h
> trunk/subversion/libsvn_fs/bdb/copies-table.c
> trunk/subversion/libsvn_fs/bdb/nodes-table.c
> trunk/subversion/libsvn_fs/bdb/reps-table.c
> trunk/subversion/libsvn_fs/bdb/rev-table.c
> trunk/subversion/libsvn_fs/bdb/strings-table.c
> trunk/subversion/libsvn_fs/bdb/txn-table.c
> trunk/subversion/libsvn_fs/fs.c
> trunk/subversion/libsvn_fs/libsvn_fs.dsp
> trunk/subversion/mod_dav_svn/mod_dav_svn.dsp
>Log:
>Added support for building with both Berkeley DB 4.0.14 and 4.1.24.
>Based on this patch by Justin Erenkrantz <jerenkrantz@apache.org>:
>
> http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=22004
>
>[ in subversion/libsvn_fs ]
>* bdb/bdb_compat.h: New header. Definitions for BDB 4.0/4.1 compatibility.
>* bdb/bdb_compat.c: New file. Implements svn_bdb__check_version.
>
>* bdb/changes-table.c, bdb/copies-table.c, bdb/nodes-table.c, bdb/reps-table.c,
> bdb/rev-table.c, bdb/strings-table.c, bdb/txn-table.c:
>Include "bdb_compat.h" instead of <db.h>. In calls to DB->open, wrap
>the environment and transaction parameter in SVN_BDB_OPEN_PARAMS. Pass
>the SVN_BDB_AUTO_COMMIT flag to DB->open and DB->put wherever the
>transaction is NULL. Check the BDB version before each call to
>db_create.
>
>* bdb/changes-table.h: Include <db.h> instead of "db.h".
>
>* fs.c: Include bdb/bdb_compat.h.
>(check_db_version): New function.
>(check_already_open): Extract version check into check_db_version.
>(svn_fs_create_berkeley, svn_fs_open_berkeley): Call check_db_version.
>(cleanup_fs_db, cleanup_fs): Make usage of DB_INCOMPLETE conditional.
>
>* libsvn_fs.dsp: Add bdb/bdb_compat.c.
>
>[top-level]
>* subversion/mod_dav_svn/mod_dav_svn.dsp: Add bdb/bdb_compat.c.
>
>
--
Brane Čibej <brane_at_xbc.nu> http://www.xbc.nu/brane/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Oct 24 01:35:19 2002