DBERROR db4: /var/lib/imap/db/__db.001: unable to initializeenvironment lock: Function not implemented

Mobeen Azhar moby at mobsternet.com
Sun May 25 16:51:52 EDT 2003


The problem is caused by your DB4 using posix threads which RedHat has badly
mangled in RH 9.0.  I went through the same issues.  You have a couple of
ways out:

1)  Download the DB4 source RPM.  Edit the spec. file and remove the
--enable-threads piece and rebuild the RPM.  If you like, I can email you
the edited SPEC file or the complete working binary DB4 RPM built without
posix threads.

2)  Edit Simon's SPEC file in his source RPM and do not use DB4.  I have had
problems with skiplist also, so I would recommend removing all db definition
in the source rpm and letting the build choose the defaults (a combination
of flat files and db3-nosync).

3)  Try to figure out why posix threads are not working on your system.  Are
you running an i686 system?  Did you have RedHat's up2date update your
glibc?  Look at https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=88456
for this nightmare (which RedHat seems to be completely ignoring at the
moment).

<tongue in cheek>
Of course, the easiest way out might be to switch to another distro. :)
</tongue in cheek>

--Moby

They that can give up essential liberty to obtain a little temporary safety
deserve neither liberty nor safety.  -- Benjamin Franklin

First they came for the Jews and I did not speak out because I was not a
Jew.
Then they came for the Communists and I did not speak out because I was not
a Communist.
Then they came for the trade unionists and I did not speak out because I was
not a trade unionist.
Then they came for me and there was no one left to speak out for me.  --
Pastor Martin Niemöller 

-----Original Message-----
From: owner-info-cyrus at lists.andrew.cmu.edu
[mailto:owner-info-cyrus at lists.andrew.cmu.edu] On Behalf Of Thomas Boernert
Sent: Sunday, May 25, 2003 16:21
To: info-cyrus at lists.andrew.cmu.edu
Subject: DBERROR db4: /var/lib/imap/db/__db.001: unable to
initializeenvironment lock: Function not implemented


Hello Cyrus! (everyone ;-))

i'm using your sasl and imapd ;-), that's fine, but there
are some big problems.

Version SASL 2.1.13
Version IMAP 2.1.13
(both SRPMS from Simon Matter)

OS: RedHat 9.0 (on RH 8 it's working)

I'm using Berkeley DB 4.0.14 build from RedHat.

Problem 1:
May 25 22:08:32 jockel ctl_cyrusdb[17650]: checkpointing cyrus databases
May 25 22:08:32 jockel ctl_cyrusdb[17650]: DBERROR db4:
/var/lib/imap/db/__db.001: unable to initialize environment lock:
Function not implemented
May 25 22:08:32 jockel ctl_cyrusdb[17650]: DBERROR: dbenv->open
'/var/lib/imap/db' failed: Function not implemented
May 25 22:08:32 jockel ctl_cyrusdb[17650]: DBERROR: init
/var/lib/imap/db: cyrusdb error
May 25 22:08:32 jockel ctl_cyrusdb[17650]: done checkpointing cyrus
databases

Problem 2:
May 25 01:08:32 jockel lmtpd[7633]: DBERROR db4:
/var/lib/imap/db/__db.001: unable to initialize environment lock:
Function not implemented
May 25 01:08:32 jockel lmtpd[7633]: DBERROR: dbenv->open
'/var/lib/imap/db' failed: Function not implemented
May 25 01:08:32 jockel lmtpd[7633]: DBERROR: init /var/lib/imap/db:
cyrusdb error
May 25 01:08:32 jockel lmtpd[7633]: lmtpd: unable to init duplicate
delivery database

I've no problems building the sasl and imapd.

my imapd.conf
<------------------------ snip --------------------------->
configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyrus
allowanonymouslogin: no
autocreatequota: 1000000
quotawarn: 90
timeout: 30
poptimeout: 10
popminpoll: 15
servername: pop.tbits.net
sievedir: /var/lib/imap/sieve
sieve_maxscriptsize: 32
sieve_maxscripts: 5
hashimapspool: true
allowplaintext: yes
sasl_pwcheck_method: saslauthd
sasl_mech_list: LOGIN PLAIN NTLM DIGEST-MD5
tls_cert_file: /usr/share/ssl/certs/cyrus-imapd.pem
tls_key_file: /usr/share/ssl/certs/cyrus-imapd.pem
<------------------------ snip --------------------------->

my cyrus.conf
<------------------------ snip --------------------------->
# standard standalone server implementation

START {
  # do not delete this entry!
  recover       cmd="ctl_cyrusdb -r"

  # this is only necessary if using idled for IMAP IDLE
#  idled                cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/lib/imap/sockets
SERVICES {
  # add or remove based on preferences
  imap          cmd="imapd" listen="[localhost]:imap" prefork=5
  imaps         cmd="imapd -s" listen="[localhost]:imaps" prefork=1
  pop3          cmd="pop3d" listen="[pop]:pop3" prefork=3
  pop3s         cmd="pop3d -s" listen="[pop]:pop3s" prefork=1
  sieve         cmd="timsieved" listen="[localhost]:sieve" prefork=0

  # at least one LMTP is required for delivery
#  lmtp         cmd="lmtpd" listen="[localhost]:lmtp" prefork=0
  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

  # this is only necessary if using notifications
#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify"
proto="udp" prefork=1
}

EVENTS {
  # this is required
  checkpoint    cmd="ctl_cyrusdb -c" period=30

  # this is only necessary if using duplicate delivery suppression
  delprune      cmd="ctl_deliver -E 3" at=0400

  # this is only necessary if caching TLS sessions
  tlsprune      cmd="tls_prune" at=0400
}
<------------------------ snip --------------------------->

Thanks for help !

Have a nice day.

-Thomas









More information about the Info-cyrus mailing list