Commit 956fe808 authored by Kurt Spanier's avatar Kurt Spanier
Browse files

New description for use of Bereley DB 2.x on a Linux platform.

parent 318531a4
*** db/db.c.sleepy Sun Jan 3 20:02:51 1999
--- db/db.c Sun Jan 3 20:28:25 1999
*************** db_open(fname, type, flags, mode, dbenv,
*** 106,112 ****
DB_PGINFO pginfo;
HASHHDR *hashm;
size_t cachesize;
! ssize_t nr;
u_int32_t iopsize;
int fd, ftype, need_fileid, restore, ret, retry_cnt, swapped;
char *real_name, mbuf[512];
--- 106,112 ----
DB_PGINFO pginfo;
HASHHDR *hashm;
size_t cachesize;
! ssize_t nr = (ssize_t) 0;
u_int32_t iopsize;
int fd, ftype, need_fileid, restore, ret, retry_cnt, swapped;
char *real_name, mbuf[512];
*************** open_retry: if (LF_ISSET(DB_CREATE)) {
*** 337,343 ****
if (nr != sizeof(mbuf)) {
if (nr != 0) {
__db_err(dbenv,
! "%s: unexpected file format", fname);
goto einval;
}
/*
--- 337,343 ----
if (nr != sizeof(mbuf)) {
if (nr != 0) {
__db_err(dbenv,
! "%s: unexpected file format, %d bytes read", fname, nr);
goto einval;
}
/*
A bug in Sleepycat´s Berkeley DB (version 2.3.16 up to 2.6.4 beta),
was detected, that caused failure during opening of database files
when running a threaded slapd on a linux box, kernel version 2.0.35,
gcc 2.7.2.1, linux threads via libpthreads.so.1.60.4.
THE BUG OCCURS ONLY WHEN SLAPD IS RUN WITH THREADS ENABLED AND MAY
ONLY OCCUR ON THE PLATFORM SPECIFIED.
SINCE THE CODE OF DB_OPEN() IS THE SAME IN VERSION 2.3.16 AND 2.6.4
WITH REPECT TO THE BUG DETECTED, DB 2.3.16 SHOULD BE PATCHED AS WELL.
Apply the supported patch at the root directory of Sleepycat´s code.
Since the bug was reported to Sleepycat, it may not appear in DB
versions, later than 2.6.4 beta.
Jan 7 1999, /KSp (ksp@openldap.org)
Berkeley DB version 2.x and OpenLDAP running threads
====================================================
Special care has to be taken, if OpenLDAP is to be used with threads
activated, while at the same time using Berkeley DB, version 2.x, as
a slapd back-end. Both, OpenLDAP AND Berkeley DB have to be compiled
with thread support activated.
The configuration tool of Sleepycat's Berkeley DB will take provion
for that on IRIX, OSF/1, and SUN Solaris platforms (version 2.3.16),
as well as FreeBSD (version 2.6.4), but NOT e.g. on LINUX platforms.
On PC-LINUX (kernel version 2.0.35, linux kernel threads as imple-
mented by libpthreads.so.1.60.4) with gcc as the standard compiler
the environment variable CPPFLAGS must define -D_REENTRANT, while
building the Berkeley DB package.
DO NOT USE THE -ansi CFLAG, SINCE THEN THE DB PACKAGE'S CONFIGURE
CANNOT FIND THE X86/GCC SPINLOCKS, WHICH ARE NEEDED FOR THREAD-
SUPPORT WITH THE BERKELEY DB.
Please check carefully, if your platform is not mentioned above.
The OpenLDAP configure tool will most probably find the correct con-
figuration itself, so that no special action has to be taken, while
building the OpenLDAP package.
Jan, 9th, 1999, /KSp (ksp@openldap.org)
If Berkeley DB 2.x should be used with thread support activated, read the
file build/db.2.x.README carefully. The Berkeley package must be build
appropriately to support threaded applications as expected.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment