Migration issue with seen/subscription/sieve databases

ellie timoney ellie at fastmail.com
Sun Dec 29 19:51:14 EST 2019


On Fri, Dec 27, 2019, at 11:40 PM, Gionatan Danti wrote:
> Il 27-12-2019 04:07 Scott Lambert ha scritto:
> > Didn't the seen status database get moved from it's own file to the
> > message index database for 3.x?  I'm not running 3.x yet but think I
> > remember seeing something about that.
> 
> Hi, from what I read here [1], and from my experience when testing the 
> migration, the seen database has its own file (userid.seen).

You're both right.  Since 2.4ish (??  MAILBOX_MINOR_VERSION=12, anyway), a user's seen status on their own mailboxes is stored in the mailbox index.  But the separate userid.seen database is still used for storing their seen state on mailboxes that they don't own (but have ACL access to see).

On a system that was set up after that change, I think the userid.seen file will only be created if the user views messages in a mailbox that they don't own.  If no-one has access to view anyone else's mailbox, this will never happen, which might explain why Patrick doesn't have any .seen files.

> A very simple workaround seems to soft-link the dot-enabled files with 
> the circumflex ones, ie: "cd ./domain/a/assyoma.it/user/g/; ln -s 
> g^danti.seen g.danti.seen"

It's probably safer to just rename them -- if nothing else, it'll be less confusing next time you or someone else looks at them.  If you wanted to move cautiously, you could hard link the corrected name, and then unlink the old name later once you're sure everything's working correctly.

> I am tasked to migrate an old cyrus 2.3.x CentOS6 installation to a new 
> CentOS8 server with cyrus 3.0.7.

With your old installation being as old as it is, it may contain data susceptible to https://github.com/cyrusimap/cyrus-imapd/issues/2839 (I have just fixed a typo in the upgrade documentation that linked to the wrong issue number, which will update on the web after the next hour.)  This issue wasn't fixed until 3.0.11, so I would check carefully whether CentOS has backported the patch to their 3.0.7 package.  There have also been security fixes in releases since 3.0.7, so you probably also want to check whether CentOS's 3.0.7 has backported these too.  If the CentOS package hasn't backported these fixes, consider running the current version of Cyrus rather than the one CentOS provides.

Cheers,

ellie


More information about the Info-cyrus mailing list