Re: cyr_expire suddenly segfaulting

2017-03-13 Thread Kenneth Marshall
On Mon, Mar 13, 2017 at 11:32:38AM +1100, Bron Gondwana wrote:
> So everything is 2.4 defaults, which are:
> 
> brong@wot:~/src/cyrus-imapd$ grep '_db"' lib/imapoptions 
> { "annotation_db", "skiplist", STRINGLIST("berkeley", "berkeley-hash", 
> "skiplist")}
> { "duplicate_db", "skiplist", STRINGLIST("berkeley", "berkeley-nosync", 
> "berkeley-hash", "berkeley-hash-nosync", "skiplist", "sql")}
> { "mboxkey_db", "skiplist", STRINGLIST("berkeley", "skiplist") }
> { "mboxlist_db", "skiplist", STRINGLIST("flat", "berkeley", "berkeley-hash", 
> "skiplist")}
> { "ptscache_db", "skiplist", STRINGLIST("berkeley", "berkeley-hash", 
> "skiplist")}
> { "quota_db", "quotalegacy", STRINGLIST("flat", "berkeley", "berkeley-hash", 
> "skiplist", "sql", "quotalegacy")}
> { "seenstate_db", "skiplist", STRINGLIST("flat", "berkeley", "berkeley-hash", 
> "skiplist")}
> { "subscription_db", "flat", STRINGLIST("flat", "berkeley", "berkeley-hash", 
> "skiplist")}
> { "statuscache_db", "skiplist", STRINGLIST("berkeley", "berkeley-nosync", 
> "berkeley-hash", "berkeley-hash-nosync", "skiplist") }
> { "tlscache_db", "skiplist", STRINGLIST("berkeley", "berkeley-nosync", 
> "berkeley-hash", "berkeley-hash-nosync", "skiplist", "sql")}
> { "userdeny_db", "flat", STRINGLIST("flat", "berkeley", "berkeley-hash", 
> "skiplist", "sql")}
> 
> So you shouldn't have any berkeley databases at all.  It should be perfectly 
> safe to shut down Cyrus, delete the $confdir/db folder, and restart Cyrus.
> 
> that's:
> 
> rm -rf /var/lib/imap/db/
> 
> While Cyrus is shut down :)
> 
> (Normal warnings about backing up your stuff and making sure that Centos 
> packages aren't doing something different with defaults than upstream)
> 
> Cheers,
> 
> Bron.
> 
> On Mon, 13 Mar 2017, at 08:28, Nick Howitt wrote:
> > 
> > 
> > On 12/03/2017 21:09, Patrick Boutilier wrote:
> > > On 03/12/2017 02:24 PM, Nick Howitt wrote:
> > >> Hi,
> > >> I've been running cyrus-imap for a few years not. I am using 2.4.17-8 on
> > >> ClearOS (a Centos derivative). I've been running with "delprune
> > >> cmd="cyr_expire -E 1 -X 7 -D 7" at=0001" in cyrus.conf, but in the last
> > >> week or so it has started segfaulting. I've tried moving the command to
> > >> cron.daily "/usr/lib/cyrus-imapd/cyr_expire -E 1 -X 7 -D 7" but it still
> > >> segfaulting.
> > >>
> > >> In /var/log/maillog I get:
> > >> Mar 12 03:15:53 server cyr_expire[15065]: Repacking mailbox 
> > >> user.mail-ebay
> > >> Mar 12 03:15:53 server master[15064]: setrlimit: Unable to set file
> > >> descriptors limit to -1: Operation not permitted
> > >> Mar 12 03:15:53 server master[15064]: retrying with 4096 (current max)
> > >> Mar 12 03:15:53 server cyr_expire[15065]: Repacking mailbox
> > >> user.mail-ebay.Drafts
> > >> Mar 12 03:15:54 server cyr_expire[15065]: Repacking mailbox user.nick
> > >> Mar 12 03:15:54 server cyr_expire[15065]: Repacking mailbox 
> > >> user.ourfamily
> > >> Mar 12 03:15:54 server cyr_expire[15065]: Repacking mailbox
> > >> user.ourfamily.Drafts
> > >> Mar 12 03:15:54 server cyr_expire[15065]: Expunged 0 out of 9150
> > >> messages from 57 mailboxes
> > >> Mar 12 03:15:54 server cyr_expire[15065]: duplicate_prune: pruning back
> > >> 0.00 days
> > >> Mar 12 03:15:54 server ctl_cyrusdb[15068]: recovering cyrus databases
> > >> Mar 12 03:15:55 server ctl_cyrusdb[15068]: skiplist: checkpointed
> > >> /var/lib/imap/mailboxes.db (57 records, 4816 bytes) in 0 seconds
> > >> Mar 12 03:15:55 server ctl_cyrusdb[15068]: skiplist: checkpointed
> > >> /var/lib/imap/annotations.db (0 records, 144 bytes) in 0 seconds
> > >> Mar 12 03:15:55 server ctl_cyrusdb[15068]: done recovering cyrus 
> > >> databases
> > >> Mar 12 03:15:55 server master[15064]: unable to setsocketopt(IP_TOS):
> > >> Operation not supported
> > >> Mar 12 03:15:55 server ctl_cyrusdb[15073]: checkpointing cyrus databases
> > >> Mar 12 03:15:55 server ctl_cyrusdb[15073]: done checkpointing cyrus
> > >> databases
> > >> Mar 12 03:15:55 server imaps[15075]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imap[15074]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imap[15078]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imap[15076]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imaps[15081]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imap[15080]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imaps[15077]: error sending to idled: 3
> > >> Mar 12 03:15:55 server imaps[15079]: error sending to idled: 3
> > >> Mar 12 03:15:56 server tls_prune[15071]: skiplist: checkpointed
> > >> /var/lib/imap/tls_sessions.db (575 records, 122352 bytes) in 0 seconds
> > >> Mar 12 03:15:56 server cyr_expire[15072]: skiplist: checkpointed
> > >> /var/lib/imap/deliver.db (37 records, 5464 bytes) in 0 seconds
> > >> Mar 12 03:15:56 server cyr_expire[15072]: Expunged 0 out of 9112
> > >> messages from 57 mailboxes
> > >> Mar 12 03:15:56 server cyr_expire[15072]: duplicate_prune: pruning back
> > >> 3.0

Re: cyr_expire suddenly segfaulting

2017-03-13 Thread Bron Gondwana
You can wind up with a broken Berkeley environment without even any databases 
defined! I'm glad we've removed it entirely now :)

