Quoting Timo Sirainen <tss@iki.fi>:
On 5.11.2012, at 20.37, Michael J Rubinsky wrote:
On 5.11.2012, at 18.13, Michael J Rubinsky wrote:
I've been seeing the following wonky behavior with Dovecot.
Currently this is with Dovecot 2.0.19, but I was also seeing it
in earlier versions as well, including versions from the 1.x
series. Some background, this is from Horde's ActiveSync
library, when it is trying to determine what UIDs have recently
been expunged. I can guarantee that when this command was sent,
there was only one or two emails that were removed since the
provided MODSEQ value. .. <quote> There's definitely something wonky going on in the code. There's
a certain tipping point of modseqs where the values become
incorrect.I don't think they become incorrect, just that there are more of
them than really necessary? Yes, there's a tipping point. It's
when the modseq no longer exists in the dovecot.index.log* files,
which get rotated once in a while. This shouldn't happen very often.FYI, I see this about once every two weeks, sometimes more
frequently. Is there anything we can do to reduce the chance of
this happening?How do you see it? Does it break something? Why?
You can change it only by increasing the dovecot.index.log sizes,
which requires changing the code.
It breaks ActiveSync synchronization of mailboxes. When this happens,
the sync state of the mailbox needs to be reset, which causes the
entire mailbox to be resynchronized to the mobile device. This can
lead to a not-insignificant amount of wasted bandwidth and battery
power for the device. There have been times when this has happened
multiple times in a single day.
Not resetting the state leads to multiple issues on the device due to
sending it thousands of deletion commands for messages it knows
nothing about.
mike
The Horde Project (www.horde.org) mrubinsk@horde.org