[SyncEvolution] "Comparison was impossible"

Vincent Lambert vincent.lambert9 at free.fr
Sun May 14 19:02:18 UTC 2017


Le 13/05/2017 à 20:56, Patrick Ohly a écrit :
> So the "Chloe" contact was the one you deleted after the
> "refresh-from-remote" sync?
Absolutely!

> I bet it wasn't actually deleted when you marked it as deleted on the
> phone.
>
> Let's verify that hypothesis.
>
> Use "syncevolution --print-items @default contacts". It'll give you an
> ID string for each contact. Then use "syncevolution --export - @default
> contacts <id string of Chloe>" to dump the contact to your console.
>
> Example (for my local setup, with "addressbook" instead of "contacts"):
>
> $ syncevolution --print-items @default addressbook
> pas-id-5406E78700000000: John Doe
>
> $ syncevolution --export - @default addressbook pas-id-5406E78700000000
> BEGIN:VCARD
> VERSION:3.0
> UID:pas-id-5406E78700000000
> PRODID:-//Synthesis AG//NONSGML SyncML Engine V3.4.0.47//EN
> REV:2014-09-03T12:03:08Z(1)
> N:Doe;John;;;
> FN:John Doe
> X-EVOLUTION-FILE-AS:Doe\, John
> END:VCARD
>
> Is there anything in your "Chloe" contact that might mark it as
> "deleted"?
>
> If unsure, then dump it directly after the refresh-from-remote and again
> after deleting it in the UI. If you can still dump it after deleting,
> then it definitely wasn't deleted for real.
>

Okay, let's try that. Firstly, I've created a contact on the server. 
Then on the phone, I use a refresh-from-remote sync and your commands to 
export a contact in the console:

$ syncevolution --export - @default contacts pas-id-5918A52200000119
BEGIN:VCARD
VERSION:3.0
PRODID:-//Synthesis AG//NONSGML SyncML Engine V3.4.0.47//EN
REV:20170514T184149Z
N:AAA;AAA;;;
FN:AAA AAA
X-EVOLUTION-FILE-AS:AAA\, AAA
NICKNAME:AAA
EMAIL;TYPE=WORK:aaa at aaa.aa
X-MOZILLA-HTML:FALSE
UID:pas-id-5918A52200000119
END:VCARD





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
UID:pas-id-5918A52200000119
PRODID:-//Synthesis AG//NONSGML SyncML Engine V3.4.0.47//EN
REV:2017-05-14T18:47:23Z(423)
N:AAA;AAA;;;
FN:AAA AAA
X-EVOLUTION-FILE-AS:AAA\, AAA
NICKNAME:AAA
EMAIL;TYPE=WORK:aaa at aaa.aa
X-MOZILLA-HTML:FALSE
END:VCARD





As you suspected, the delete operation doesn't work properly. 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 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
[...]

By the way I can see a lot of contacts I've deleted from the phone that 
are always on the server and printed by this command.





More information about the SyncEvolution mailing list