Seen database issue

Simon Matter simon.matter at invoca.ch
Wed Jun 18 11:54:39 EDT 2008


>
> Simon Matter said:
>>>
>>>> Moving the /var/spool/imap directories, and /var/lib/user/{}.seen
>>>> files to the new server and reconstructing works fine except that all
>>>> the
>>>> mail shows up as "not read" on the new sever.
>>>
>>> The seen state is keyed on the mailbox "uniqueid", so if that changes,
>>> the
>>> seen state becomes invalid.
>>>
>>> The mailbox uniqueid is based on the mailbox name + the uidvalidity
>>> value,
>>> which is itself based on the time the mailbox is created, or recreated
>>> due
>>> to a reconstruct.
>>>
>>> Now I thought reconstruct should preserve the mailbox uniqueid in most
>>> cases, but it's possible it's not if you're not copying all the data
>>> correctly.
>>>
>>> 1. Why are you reconstructing the mailboxes. If you copy all the right
>>> data,
>>> it should be fine without a reconstruct
>>> 2. How are you copying the data? Recommend using rsync -az which will
>>> preserve all the attributes + timestamps
>>
>> I recommend adding -H here when using single instance store.
>>
>>> 3. Are you using split data/meta data? If so, are you copying the
>>> metadata
>>> as well?
>>> 4. What flags are you passing to reconstruct?
>>
>> I can only second what Rob says. I have migrated several servers ranging
>> from RedHat 7.2 to RHEL5 and doing constant Cyrus-IMAPd updates on them
>> since the 2.1 days and never lost seen. Looks like copying only part of
>> metadata is going to get you in trouble.
>>
>> A word about database rebuilds the Cyrus-IMAPd starts. There are two
>> things:
>> 1) Skiplist DB's are recovered whenever a DB is opened the first time
>> after Cyrus-IMAPd was started.
>> 2) My RPM's (Invoca) care to convert all DB's to the correct version on
>> startup and also convert all BDB's to Skiplist on shutdown to prevent
>> problems when migrating to a server with other BDB version. You seem to
>> use the cyrus-imapd RPMs shipped with RHEL5 which are based on a old
>> version of  the Invoca RPMs.
>>
>> Simon
>
> Simon, is there a newer RHEL5 rpm available which I can use to upgrade
> from the standard RHEL5 distribution?  Or must I remove and build/install
> from source?

There is no newer version in the standard RHEL5 distribution so you have
to rebuild from the source rpm yourself. The source rpm is here:

http://www.invoca.ch/pub/packages/cyrus-imapd/

We do have binary rpms in our yum repositories for almost all RedHat
distributions for i386 and x86_64 but they are not publicly available.

Simon



More information about the Info-cyrus mailing list