[Tickets #13380] SyncML: calendar does not syn'c anylonger; "{GUID} not found" error

noreply at bugs.horde.org noreply at bugs.horde.org
Sun Jul 20 16:41:02 UTC 2014


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: http://bugs.horde.org/ticket/13380
------------------------------------------------------------------------------
  Ticket             | 13380
  Created By         | cedric.dufour at ced-network.net
  Summary            | SyncML: calendar does not syn'c anylonger; "{GUID} not
                     | found" error
  Queue              | Synchronization
  Version            | Git master
  Type               | Bug
  State              | Unconfirmed
  Priority           | 3. High
  Milestone          |
  Patch              | 1
  Owners             |
------------------------------------------------------------------------------


cedric.dufour at ced-network.net (2014-07-20 16:41) wrote:

Hello,

Since a few daysm SyncML calendar fails entirely with following error message:
"ERR: HORDE API export call for {GUID} failed: {GUID} not found"

Tracking the code path from .../lib/Horde/SyncMl/Sync.php (line 484),  
I believe the culprit is commit  
1ce32155134bdcb36bc1f63f740b881aec2b6819 (Allow filtering by calendars  
in calendars/export; @since 4.2.0) and an inconsitency between  
kronolith code and SyncML code.

*IF* I understand Horde call path correctly and looking at the  
calendar export code in .../kronolith/Api.php (line 884):

     public function export($uid, $contentType, array $options =  
array(), array $calendars = null)

And the corresponding call in .../lib/Horde/SyncMl/Backend/Horde.php  
(line 329):

     return $GLOBALS['registry']->call(
          $this->normalize($databaseURI) . '/export',
          array('guid' => $suid, 'contentType' => $contentType,  
'dummy' => null, 'fields' => $fields));

One can see the 'export' function expects a 'calendars' array as 4th  
argument while the SyncML code sends a 'fields' array. (up until  
commit 1ce32155134bdcb36bc1f63f740b881aec2b6819, the 'fields' argument  
was ignored since the 'export' function took only 3 arguments).

Modifying the SyncML call to:

     return $GLOBALS['registry']->call(
          $this->normalize($databaseURI) . '/export',
          array('guid' => $suid, 'contentType' => $contentType));

Temporarily fixed the problem for me. But I don't trust my  
understanding of the entire kronolith code to be sure this is the  
definite/appropriate fix.

Hope I/you could/can help fix this issue.

Best,

Cédric



cedric.dufour at ced-network.net (2014-07-20 16:41) uploaded:  
horde.kronolith-syncml.patch

http://bugs.horde.org/h/services/download/?app=whups&actionID=download_file&file=horde.kronolith-syncml.patch&ticket=13380&fn=%2Fhorde.kronolith-syncml.patch





More information about the bugs mailing list