cyrreconstruct and resurrected deleted/moved
Steinar Bang
sb at dod.no
Tue Feb 14 04:25:37 EST 2006
>>>>> Sebastian Hagedorn <Hagedorn at uni-koeln.de>:
>> That particular folder had slowed down quite a bit, so during
>> Christmas I decided to clean it up. From my imap client Gnus I
>> deleted (or believed I deleted) everything I didn't want. Then I
>> moved the rest to the user.myuser.sub.arkiv folder.
> I bet your client hides deleted messages, but doesn't actually
> expunge the folder. There is no "move" in IMAP. It's copy+delete,
> where delete only sets the "deleted" flag. You need to expunge the
> folder to actually delete the messages.
Thanx for the info. It looks like I may have encountered a bug in
Gnus:
http://article.gmane.org/gmane.emacs.gnus.general/61691
Other have seen the same behaviour. I'm running a CVS version of
Gnus, so I guess I deserve what I get...:-)
>> After the cyrreconstruct those articles were back.
> I guess the flags were lost, so all previously deleted messages were
> shown by your client.
Yup. That sounds right.
[snip!]
>>> From the looks of it, these duplicates are hardlinked.
> That's a little suprising, but I just verified that it actually
> happens when you copy a message. I wasn't aware of that :-)
>> So my questions are:
>> Is there a way short of redoing the Christmas cleanup from an email
>> client to get back to the state before the massive delete/move?
>> Ie. what if I wrote a perl script that unlinked everything that had
>> more than one hardlink in /var/spool/cyrus/mail/s/user/myuser/sub/
>> and then did cyrreconstruct?
> That might work, but you're on your own with it ...
I have been pondering where to go with this. Two possibilities:
- Start etherealing to see if an expunge is sent, and upgrade, or
modify Gnus until this happens. The problem here is that I'm only
running IMAPS on this server
- Actually remove all hardlinks from the old folder, and do
cyrreconstruct to see what happens
As you said, the second alternative might work, but I'm on my
own...:-) But what I've recently done, is to use rsync to do a backup
to a different disk, which means that I might try this, and roll back
if it fails.
More information about the Info-cyrus
mailing list