[SyncEvolution] "Comparison was impossible"

Patrick Ohly patrick.ohly at intel.com
Sun May 14 19:21:23 UTC 2017


On Sun, 2017-05-14 at 21:02 +0200, Vincent Lambert wrote:
> Now, I delete it from the Contacts app and retry:
> 
> $ syncevolution --export - @default contacts pas-id-5918A52200000119
> BEGIN:VCARD
> VERSION:3.0
> X-DELETED-AT:2017-05-14T20:47:23
...
> N:AAA;AAA;;;
> FN:AAA AAA
...
> END:VCARD
> 
> As you suspected, the delete operation doesn't work properly.

I've never seen this X-DELETED-AT before. As you are using an Ubuntu
Phone, with sync and datastore provided by Canonical, I suggest that you
bring this up with them. This looks like an Ubuntu Phone specialty to
me.

> But there 
> is a second problem. Let's try a normal sync, to see what happen next:

> $ syncevolution  owncloud contacts
> [WARNING] owncloud: ignoring username , it is not needed
> [INFO] @default/9frfrenchholiday: inactive
> [INFO] @default/9rd2q8ps5e2r48skvidunfkoms8: inactive
> [INFO] @default/addressbook: inactive
> [INFO] @default/calendar: inactive
> [INFO] @default/memo: inactive
> [INFO] @default/todo: inactive
> [WARNING] owncloud: ignoring username , it is not needed
> [INFO @owncloud] target side of local sync ready
> [INFO @owncloud] @owncloud/addressbook: inactive
> [INFO @owncloud] @owncloud/calendar: inactive
> [INFO @owncloud] @owncloud/memo: inactive
> [INFO @owncloud] @owncloud/todo: inactive
> [INFO @owncloud] @owncloud/contacts: using configured 
> database=[censored]/remote.php/carddav/addressbooks/Vincent/contacts
> [INFO @owncloud] @owncloud/contacts: starting normal sync, two-way (peer 
> is server)
> [INFO] @default/contacts: starting normal sync, two-way (peer is client)
> [INFO] creating complete data backup of datastore contacts before sync 
> (enabled with dumpData and needed for printChanges)
> @default data changes to be applied during synchronization:
> *** @default/contacts ***
> Comparison was impossible.
> 
> [INFO] @default/contacts: started
> [INFO] @default/contacts: sent 1
> [INFO @owncloud] @owncloud/contacts: started
> [INFO @owncloud] @owncloud/contacts: updating "AAA AAA"
> [INFO @owncloud] @owncloud/contacts: received 1/1
> [INFO] @default/contacts: normal sync done successfully
> [INFO @owncloud] @owncloud/contacts: normal sync done successfully
> 
> Synchronization successful.
> 
> Changes applied during synchronization (@owncloud):
> +---------------|-----------------------|-----------------------|-CON-+
> |               |       @owncloud       |       @default        | FLI |
> |        Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |      contacts |  0  |  1  |  0  |  0  |  0  |  0  |  0  |  0  | 0  |
> |      two-way, 0 KB sent by client, 0 KB received                    |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |          start Sun May 14 20:49:51 2017, duration 0:10min           |
> |               synchronization completed successfully                |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> [INFO] creating complete data backup after sync (enabled with dumpData 
> and needed for printChanges)
> 
> Synchronization successful.
> 
> Changes applied during synchronization:
> +---------------|-----------------------|-----------------------|-CON-+
> |               |       @default        |       @owncloud       | FLI |
> |        Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |      contacts |  0  |  0  |  0  |  0  |  0  |  1  |  0  |  0  | 0  |
> |      two-way, 0 KB sent by client, 0 KB received                    |
> |      item(s) in database backup: 141 before sync, 141 after it      |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |          start Sun May 14 20:49:50 2017, duration 0:11min           |
> |               synchronization completed successfully                |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> 
> Data modified @default during synchronization:
> *** @default/contacts ***
> Comparison was impossible.
> 
> 
> 
> 
> 
> Whatever the problem is, the contact has been updated on the server but 
> no information has changed.

