[Tickets #12605] Re: AS: Fix loss of PINGABLE flag

noreply at bugs.horde.org noreply at bugs.horde.org
Fri Aug 23 14:14: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         | Thomas Jarosch <thomas.jarosch at intra2net.com>
  Summary            | AS: Fix loss of PINGABLE flag
  Queue              | Synchronization
  Version            | Git master
  Type               | Bug
-State              | Feedback
+State              | Assigned
  Priority           | 2. Medium
  Milestone          |
  Patch              | 1
  Owners             | Michael Rubinsky
------------------------------------------------------------------------------


Thomas Jarosch <thomas.jarosch at intra2net.com> (2013-08-23 14:14) wrote:

Turns out $this->_collections was more or less ok.

I just did the following:
- Re-create the account on the PIM
- Subscribed (=ping) a folder I didn't sync in yet.

    The code path that handles a "<Ping>" with a folder list
    first adds the folder via addCollection() so we have a sync key for sure.

    Later in that code path we call updatePingableFlag().
    In fact that's the only place we call updatePingableFlag() at all.

    -> the newly subscribed folder was flagged as NOT PINGABLE.

Since collections::addCollection() does not update the collection in  
the SyncCache,
updatePingable() flag relied on the side effect of using
the $this->_collections array directly while working on the cache. Nasty.

There's more: If a collection gets reset because the sync key does not  
match anymore
and the PIM sends a <Ping> without a folder list, we will not set the  
PINGABLE flag again.


-> IMHO we should run collections->updatePingable() on every PING request
right before the "// Start waiting for changes" line. Also updatePingable()
should modify the cache _and_ the current object.





More information about the bugs mailing list