Shelley Waltz wrote: > Oddly enough I had the identical issue today while trying to remove a > bunch of users. I am running cyrus-imapd-2.3.7-2.el5 on RHEL5. > > I used cyradm and did > sam user.x anyone c > dm user.x > > This worked fine for about 20 users, then I got the following in maillog ... > > Nov 3 10:35:28 rr imap[16539]: IOERROR: opening quota file > /var/lib/imap/quota/x/user.x: Too many open files > Nov 3 10:35:28 rr imap[16539]: DBERROR: error fetching user.x: cyrusdb error > Nov 3 10:35:28 rr imap[16539]: Deleted mailbox user.x > > If I look in /var/spool/imap/x/user/ the directory and folders for user > x are still there. If I try to remove the mailbox once again using > cyradm, it claims the mailbox does not exist. > > How does one resolve this issue safely? > > I have the same problem with a few mailboxes myself, and don't know how to clean it up. To avoid the problem in the first place, if you have just a few (tens ? couple of hundred) users beginning with the same prefix, I think you can avoid the problem in the first place by putting e.g. imap cmd="imapd" listen="imap" prefork=0 maxfds=4096 in /etc/cyrus.conf. I suspect the underlying cause is this chunk from lib/cyrusdb_quotalegacy.c(foreach): /* strip off the qr specific path and replace with pattern */ sprintf(strstr(quota_path, FNAME_QUOTADIR) + strlen(FNAME_QUOTADIR), "?/%s*", prefix); /* search for the quotaroots */ glob(quota_path, GLOB_NOSORT, NULL, &globbuf); That pattern on our boxes can match thousands of users. I think it needs to be more careful and go looking for `prefix' and `prefix.*', but I haven't dug into it far enough yet. Cheers, Rob -- E-Mail: Rob.McMahon@xxxxxxxxxxxxx PHONE: +44 24 7652 3037 Rob McMahon, IT Services, Warwick University, Coventry, CV4 7AL, England ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html