I'm not following. What problem?

If this is the first two-way sync after "deleting" the contact via the
phone UI, then the sync above makes perfect sense. The contact has been
modified (by adding the X-DELETED-AT) and that's why it gets sent to the
server, including that extension. But as it is non-standard, the server
doesn't do anything with it.


>  I can see it in another client 
> (Thunderbird). Finally, I try again a refresh-from-remote, that is 
> supposed to completely reset the local problem on the phone, and surprise:
> 
> $ syncevolution --sync refresh-from-remote owncloud contacts
> [WARNING] owncloud: ignoring username , it is not needed
> [INFO] @default/9frfrenchholiday: inactive
> [INFO] @default/9rd2q8ps5e2r48skvidunfkoms8: inactive
> [INFO] @default/addressbook: inactive
> [INFO] @default/calendar: inactive
> [INFO] @default/memo: inactive
> [INFO] @default/todo: inactive
> [WARNING] owncloud: ignoring username , it is not needed
> [INFO @owncloud] target side of local sync ready
> [INFO @owncloud] @owncloud/addressbook: inactive
> [INFO @owncloud] @owncloud/calendar: inactive
> [INFO @owncloud] @owncloud/memo: inactive
> [INFO @owncloud] @owncloud/todo: inactive
> [INFO @owncloud] @owncloud/contacts: using configured 
> database=[censored]/remote.php/carddav/addressbooks/Vincent/contacts
> [INFO @owncloud] @owncloud/contacts: starting first time sync from 
> client (peer is server)
> [INFO @owncloud] @owncloud/contacts: sent 141/141
> [INFO] @default/contacts: starting slow sync from client (peer is client)
> [INFO] creating complete data backup of datastore contacts before sync 
> (enabled with dumpData and needed for printChanges)
> @default data changes to be applied during synchronization:
> *** @default/contacts ***
> Comparison was impossible.
> 
> [INFO] @default/contacts: deleting "AAA AAA"
> [...]
> [INFO] @default/contacts: adding "AAA AAA"
> [...]
> [INFO] @default/contacts: received 141
> [INFO @owncloud] @owncloud/contacts: started
> [INFO] @default/contacts: slow sync done successfully
> [INFO @owncloud] @owncloud/contacts: first time sync done successfully
> 
> Synchronization successful.
> 
> Changes applied during synchronization (@owncloud):
> +---------------|-----------------------|-----------------------|-CON-+
> |               |       @owncloud       |       @default        | FLI |
> |        Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |      contacts |  0  |  0  |  0  |  0  | 141 |  0  |  0  |  0  | 0  |
> |      refresh-from-local, 44 KB sent by client, 0 KB received        |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |          start Sun May 14 20:51:55 2017, duration 0:28min           |
> |               synchronization completed successfully                |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> [INFO] creating complete data backup after sync (enabled with dumpData 
> and needed for printChanges)
> 
> Synchronization successful.
> 
> Changes applied during synchronization:
> +---------------|-----------------------|-----------------------|-CON-+
> |               |       @default        |       @owncloud       | FLI |
> |        Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |      contacts | 141 |  0  | 141 |  0  |  0  |  0  |  0  |  0  | 0  |
> |      refresh-from-remote, 0 KB sent by client, 44 KB received       |
> |      item(s) in database backup: 141 before sync, 141 after it      |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> |          start Sun May 14 20:51:54 2017, duration 0:30min           |
> |               synchronization completed successfully                |
> +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
> 
> Data modified @default during synchronization:
> *** @default/contacts ***
> Comparison was impossible.
> 
> 
> 
> 
> The AAA contact can't be seen in the Contact app at this time! Even if 
> you previous command reveal it in the database:
> $ syncevolution --print-items owncloud contacts
> pas-id-5918A76400000233: AAA AAA
> [...]

So presumably the X-DELETED-AT was preserved on the server (you can
check by dumping it again). The server still shows the contact (because
it doesn't know what that property means), but the phone hides it
(because it knows the property).

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.






More information about the SyncEvolution mailing list