[Dovecot] Issues with VANISHED CHANGEDSINCE
Michael J Rubinsky
mrubinsk at horde.org
Tue Nov 6 16:23:10 EET 2012
Quoting Robert Schetterer <rs at sys4.de>:
> Am 06.11.2012 13:17, schrieb Timo Sirainen:
>> the only problem is activesync implementation using it
>
> Hi, Michael,
> as i am going to implement horde 5 active sync server in near Future
> with dovecot , i followed this in high interest
>
> I know horde active sync server is different to z-push
> so sorry my question, i recent use z-push with dovecot and never noticed
> any problems with it, so how does z-push handle this "problem" comparing
> horde, any chance to workaround it in horde code ?
ZPush's default "imap backend" implementation uses PHP's imap
implementation, which has _many_ problems. Horde's uses
Horde_Imap_Client a PHP native implementation with tons of
improvements over just about any other available IMAP client
implementation in PHP.
The problem I'm describing stems from our ActiveSync code trying to
take advantage of IMAP extensions such as QRESYNC, where the server
can track and report things like expunged messages, flag changes
etc... since a known point without us having to cache and track every
bit of information about the device's state. This is what ZPush does,
it uses plaintext files on the server and writes out all the message
ids and flag states that were sent to each device. Then during every
sync, it retrieves the complete list of message ids and flag state
from the IMAP server again and compares them against the data in the
text file to determine the deltas.
There is already a work around for this in place - if we detect a UID
being returned from one of these VANISHED responses that is older than
the oldest known UID we know was sent to the device then we reset the
device's mailbox state, causing the mailbox to resync.
We already track the UIDs of all email sent to the device in our state
tables when using a server that does not support QRESYNC, I plan on
extending/improving this and getting rid of the current use VANISHED
data completely.
For further information about our code vs ZPush you can read a basic
overview on our wiki page http://wiki.horde.org/ActiveSync. I'm in the
process of a more detailed feature comparison grid, but it's far from
ready.
Please move any further discussion specific to Horde's ActiveSync code
to the dev at lists.horde.org mailing list.
> Hacking dovecot might be complex, as it should fit in so many stuff and
> setups
I would never suggest people should hack server code to get other code
to work :)
> Anyway i agree many people using active sync in their smartphone these
> days and new outlook will also have a active sync mode, so there
> shouldnt stay any fixable problems ( where ever they may be ), but in my
> understanding the imap server ( dovecot ) acts more like a backhand here
> did you test against recent versions of cyrus etc, how is their behave
> in this case?
I have not personally tested against cyrus, but I know some of our
other devs use cyrus with the ActiveSync code base.
--
mike
The Horde Project (www.horde.org)
mrubinsk at horde.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 6062 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://dovecot.org/pipermail/dovecot/attachments/20121106/f2affb1e/attachment-0004.bin>
More information about the dovecot
mailing list