ctl_cyrusdb -r tries to malloc 3GB, and fails.

Paul Boven p.boven at chello.nl
Fri Dec 19 10:55:29 EST 2003

Hi everyone,

Due to some form of database-corruption (again!) ctl_cyrusdb -r won't 
work anymore. During the checkpoint (ctl_cyrusdb -c), the following 
messages appear:

ctl_cyrusdb: unable to sync environment
ctl_cyrusdb: unable to archive environment

This is logged to syslog when I run 'ctl_cyrusdb -r':

DBERROR db4: malloc: Resoure temporarily unavailable: 3435973860
(does this really mean ctl_cyrusdb just tried to malloc 3GB?)
DBERROR db4: PANIC: Resource temporarily unavailable
DBERROR: critical database situation

However, ctl_cyrusdb -r returns without any error message.

According to the truss output, annotations.db is the last database opened.
This fortunately is not a production server, but how could one recover 
this system? The db.backup1 and db.backup2 both contain only a 
mailboxes.db and annotations.db, and diff shows those are the same as 
the current version.

The system in question is Solaris 9 Sparc, cyrus-imapd-2.2.2-BETA, 
cyrus-sasl-2.1.17. Berkely is db-4.1.25.

Regards, Paul Boven.

More information about the Info-cyrus mailing list