Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 47174 - OpenLDAP fails to start with Berkley DB database. Same config with ldbm database succeeds.
Summary: OpenLDAP fails to start with Berkley DB database. Same config with ldbm data...
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: AMD64 Linux
: High major (vote)
Assignee: AMD64 Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-04-07 20:09 UTC by John Thomas
Modified: 2004-08-25 16:22 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Thomas 2004-04-07 20:09:17 UTC
I recently installed the openldap on my AMD-64 machine (dual Opterons).  I can successfully start slapd if I configure openldap to use an "ldbm" database.  "bdb" (Berkley DB) databases are now recommended.  If I take a working configuration and simply change the database configuration from "ldbm" to "bdb", the following console output is returned:

<lots of "normal" output precedes this>
$ supportedControl $ structuralObjectClass $ objectClass ) )
slapd startup: initiated.
bdb_db_open: dc=thomas-home,dc=org
bdb_db_open: dbenv_open(/var/lib/openldap-bdb)
bdb(dc=thomas-home,dc=org): architecture lacks fast mutexes: applications cannot be threaded
bdb_db_open: dbenv_open failed: Invalid argument (22)
backend_startup: bi_db_open(0) failed! (22)
slapd shutdown: initiated
====> bdb_cache_release_all
slapd shutdown: freeing system resources.
bdb(dc=thomas-home,dc=org): txn_checkpoint interface requires an environment configured for the transaction subsystem
bdb_db_destroy: txn_checkpoint failed: Invalid argument (22)
====> bdb_cache_release_all
slapd stopped.
connections_destroy: nothing to destroy.


As you can see, it fails while trying to accesss bdb.  The problem appears to be related to "fast mutexes" (whatever those are) not being available which causes some type of threading problem for bdb.

I did attempt this same process on an x86 machine running Gentoo and openldap starts normally with a bdb database.


Reproducible: Always
Steps to Reproduce:
1.emerge openldap
2.configure slapd.conf to use "bdb" database (as recommended)
3.slapd -d 255

Actual Results:  
<lots of "normal" output precedes this>
$ supportedControl $ structuralObjectClass $ objectClass ) )
slapd startup: initiated.
bdb_db_open: dc=thomas-home,dc=org
bdb_db_open: dbenv_open(/var/lib/openldap-bdb)
bdb(dc=thomas-home,dc=org): architecture lacks fast mutexes: applications cannot
be threaded
bdb_db_open: dbenv_open failed: Invalid argument (22)
backend_startup: bi_db_open(0) failed! (22)
slapd shutdown: initiated
====> bdb_cache_release_all
slapd shutdown: freeing system resources.
bdb(dc=thomas-home,dc=org): txn_checkpoint interface requires an environment
configured for the transaction subsystem
bdb_db_destroy: txn_checkpoint failed: Invalid argument (22)
====> bdb_cache_release_all
slapd stopped.
connections_destroy: nothing to destroy.


Expected Results:  
normal startup of openldap using Berkley DB database
Comment 1 Jason Huebel (RETIRED) gentoo-dev 2004-05-21 12:17:32 UTC
Workaround available, lowering to major...
Comment 2 Jason Huebel (RETIRED) gentoo-dev 2004-08-25 16:22:11 UTC
Workaround available, closing.