Summary | Contact deleted from mobile after sync because of a move into a new addressbook |
Queue | Synchronization |
Type | Bug |
State | Duplicate |
Priority | 2. Medium |
Owners | |
Requester | ryu (at) ryux (dot) org |
Created | 08/06/2009 (5813 days ago) |
Due | |
Updated | 08/12/2009 (5807 days ago) |
Assigned | |
Resolved | 08/12/2009 (5807 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
#8487Thanks for comments...
I found the problem !
Real how to reproduce bug :
1. Create a new contact with mobile
2. Sync this contact in Horde (default addressbook A)
sync line created in horde_syncml_map, timestamp = 1249678393
an add line is created in history table for the addressbook A =>
turba:1b6e0d16bbb5eb2216da5d2265e95d0b:20090807225313.19014a63moznjl15@mail-test.exemple.fr, timestamp =
1249678393
3. Move this contact from the addressbook A to addressbook B (the both
are marked as synced in turba options)
add line created in history table for addressbook B =>
turba:localldap:20090807225313.19014a63moznjl15@mail-test.exemple.fr,
timestamp = 1249678421
delete line created in history table for addressbook A =>
turba:1b6e0d16bbb5eb2216da5d2265e95d0b:20090807225313.19014a63moznjl15@mail-test.exemple.fr, timestamp =
1249678421
4. Sync again mobile with horde
the contact is deleted from mobile !!! Expected result => nothing !
It's in indirectly bind to the file :
lib/SyncML/Backend/Horde.php, line 199.
It call the turba method "getActionTimestamp" to get the TimeStamp for
add action.
But if we examine the function Turba api.php
_turba_getActionTimestamp($uid, $action, $sources = null), we see that
as the source parameter is null, it loop on sync books and as soon as
it find an entry in history for this contact, it return it ! But there
is 2 entries for this contact in 2 differents addressbook. And it
return the result for the bad addressbook... So the timestamp is
equals to sync timestamp and it finish by "Added to server from
client: 20090807225313.19014a63moznjl15@mail-test.exemple.fr ignored"
Well, you have surely a best knowledge of Horde / Turba / SyncML so
maybe you can submit a patch for this bug. In all cases, I will try to
resolve it in theses days !
Thanks
Priority ⇒ 2. Medium
Patch ⇒ No
Milestone ⇒
Queue ⇒ Synchronization
Summary ⇒ Contact deleted from mobile after sync because of a move into a new addressbook
Type ⇒ Bug
State ⇒ Unconfirmed
- Create a contact into a synced addressbook
- Sync it with a mobile
- Move this contact into another addressbook which is synced too
Result :
- Contact deleted in mobile
Expected result :
- Contact in mobile and always synced
Work around:
- Delete contact from addressbook 1 and re create it into addressbook
2 to sync it again