Cyrus.index problem
ZABLOCKI, T (T)
zablocki at alcatel-lucent.com
Thu Dec 18 09:45:51 EST 2008
Guys,
What I found in index.c:
static int index_storeflag(struct mailbox *mailbox,
unsigned msgno, void *rock)
That check is made on particular mailbox:
/* Check the modseq against unchangedsince */
if (MODSEQ(msgno) > storeargs->unchangedsince) return 0;
It blocks update of flags.
But why is that check here unconditional, I may do not have mod sequences enabled on my mailbox. Shouldn't it be:
if (mailbox->options & OPT_IMAP_CONDSTORE) {
if (MODSEQ(msgno) > storeargs->unchangedsince) return 0;
}
??
* OK [CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ID AUTH=ANONYMOUS SASL-IR] ms14 Cyrus IMAP4 v2.3.7 server ready
1 login 17431341000 1234
1 OK [CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ID LOGINDISABLED ACL RIGHTS=kxte QUOTA MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME UNSELECT CHILDREN MULTIAPPEND BINARY SORT SORT=MODSEQ THREAD=ORDEREDSUBJECT THREAD=REFERENCES ANNOTATEMORE CATENATE CONDSTORE IDLE URLAUTH] User logged in
2 select inbox
* FLAGS (\Answered \Flagged \Draft \Deleted \Seen New QMboxSize QMsgCount SenderOffComplex Voice TUISkipped SenderOnComplex Accessed Expired AnyPathSeen)
* OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted New QMboxSize QMsgCount SenderOffComplex Voice TUISkipped SenderOnComplex Accessed Expired AnyPathSeen \*)]
* 4 EXISTS
* 4 RECENT
* OK [UNSEEN 1]
* OK [UIDVALIDITY 1185655835]
* OK [UIDNEXT 664]
* OK [NOMODSEQ] Sorry, modsequences have not been enabled on this mailbox
I found some mailboxes which doesn't have modsequences but it has MODSEQ>unchangedsince and that check block update of any flag in that mailbox.
Do you have an idea why I am having such sitiuation?
BTW: I use cyrus 2.3.7 but this check is unconditional also in 2.3.13.
Regards,
Tomasz
More information about the Cyrus-devel
mailing list