Re: DBERROR: critical database situation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2.4 was releasted in 2010, it's 2017.  We advise not to run Berkeley DB (even on 2.3.19), because it doesn't upgrade very nicely.

I would advise that you get some version 10 binaries and use cvt_cyrusdb to convert all your berkeley databases to skiplist. Skiplist in 2.3.19 is rock solid.  You'll need to update the config as well, but the default for every database type in 2.3.19 is skiplist, so it's just a matter of removing some lines from imapd.conf.

Regards,

Bron.

On Wed, 4 Jan 2017, at 19:45, absolutely_free--- via Info-cyrus wrote:

Hi,
I am using cyrus-imapd23-2.3.19_2 on FreeBSD.
After BSD upgrade (from 10 to 11) I get problems with cyrus.
I get this kind of errors on:

Jan  4 09:27:31 mail imaps[65141]: DBERROR db5: pthread suspend failed: Invalid argument
Jan  4 09:27:31 mail imaps[65141]: DBERROR db5: BDB0061 PANIC: Invalid argument
Jan  4 09:27:31 mail imaps[65141]: DBERROR: critical database situation
Jan  4 09:27:31 mail imaps[65140]: DBERROR db5: BDB0060 PANIC: fatal region error detected; run recovery
Jan  4 09:27:31 mail imaps[65140]: DBERROR: critical database situation
Jan  4 09:27:38 mail imaps[65142]: DBERROR db5: BDB0060 PANIC: fatal region error detected; run recovery
Jan  4 09:27:38 mail imaps[65142]: DBERROR: critical database situation
Jan  4 09:27:38 mail master[65081]: service imaps pid 65142 in READY state: terminated abnormally
Jan  4 09:27:38 mail imaps[65143]: DBERROR db5: BDB0060 PANIC: fatal region error detected; run recovery
Jan  4 09:27:38 mail imaps[65143]: DBERROR: critical database situation
Jan  4 09:27:38 mail master[65081]: service imaps pid 65143 in READY state: terminated abnormally

So I stopped imapd service, and ran /usr/local/cyrus/bin/ctl_cyrusdb -r as cyrus user.

Rebuild went fine: 

Jan  4 09:36:17 mail ctl_cyrusdb[62332]: recovering cyrus databases
Jan  4 09:36:17 mail ctl_cyrusdb[62332]: done recovering cyrus databases

and I also checked that just after ctl_cyrusdb command, I was able to dump mailboxes.db content with ctl_mboxlist -d

After few minutes, I get same errors, and ctl_mboxlist -d returns nothing:

cyrus@mail:/root$ /usr/local/cyrus/bin/ctl_cyrusdb -r
cyrus@mail:/root$ 

Yesterday I tried to:

stop services
remove and recreate /var/imap folder
run reconstruct

but it seems I got no stable solution

Can you help me to solve this problem?
Thank you very much

This is my imapd.conf:

root@mail:/usr/local/etc# grep -v ^# imapd.conf |grep -v ^$
configdirectory: /var/imap
partition-default: /var/spool/imap
allowapop: 0
unixhierarchysep: no
altnamespace: no
allowanonymouslogin: no
allowplaintext: yes
quotawarn: 90
timeout: 30
imapidlepoll: 60
poptimeout: 10
popminpoll: 0
admins: root cyrus
defaultacl: anyone lrs
duplicatesuppression: no
sievedir: /var/imap/sieve
postmaster: postmaster
sieve_maxscriptsize: 32
sieve_maxscripts: 5
duplicate_db: berkeley
mboxlist_db: skiplist
ptscache_db: berkeley
seenstate_db: skiplist
sasl_pwcheck_method: saslauthd
sasl_mech_list: plain
tls_cert_file: /etc/certs/ssl.crt/server.crt
tls_key_file: /etc/certs/ssl.key/server.key
tls_ca_file:  /etc/certs/ssl.crt/gd_bundle-g2-g1.crt
tls_ca_path: /etc/certs/ssl.crt
notifysocket: /var/imap/socket/notify

And cyrus.conf

root@mail:/usr/local/etc# grep -v ^# cyrus.conf |grep -v ^$          
START {
  # do not delete this entry!
  recover       cmd="ctl_cyrusdb -r"
  # this is only necessary if using idled for IMAP IDLE
}
SERVICES {
  # add or remove based on preferences
  imap          cmd="imapd" listen="127.0.0.1:imap" prefork=1
  imaps         cmd="imapd -s" listen="imaps" prefork=0
  #pop3         cmd="pop3d" listen="pop3" prefork=0
  pop3s         cmd="pop3d -s" listen="pop3s" prefork=0
  sieve         cmd="timsieved" listen="sieve" prefork=0
  # these are only necessary if receiving/exporting usenet via NNTP
  # at least one LMTP is required for delivery
  lmtpunix      cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0
  # this is required if using notifications
}
EVENTS {
  # this is required
  checkpoint    cmd="ctl_cyrusdb -c" period=30
  # this is only necessary if using duplicate delivery suppression,
  # Sieve or NNTP
  delprune      cmd="cyr_expire -E 3" at=0400
  # this is only necessary if caching TLS sessions
  tlsprune      cmd="tls_prune" at=0400
}





----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

--
  Bron Gondwana
  brong@xxxxxxxxxxx


----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux