On Fri, 15 Dec 2006, Mark Crispin wrote:

Inspect the .mixmeta file in the damaged mailbox. Is it still sane? Compare it with the one in the restored copy.

I may have lost the damaged one (I mean, I ran Pine which may have overwritten it, but I think it was sane

What I did:

- restored .mixstatus and .mixindex from a "dirvish" backup (easy - it's just an rsync copy) - now I could read all the messages (a sample anyway; there are 3000 messages)

But there were about 10 messages  arrived since the backup was made, so
I cut them off the end of the .mix data file and made them into a Unix mailbox by the expedient of
  sed 's/^:msg:.*/From <some plausible string>/'
then checked it with Pine, then did
$ mailtutil append mailbox extra-messages

This pretty much seemed to have fixed things. It is unlikely that the user did a lot of work (deleting, answering) between the backup at 11:45 pm and the power bump at 6am

The broken .mixindex and .mixstatus look to have been the original length, but contained 100% zeroes (ASCII NUL)

For repairing MBX files, I found that if data went missing in the middle of a message, then the pointer list got lost so I had to regenerate it from SMTP message headers (as marking a new message). I would think that still applies to MIX, though perhaps it's not so likely to break.

It would be nice to start from a broken status file to restore message status where it exists, rather than set it all to zero, but you'd still need the option to recreate .mixstatus entirely. Though in that case it may be easier to make a Unix box as I just did and convert it back.


Incidentally, in mixfmt.txt for .mixindex it says
  :      <uid>:<date>:<size>:<hsiz>:<file>:<pos>:  (6 fields)
while in mix.c it defines
uid, date, size, spare.data, special.offset, msg.header.offset, 
msg.header.text.size  (7 fields)
Hmm, in mixfmt it does actually list 7 fields, so isiz is missing from the list and I'm confused about the order.

(in my last problem, with a missing .mixnnnn file, I suspect it was probably there all along but in a different save set due to incremental backup.)


--
Andrew Daviel, TRIUMF, Canada
Tel. +1 (604) 222-7376  (Pacific Time)
[EMAIL PROTECTED]
_______________________________________________
Imap-uw mailing list
[email protected]
https://mailman1.u.washington.edu/mailman/listinfo/imap-uw

Reply via email to