Bron.

On Mon, 13 Mar 2017, at 23:36, Kenneth Marshall wrote:
> On Mon, Mar 13, 2017 at 11:32:38AM +1100, Bron Gondwana wrote:
> > So everything is 2.4 defaults, which are:
> > 
> > brong@wot:~/src/cyrus-imapd$ grep '_db"' lib/imapoptions 
> > { "annotation_db", "skiplist", STRINGLIST("berkeley", "berkeley-hash", 
> > "skiplist")}
> > { "duplicate_db", "skiplist", STRINGLIST("berkeley", "berkeley-nosync", 
> > "berkeley-hash", "berkeley-hash-nosync", "skiplist", "sql")}
> > { "mboxkey_db", "skiplist", STRINGLIST("berkeley", "skiplist") }
> > { "mboxlist_db", "skiplist", STRINGLIST("flat", "berkeley", 
> > "berkeley-hash", "skiplist")}
> > { "ptscache_db", "skiplist", STRINGLIST("berkeley", "berkeley-hash", 
> > "skiplist")}
> > { "quota_db", "quotalegacy", STRINGLIST("flat", "berkeley", 
> > "berkeley-hash", "skiplist", "sql", "quotalegacy")}
> > { "seenstate_db", "skiplist", STRINGLIST("flat", "berkeley", 
> > "berkeley-hash", "skiplist")}
> > { "subscription_db", "flat", STRINGLIST("flat", "berkeley", 
> > "berkeley-hash", "skiplist")}
> > { "statuscache_db", "skiplist", STRINGLIST("berkeley", "berkeley-nosync", 
> > "berkeley-hash", "berkeley-hash-nosync", "skiplist") }
> > { "tlscache_db", "skiplist", STRINGLIST("berkeley", "berkeley-nosync", 
> > "berkeley-hash", "berkeley-hash-nosync", "skiplist", "sql")}
> > { "userdeny_db", "flat", STRINGLIST("flat", "berkeley", "berkeley-hash", 
> > "skiplist", "sql")}
> > 
> > So you shouldn't have any berkeley databases at all.  It should be 
> > perfectly safe to shut down Cyrus, delete the $confdir/db folder, and 
> > restart Cyrus.
> > 
> > that's:
> > 
> > rm -rf /var/lib/imap/db/
> > 
> > While Cyrus is shut down :)
> > 
> > (Normal warnings about backing up your stuff and making sure that Centos 
> > packages aren't doing something different with defaults than upstream)
> > 
> > Cheers,
> > 
> > Bron.
> > 
> > On Mon, 13 Mar 2017, at 08:28, Nick Howitt wrote:
> > > 
> > > 
> > > On 12/03/2017 21:09, Patrick Boutilier wrote:
> > > > On 03/12/2017 02:24 PM, Nick Howitt wrote:
> > > >> Hi,
> > > >> I've been running cyrus-imap for a few years not. I am using 2.4.17-8 
> > > >> on
> > > >> ClearOS (a Centos derivative). I've been running with "delprune
> > > >> cmd="cyr_expire -E 1 -X 7 -D 7" at=0001" in cyrus.conf, but in the last
> > > >> week or so it has started segfaulting. I've tried moving the command to
> > > >> cron.daily "/usr/lib/cyrus-imapd/cyr_expire -E 1 -X 7 -D 7" but it 
> > > >> still
> > > >> segfaulting.
> > > >>
> > > >> In /var/log/maillog I get:
> > > >> Mar 12 03:15:53 server cyr_expire[15065]: Repacking mailbox 
> > > >> user.mail-ebay
> > > >> Mar 12 03:15:53 server master[15064]: setrlimit: Unable to set file
> > > >> descriptors limit to -1: Operation not permitted
> > > >> Mar 12 03:15:53 server master[15064]: retrying with 4096 (current max)
> > > >> Mar 12 03:15:53 server cyr_expire[15065]: Repacking mailbox
> > > >> user.mail-ebay.Drafts
> > > >> Mar 12 03:15:54 server cyr_expire[15065]: Repacking mailbox user.nick
> > > >> Mar 12 03:15:54 server cyr_expire[15065]: Repacking mailbox 
> > > >> user.ourfamily
> > > >> Mar 12 03:15:54 server cyr_expire[15065]: Repacking mailbox
> > > >> user.ourfamily.Drafts
> > > >> Mar 12 03:15:54 server cyr_expire[15065]: Expunged 0 out of 9150
> > > >> messages from 57 mailboxes
> > > >> Mar 12 03:15:54 server cyr_expire[15065]: duplicate_prune: pruning back
> > > >> 0.00 days
> > > >> Mar 12 03:15:54 server ctl_cyrusdb[15068]: recovering cyrus databases
> > > >> Mar 12 03:15:55 server ctl_cyrusdb[15068]: skiplist: checkpointed
> > > >> /var/lib/imap/mailboxes.db (57 records, 4816 bytes) in 0 seconds
> > > >> Mar 12 03:15:55 server ctl_cyrusdb[15068]: skiplist: checkpointed
> > > >> /var/lib/imap/annotations.db (0 records, 144 bytes) in 0 seconds
> > > >> Mar 12 03:15:55 server ctl_cyrusdb[15068]: done recovering cyrus 
> > > >> databases
> > > >> Mar 12 03:15:55 server master[15064]: unable to setsocketopt(IP_TOS):
> > > >> Operation not supported
> > > >> Mar 12 03:15:55 server ctl_cyrusdb[15073]: checkpointing cyrus 
> > > >> databases
> > > >> Mar 12 03:15:55 server ctl_cyrusdb[15073]: done checkpointing cyrus
> > > >> databases
> > > >> Mar 12 03:15:55 server imaps[15075]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imap[15074]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imap[15078]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imap[15076]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imaps[15081]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imap[15080]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imaps[15077]: error sending to idled: 3
> > > >> Mar 12 03:15:55 server imaps[15079]: error sending to idled: 3
> > > >> Mar 12 03:15:56 server tls_prune[15071]: skiplist: checkpointed
>