A couple of goodies

David Carter dpc22 at cam.ac.uk
Fri Jul 13 05:03:06 EDT 2007


On Thu, 12 Jul 2007, Wesley Craig wrote:

> > 1) Mailbox renames are rare
>
> Accept on the first of the month.

We've been running with my original fast rename patch for about 3 years 
now and the race condition has never been a problem. Admittedly its been 
about 4 years since our machine room UPS last decided to spot weld itself 
to the floor, but an electrician did manage to kill power to 5 racks of my 
equipment including the active mailstores without adverse side effects.

It is an imapd.conf option (fast_rename: yes), and is off by default.

>> 3) The sys admin can always fix the problem by hand (and it would
>>   be possible to log all renames to make it easier to spot problems).
>
> Perhaps we should add the new name to the mboxlist first, and then 
> remove the old name.  That way, even in a power loss case, the user 
> would have access to their mail, either with the old name or the new 
> name, depending on whether the rename succeeded.

The new name is already added to the mboxlist (as a reserved item). Two 
mailbox entries should certainly work, but there isn't (AFAIK) a tool to 
remove single entries from the mboxlist: you have to dump and restore. I 
suppose that it wouldn't be hard to write one.

Two other benefits of fast rename:
   Expunged messages and index files are also moved.
   It should make replication more reliable

>> delayed_delete.patch
>> ====================
>
> How does it compare to this:
>
> 	https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2871

Yes, I saw that (the style of mailbox names will look rather familiar :).

My version leaves the deleted mailboxes in mboxlist (invisible to normal 
users). This means:

1) admin users can see the deleted mailboxes and just rename them back
    into the live mailbox space:

     DELETED/453f56443/user/dpc22/foo -> user/dpc22/foo

2) We can use cyr_expire to remove deleted mailboxes as well as expunged
    messages, which seems to be an open issue in your version. Presumably
    Umich use some kind of external utility to clear away old mailboxes?

-- 
David Carter                             Email: David.Carter at ucs.cam.ac.uk
University Computing Service,            Phone: (01223) 334502
New Museums Site, Pembroke Street,       Fax:   (01223) 334679
Cambridge UK. CB2 3QH.


More information about the Cyrus-devel mailing list