Problem rebuilding deleted mailbox directories with reconstruct
rjs3 at andrew.cmu.edu
Thu Aug 28 17:57:52 EDT 2003
On Thu, 28 Aug 2003, Michael Sims wrote:
> Suppose that "/var/spool/imap/f/user/foo/test" was removed. With previous
> versions of Cyrus IMAP I could repair this mailbox by simply recreating the
> directory with the proper ownership and permissions, and then running
> "reconstruct user/foo/test". Reconstruct would rebuild the
> cyrus.(cache|header|index) files and everything would be peachy.
> The version of reconstruct that comes with 2.1.15 gives me the following
> error when I try to do the above:
> user.foo.test: Mailbox has an invalid format
> For kicks (since this particular mailbox was hosed anyway) I tried the
> reconstruct binary from 2.1.14 and it worked.
> Is the new version of reconstruct not able to rebuild the cyrus metadata
> files? Or am I missing something obvious? Any assistance would be very
> much appreciated...
One of the assumptions that reconstruct is making (indeed, made in the
past, except it wasn't treating sub-mailboxes and the first mailbox the
same) is that if the mailbox is in the mailbox list, is has a valid header
file (or, presumably, you can get one from a backup).
The old way often just blew away an existing cyrus.header file, which is
almost always the wrong thing to do.
Obviously this broke the case where the cyrus.header file doesn't exist,
which I'm going to throw into bugzilla.
Rob Siemborski * Andrew Systems Group * Cyert Hall 207 * 412-268-7456
Research Systems Programmer * /usr/contributed Gatekeeper
More information about the Info-cyrus