[sync] Nokia Kronolith SyncML problem

Jan Schneider jan at horde.org
Tue Dec 8 17:49:49 UTC 2015


Please keep discussions on the list, and please don't top-post.

Zitat von Daniel Schaller <temp2 at ichbinweg.ch>:

> On 30.11.2015, at 18:13, Jan Schneider wrote:
>
>> Zitat von Daniel Schaller <temp2 at ichbinweg.ch>:
>>
>>> Hello,
>>>
>>> I tried hard but don't get an old N97 Nokia phone properly synced  
>>> with Kronolith through SyncML. My installation is very recent  
>>> (5.2.11 groupware). There are no issues on the protocol level, the  
>>> sync succeeds with no errors it's just that not all entries from  
>>> the phone are in Kronolith afterwards. From the logs I get the  
>>> following:
>>>
>>> DEBUG: HORDE Handling <Add> sent from client
>>> DEBUG: HORDE [kronolith] SQL INSERT INTO kronolith_events
>>>
>>> These two lines occur repeatedly, actually as many times as there  
>>> are calendar entries on the phone. But at one point I see the  
>>> following:
>>>
>>> DEBUG: HORDE Handling <Add> sent from client
>>> DEBUG: HORDE [kronolith] SQL DELETE FROM kronolith_events
>>> DEBUG: HORDE [kronolith] SQL DELETE FROM kronolith_events
>>> DEBUG: HORDE [kronolith] SQL DELETE FROM kronolith_events
>>> DEBUG: HORDE [kronolith] SQL DELETE FROM kronolith_events
>>> .....
>>> DEBUG: HORDE [kronolith] SQL INSERT INTO kronolith_events
>>>
>>> As an <Add> request from SyncML is processed many previously added  
>>> events are deleted before the one to be added is put into the  
>>> database. Anyone any hint on what causes this behavior? To sum up,  
>>> all events to be synced get into the kronolith_events database but  
>>> some of them are removed right away during the sync process.
>>>
>>> Any help is most welcome.
>>>
>>> Daniel
>>> --
>>> sync mailing list
>>> Frequently Asked Questions: http://wiki.horde.org/FAQ
>>> To unsubscribe, mail: sync-unsubscribe at lists.horde.org
>>
>> No idea where those DELETES are coming from, but the only place  
>> where this happens is in Kronolith_Driver_Sql::_deleteEvent(), so  
>> you might want to start the debugging there, so see where the call  
>> originates.
>>
> Hi,
>
> So, I did some digging and traced the DELETEs to be coming from  
> function _process in kronolith/lib/Icalendar/Handler/Base.php (call  
> to function $this->_driver->deleteEvent). It must have to do with  
> recurring events (which I have plenty to sync). Any ideas? Thanks  
> for any support.

What happens there is that exceptions from events are deleted first,  
when importing the base event. The exceptions are later added back.  
This means probably two things in your case:
1) All the events that disappear are actually exceptions from  
recurring events.
2) The event exceptions are not provided with the base exception as  
per the iCalendar standard.

If you enable SyncML logging, the actual data sent from the client  
will be logged and you can verify that this is what happens.

-- 
Jan Schneider
The Horde Project
http://www.horde.org/



More information about the sync mailing list