[Tickets #12605] Re: AS: Fix loss of PINGABLE flag
noreply at bugs.horde.org
noreply at bugs.horde.org
Tue Aug 27 23:02:28 UTC 2013
DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.
Ticket URL: http://bugs.horde.org/ticket/12605
------------------------------------------------------------------------------
Ticket | 12605
Updated By | Michael Rubinsky <mrubinsk at horde.org>
Summary | AS: Fix loss of PINGABLE flag
Queue | Synchronization
Version | Git master
Type | Bug
State | Feedback
Priority | 2. Medium
Milestone |
Patch | 1
Owners | Michael Rubinsky
------------------------------------------------------------------------------
Michael Rubinsky <mrubinsk at horde.org> (2013-08-27 23:02) wrote:
> When the ping is processed we don't have the folder in the sync cache yet.
> We added the collection in memory to "this->_collections" but it's not
> part of the collection we get from the syncCache.
Heh. Of course, now that you mention it, that seems completely
obvious. If the collection was never synchronized, of course it won't
be in the syncCache (unless the PING request was issued immediately
after the first, syncKey == 0, SYNC for the collection.
OTOH, it looks like the part that was wrong then was faking the
detected changes to force the SYNC, since that is essentially the only
difference in the code path (the collection is still not marked as
PINGABLE). So, iOS is doing the Wrong Thing (tm) in PINGING the
collection, but doing the Right Thing (tm) by not expecting the
server to do anything with the request. I guess it wouldn't hurt to
explicitly iterate $this->_collections and look for empty synckeys as
a separate step. There shouldn't be that many of them to cause any
extra overhead.
> Later on everything is fine, the device sends a Sync
> for the folder and another Ping request. Wild guess:
> Through the modified behavior (we don't tell the client there are changes),
> the device is behaving "correctly" now.
So, from your point of view, the ticket is resolved?
More information about the bugs
mailing list