--On Friday, January 05, 2001 05:03:36 PM +0000 John Holman
<[EMAIL PROTECTED]> wrote:
> In Cyrus 2.0.9 under Solaris 7, running reconstruct on a mailbox that was
> created under 1.64 and not yet accessed under v.2 produces a syslog
> message
>
> Jan 5 16:19:43 upsilon reconstruct[5695]: mailbox 'user.peanut' has old
> cyrus.header
> Jan 5 16:19:43 upsilon reconstruct[5695]: IOERROR: locking cache for
> user.peanut: Bad file number
> Jan 5 16:19:43 upsilon last message repeated 1 time
>
> Truss shows that fcntl is being called (twice) with an fd of -1, e.g.
>
> 5695: fcntl(-1, F_SETLK, 0xFFBE81B8) Err#9 EBADF
>
> This doesn't happen on mailboxes created under v.2, or that have been
> accessed under v.2 (and therefore whose cyrus.header file has already been
> converted to the new format)
If I had to reconstruct mailboxes that haven't yet been upgraded, I might
just deleted the cyrus.* files, unless the flag information is vital. It
is poor that reconstruct doesn't deal with this situation cleanly.
>
> Also when the problem occurs I notice that a new cyrus.header is produced,
> but there is
> no mailbox name at the beginning of the line with the long id-like string,
> e.g.
>
> Cyrus mailbox header
> "The best thing about this system was that it had lots of goals."
> --Jim Morris on Andrew
> 501c5e4d3a4e4a63
>
> peanut lrswipcda
>
> I've noticed that "normal" cyrus.header files are like
>
> Cyrus mailbox header
> "The best thing about this system was that it had lots of goals."
> --Jim Morris on Andrew
> user.johnh 762437913923e7b1
>
> johnh lrswipcda
>
> What is this data, and is the difference significant?
The "user.johnh" on the left of the tab character is the quotaroot to which
this mailbox belongs. If there isn't a string on the left side of the tab,
there's no quotaroot.
If there is a quotaroot, reconstruct should find it and put it in.
Larry