mailboxes.db invalid entries
Bron Gondwana
brong at fastmail.fm
Thu Apr 21 20:24:03 EDT 2016
Ouch, yeah - spaces in group names? That's gotta be bogus. I'm surprised we accept those in the first place.
I guess the code should probably check that keys are valid identifiers though :( So that is a legitimate bug.
Bron.
On Fri, Apr 22, 2016, at 09:28, Jan Kowalsky via Info-cyrus wrote:
> Hi all,
>
> I have an unresolvable problem with one mailbox:
>
> It got an entry inside the mailboxes.db and a spool directory - but I
> can't change it or access it. I always got "invalid identifier" on cyradm.
>
> Dumping the mailbox with ctl_mboxlist
>
> example.com!user.kontakt.Calendar 0 (null) (null)
>
> Converted the mailbox with cvt_cyrusdb /srv/imap/default/mailboxes.db
> skiplist /tmp/mailboxes.txt flat
>
> I saw this invalid entry in group entry -> there is a white space
> between group: and group name:
>
> example.com!user.kontakt.Calendar %(A %(kontakt at example.com
> lrswipkxtecdan group: teamgroup lrs) I 0ba6aced567131fb P default V
> 1456854556 M 1461271748)
>
> In the past I had once a similar problem. The reasons where also invalid
> acl entries - (because of buggy ptloader - and the missing prove if the
> aci subject even exists. Anyway...)
>
> I tried to ways:
>
> First I tried to dump the mailbox.db with ctl_mboxlist -d /tmp/mailboxes.txt
>
> After deleting the wrong entry manually I wanted to reload the mailbox
> again with ctl_mboxlist -u /tmp/mailboxes.txt. All operation with
> stopped cyrus.
>
> This gave me the error:
>
> fatal error: failed to mmap /srv/imap/config/mailboxes.db file
>
> As a second way I tried to convert mailbox with the cvt_cyrusdb to flat
> format - edit the wrong entry and convert it back (with cyrus stopped).
>
> No cyrus didn't start again:
>
> In the logs:
>
> Apr 22 00:53:35 mail master[19881]: setrlimit: Unable to set file
> descriptors limit to -1: Operation not permitted
> Apr 22 00:53:35 mail master[19881]: retrying with 4096 (current max)
> Apr 22 00:53:35 mail ctl_cyrusdb[19882]: skiplist: clean shutdown file
> missing, updating recovery stamp
> Apr 22 00:53:35 mail ctl_cyrusdb[19882]: recovering cyrus databases
> Apr 22 00:53:35 mail ctl_cyrusdb[19882]: converting
> /srv/imap/config/mailboxes.db from skiplist to twoskip
> Apr 22 00:53:35 mail ctl_cyrusdb[19882]: skiplist: recovered
> /srv/imap/config/mailboxes.db (15000 records, 1962048 bytes) in 0 seconds
> Apr 22 00:53:35 mail ctl_cyrusdb[19882]: skiplist: checkpointed
> /srv/imap/config/mailboxes.db (15000 records, 1962048 bytes) in 0.143 sec
> Apr 22 00:53:39 mail ctl_cyrusdb[19882]: IOERROR: mapping
> /srv/imap/config/mailboxes.db.NEW.NEW file: Cannot allocate memory
> Apr 22 00:53:39 mail master[19881]: process type:START name:recover
> path:/usr/lib/cyrus-imapd/ctl_cyrusdb age:0.000s pid:19882 exited, status 75
> Apr 22 00:53:39 mail master[19881]: can't run startup
> Apr 22 00:53:39 mail master[19881]: exiting
>
> As the cyrus database troubleshooting isn't documented very well, any
> help is very appreciated.
>
> What is the right way to correct database entries?
> And one more question related: How to delete entries from database where
> no spool directory exists for the mailbox?
>
> Thanks and regards
> Jan
> ----
> 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 at fastmail.fm
More information about the Info-cyrus
mailing list