mobile sync doesn't sync bookmarks

RESOLVED INACTIVE

Status

()

defect
RESOLVED INACTIVE
3 years ago
Last year

People

(Reporter: tortino, Unassigned)

Tracking

Firefox 53
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0
Build ID: 20170201004003

Steps to reproduce:

I'm using firefox developer 53a2 on two android devices and 2 window10 pcs.
On desktop I have about 12000 bookmarks, that syncs correctly between the desktop pcs only. 
On android I tap to sync the bookmarks and history: after a while firefox says "synchronized" but the bookmarks are not synchronized! The history seems to work thought.


Actual results:

the mobile bookmarks sync on android doesn't work at all! maybe because I have many bookmarks, but I expect it to work correctly even in this case (Chrome does).
Also no warning of the error was showed!


Expected results:

I want to sync the bookmarks on android. I want to see on android the desktop bookmarks and to see on desktop the mobile bookmarks.
The latest android devices are quite powerful and are definitely able to handle 12000 bookmarks easily.
Plese note that Google Chrome can sync these same 12000 bookmarks between android and multiple desktop pc without problems.
In case of sync errors the user should be warned, and not fail silently (very bad usability)
Version: 54 Branch → 53 Branch
Hi, and thanks for filing!

This is a known issue. Currently, Firefox for Android will not sync your bookmarks if you have more than 5000 of bookmark records (folders, separators, etc count as records as well). This is currently being done to prevent data corruption while syncing.

However, the good news is: there's work ongoing in Bug 1291821 to fix underlying issues and remove this limitation. This work should make an appearance in Nightly very soon, so keep an eye out on that bug and consider helping us test these improvements - with the standard warnings of "use at your own risk", and "your data might get corrupted if we screw up" ;-)
thanks for the info. I'll follow developments of 1291821 and will help testing!
thank you.
Hello,
I have tried again syncing, since 1291821 is now fixed, and got mixed results.
I tried syncing from a desktop pc to two android devices. The pc has more than 10000 bookmarks.
The android devices downloaded all the 10000 bookmarks on first sync (took a long time)
On subsequent sync they didn't download bookmarks anymore (from pc)
But the bookmarks added to the android devices are correctly synced to the pc.
Also the sync is quite slow on all devices (compared to google chrome)
Thanks.
forgot to mention: tests done on nightly 54.0a1 (2017-03-06) (32 bit)
pc: windows 10 x64, android nexus 7 and samsung sm-t560
Component: General → Android Sync
Product: Firefox for Android → Android Background Services
Version: 53 Branch → Firefox 53
Hello,
I'm continuing my tests on bookmarks sync on Nightly 55.
I'd like to see the Android sync log, but the page "about:sync-log" is missing.
How can I see the sync log on Fennec?
Thanks.
(In reply to Tortino from comment #5)
> Hello,
> I'm continuing my tests on bookmarks sync on Nightly 55.
> I'd like to see the Android sync log, but the page "about:sync-log" is
> missing.
> How can I see the sync log on Fennec?
> Thanks.

Hi!  Thanks for testing Android Sync.  Fennec doesn't support about:sync-log; we have a totally different mechanism for logging (in general) based on |adb logcat|.  That's part of the Android SDK; the link I used to reference is very old: http://160.twinql.com/how-to-file-a-good-android-sync-bug/, although I also see https://developer.mozilla.org/en-US/docs/Mozilla/QA/Fennec_Android:_Logging_with_the_Android_Debug_and_Logcat.  Start with taht.

There's also a Log Viewer add-on that is probably better: https://addons.mozilla.org/en-US/android/addon/logview/

Hope that helps!
Hello,
thanks for the info. I just installed the LogView addon, but it doesn't work on nightly 55 (I was expecting it)
I think it's a bug of v55, and not of this particular extension, because I've also installed QuitNow and uBlockOrigin, and they both don't work (as an example choosing Quit menu item doesn't quit the browser, but in previous versions it did work correctly). I'll have to wait for a fix on nightly.

Btw, I confirm that it's still not fixed the bug about not downloading any bookmark from Firefox Desktop after the initial big sync of 10000+ entries (from Fennec to Desktop works).

Thanks.
Hi, new feedback: sync on android is unable to completely delete folders.
Scenario:
1) start with 10000+ bookmarks, synced on firefox desktop and an android device
2) on firefox desktop delete a folder containing many subfolders and bookmarks
3) wait for sync to complete
4) pair a new android device, and sync completely: the folder just deleted from desktop is not present (so sync from firefox desktop to server db seems to be working correctly).
5) on an already paired firefox android start a sync (the folder to be deleted is already present on android, and should be deleted completely)
6) after the sync completes the folder to be deleted on android is not completely deleted.
most of the nested bookmarks and folders are deleted, but not all of them: there are some emtpy folders, and some other folders with one to six bookmarks still present. all these folders should have been completely deleted.
7) after a new sync on firefox desktop the not-completely-deleted-folder is synced back from android to desktop!
Need info for investigation.
Flags: needinfo?(gkruglov)
Are add-ons working again for you? On the 2017-03-22 Nightly and also a similarly recent local build the Log View add-on is working fine for me.
yes, now addons are working, althought I have issues using logview: sometimes after scrolling up for a while to see older logs I get empty content: up to a certain point I see the log, then there's like a line and everything above that line is empty. I can scroll down to see the newer log again. I removed logview and now I'm using an android app to see the log (LogCat Extreme)
About sync not working correctly: I don't see errors in the android log, but I keep getting unconsistent results, like folder or bookmarks not completely deleted, or random reordering issues.
I have also a question: to verify that all bookmarks are correctly synced I can export to html (on desktop firefox), and then compare the files, but on android I don't think it's possible. how can I check more than 10000+ bookmarks and about 800 nested folders?
thanks.
(In reply to Tortino from comment #12)
> I have also a question: to verify that all bookmarks are correctly synced I
> can export to html (on desktop firefox), and then compare the files, but on
> android I don't think it's possible. how can I check more than 10000+
> bookmarks and about 800 nested folders?
> thanks.

Sorry, we don't have a solution for you.  Adding an export feature is tracked by https://bugzilla.mozilla.org/show_bug.cgi?id=775104, but it has stalled out many times.

grisha: as part of the Bookmarks UI work, it might be worth pushing Bug 775104 across the line -- it'll certainly help when testing and verifying.
I think there is still a block on android about syncing more than 5000 bookmarks.
From my tests I can update (ie rename) a bookmark on desktop, and have the change replicated onto android,
but creating new bookmarks, or deleting existing ones is not synced onto android.
I'm also testing using folders in mobile bookmarks (created from desktop) and synced, and also in this case
new bookmarks are not created, while existing one can be moved into folders.
(In reply to Tortino from comment #14)
> I think there is still a block on android about syncing more than 5000
> bookmarks.
> From my tests I can update (ie rename) a bookmark on desktop, and have the
> change replicated onto android,
> but creating new bookmarks, or deleting existing ones is not synced onto
> android.
> I'm also testing using folders in mobile bookmarks (created from desktop)
> and synced, and also in this case
> new bookmarks are not created, while existing one can be moved into folders.

|adb logcat| logs (using logview) will really help here.  I wonder if you're seeing some memory consumption spike as we process your very large bookmark tree, which just kills Sync entirely until the next time when we eat your memory and fail again?  Logs would say.

By default, the Gecko log tags for FxA and Sync are "FxAccounts" and "FxSync" respectively.  At INFO level and higher (WARN, ...) no personally identifiable information should be output to the log, so you should be safe to attach logs to this ticket.  (Do have a scan though -- Android itself logs a huge amount about your device, and we might make a mistake and let a title or URL slip through.  Bug reports appreciated!)
Bug 1349450 describes similar symptoms.
See Also: → 1349450
Hello Nick, Thanks for the reply!
I verified that there are no errors during sync in the logcat. 
I'm sure that the culprit is the limit about 5000 bookmarks in the code that blocks the sync.
I keep hearing that the block is going away but it's still present (see comment 1 in this bug)
finally fennec got synced the bookmarks from firefox desktop!
it seems that there are still some issues:
1) wrong order of the bookmarks (sort on desktop is not replicated on fennec)
2) bookmarks on fennec are not deleted when are deleted on desktop
I'll do some more testing.
thanks.
Thank you for continuing to test! It's very much appreciated.

(In reply to Tortino from comment #17)
> I'm sure that the culprit is the limit about 5000 bookmarks in the code that blocks the sync.
> I keep hearing that the block is going away but it's still present (see comment 1 in this bug)

The limit has been lifted in 54 - I think you're testing in the nightlies, right? So if you're seeing problems, it's definitely not the limit, but something else is in play.

> finally fennec got synced the bookmarks from firefox desktop!
> it seems that there are still some issues:
> 1) wrong order of the bookmarks (sort on desktop is not replicated on fennec)
> 2) bookmarks on fennec are not deleted when are deleted on desktop
> I'll do some more testing.
> thanks.

54 introduced a regression around syncing desktop -> android, see Bug 1350442. I think that _might_ explain some of the issues you're seeing around bookmarks not appearing on Android. A fix should be in a nightly soon.

Also on file are a variety of bookmark reordering bugs - see Bug 1352549, Bug 1352947, Bug 769476, etc...
Flags: needinfo?(gkruglov)
ok, I was wrong, and now *mobile* bookmarks are synced from firefox to fennec.

but the firefox *desktop* bookmarks still have issues: 
1) new bookmarks added on firefox are not replicated to fennec
2) old bookmarks deleted in firefox are not removed in fennec

but bookmarks deleted in fennec are also correctly deleted in firefox.
Hello, during my tests I have noticed some warnings in the logcat, like these:

04-06 22:25:32.918  5692  5778 W GeckoLinker: /data/app/org.mozilla.fennec-1.apk!/assets/armeabi-v7a/libnssckbi.so: unhandled flags #8 not handled

04-06 22:25:32.918  5692  5778 W GeckoLinker: /data/app/org.mozilla.fennec-1.apk!/assets/armeabi-v7a/libnssckbi.so: Relocation to NULL @0x00064f78

04-06 22:25:32.918  5692  5778 W GeckoLinker: /data/app/org.mozilla.fennec-1.apk!/assets/armeabi-v7a/libnssckbi.so: Relocation to NULL @0x00064ffc for symbol "__cxa_type_match"

04-06 22:25:32.928   821   871 I ActivityManager: Displayed org.mozilla.fennec/org.mozilla.gecko.BrowserApp: +1s621ms (total +5s754ms)

04-06 22:25:32.928   821   871 I Timeline: Timeline: Activity_windows_visible id: ActivityRecord{4314a9c8 u0 org.mozilla.fennec/org.mozilla.gecko.BrowserApp t433} time:56177772

04-06 22:25:33.638  5692  5778 W GeckoConsole: [JavaScript Warning: "Use of nsIDOMWindowInternal is deprecated. Use nsIDOMWindow instead." {file: "resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///data/data/org.mozilla.fennec/files/mozilla/kzg03rsx.default/extensions/QuitNow@TWiGSoftware.com.xpi!/bootstrap.js" line: 67}]

are they related to the sync process?
(In reply to Tortino from comment #21)
> Hello, during my tests I have noticed some warnings in the logcat, like
> these:

<snip>

> are they related to the sync process?

No.

> 
> 04-06 22:25:32.918  5692  5778 W GeckoLinker:
> /data/app/org.mozilla.fennec-1.apk!/assets/armeabi-v7a/libnssckbi.so:
> unhandled flags #8 not handled
> 
> 04-06 22:25:32.918  5692  5778 W GeckoLinker:
> /data/app/org.mozilla.fennec-1.apk!/assets/armeabi-v7a/libnssckbi.so:
> Relocation to NULL @0x00064f78
> 
> 04-06 22:25:32.918  5692  5778 W GeckoLinker:
> /data/app/org.mozilla.fennec-1.apk!/assets/armeabi-v7a/libnssckbi.so:
> Relocation to NULL @0x00064ffc for symbol "__cxa_type_match"

These are just notes from the linker; perfectly normal.

> 04-06 22:25:32.928   821   871 I ActivityManager: Displayed
> org.mozilla.fennec/org.mozilla.gecko.BrowserApp: +1s621ms (total +5s754ms)
>
> 04-06 22:25:32.928   821   871 I Timeline: Timeline:
> Activity_windows_visible id: ActivityRecord{4314a9c8 u0
> org.mozilla.fennec/org.mozilla.gecko.BrowserApp t433} time:56177772


This is Android telling you how long your first paint took.
 
> 04-06 22:25:33.638  5692  5778 W GeckoConsole: [JavaScript Warning: "Use of
> nsIDOMWindowInternal is deprecated. Use nsIDOMWindow instead." {file:
> "resource://gre/modules/addons/XPIProvider.jsm ->
> jar:file:///data/data/org.mozilla.fennec/files/mozilla/kzg03rsx.default/
> extensions/QuitNow@TWiGSoftware.com.xpi!/bootstrap.js" line: 67}]

This is a non-fatal error in an addon you use.  In general, you'd look for logtag GeckoLogging and/or FxAccounts, IIRC.
Hello,
thank you fot the explanation of logcat.
I have another question: on fennec I noticed a "strange" behaviour of the "synchronizing..." label (in italian is "sincronizzazione...").
It seems to be in the sync state even when the sync is concluded. Maybe it's not so, but it seems.
Example:
1. open the sync panel. you see somthing like "last sync: 4 hours"
2. start the sync
3. wait...
4. at some point you still get the label "synchronizing..." but now the "last sync" is updated, like zero or 2 minutes
5. I cannot understand if sync is still going on or not
6. waiting again eventually you get the "synchronized" label, so the sync should really be done
Thanks.
Flags: needinfo?(gkruglov)
Hello,
I got an error on first sync on desktop (created new profile completely from scartch, using latest nigthly x64 for windows):
Is this an issue?
(After first sync the subsequent sync completed successfully).

<cut>
1492061971122	BookmarkSyncUtils	DEBUG	insertSyncBookmark: Item sS_CKN_qwEhl is not an orphan
1492061971135	Sync.Store.Bookmarks	DEBUG	Created separator sS_CKN_qwEhl under menu: {"kind":"separator","syncId":"sS_CKN_qwEhl","parentSyncId":"menu","dateAdded":1487363118844,"tags":[]}
1492061971206	Sync.Engine.Bookmarks	INFO	Records: 10526 applied, 10526 successfully, 0 failed to apply, 0 newly failed to apply, 54 reconciled.
1492061971207	Sync.Telemetry	TRACE	observed weave:engine:sync:applied bookmarks
1492061999702	Sync.Engine.Bookmarks	INFO	Posting 33 records of 16223 bytes with batch=true
1492061999703	Sync.BrowserIDManager	DEBUG	_ensureValidToken already has one
1492061999705	Sync.Collection	DEBUG	POST Length: 16223
1492062001034	Sync.Collection	DEBUG	mesg: POST fail 412 https://sync-438-us-west-2.sync.services.mozilla.com/1.5/63338073/storage/bookmarks?batch=true&commit=true
1492062001034	Sync.Collection	DEBUG	POST fail 412 https://sync-438-us-west-2.sync.services.mozilla.com/1.5/63338073/storage/bookmarks?batch=true&commit=true
1492062001034	Sync.Collection	WARN	POST request to https://sync-438-us-west-2.sync.services.mozilla.com/1.5/63338073/storage/bookmarks?batch=true&commit=true failed with status 412
1492062001034	Sync.Engine.Bookmarks	DEBUG	Uploading records failed: 0
1492062001043	BookmarkSyncUtils	DEBUG	pushChanges: Processed change records: {"skipped":33,"updated":0,"tombstones":0}
1492062001045	Sync.Status	DEBUG	Status for engine bookmarks: error.engine.reason.batch_interrupted
1492062001045	Sync.Status	DEBUG	Status.service: success.status_ok => error.sync.failed_partial
1492062001045	Sync.ErrorHandler	DEBUG	bookmarks failed: 0
1492062001046	Sync.Telemetry	TRACE	observed weave:engine:sync:error bookmarks
1492062001047	Sync.Telemetry	TRACE	observed weave:engine:sync:start addons
1492062001047	Sync.Engine.Addons	DEBUG	Refreshing reconciler state
1492062001047	Sync.AddonsReconciler	INFO	Refreshing global state from AddonManager.
<cut>
When a sync client uploads data, it sends along a timestamp indicating what it thinks is the last time the data set has been modified on a server.

The error you're seeing is essentially the server telling your client that "you believe bookmarks were last modified at X, but that's not the case". Which normally indicates that you had another client also uploading bookmarks data. If that's the case, this is just regular flow of events.

Can you confirm that you had another device also connected? You do say that this was your first time syncing against a newly created account, so I'm guessing the answer is no.

If this was the only client accessing the account, and indeed the very first sync, perhaps desktop is using wrong X-If-Unmodified-Since timestamp in the batching uploader on first sync, and recovers on subsequent syncs.
Flags: needinfo?(tortino)
Hello,
I'm not sure but maybe there was another Firefox (with an older profile) running on a different PC at the same time.
(sorry but I didn't pay attention)
Flags: needinfo?(tortino)
Hello,
looking at the desktop logs in about:sync-log I noticed that almost all logs are quite little (16 KB, 20 KB, 40 KB) but sometimes there is a big log, like 2 MB, or almost 4 MB... it seems that sometimes the sync engine decides to resync all bookmarks, not just what is changed from last sync. on a metered data plan this process consumes MB... not good. Is this done by design or is it a bug?
Thanks.
(In reply to Tortino from comment #27)
> like 2 MB, or almost 4 MB... it seems that sometimes the sync engine decides
> to resync all bookmarks, not just what is changed from last sync. on a
> metered data plan this process consumes MB... not good. Is this done by
> design or is it a bug?

This can happen if there are problems with one of the servers, and very very occasionally we may do it for operational reasons. It will also happen if you reset your password or restore bookmarks. However, without seeing the specific logs it's difficult to speculate what you are seeing.
Hello,
I didn't reset password. I don't know what "restore bookmarks" exactly means, but I think I didn't do it :-)
I have sometimes changed the name of some firefox/fennec sync clients, using the manage account web page.
also I'm using nightly, so maybe sometimes the "full sync" is triggered after updating firefox? 
(it doesn't seems so to me, but I could be wrong).
Another sort problem. steps:

1) on firefox desktop create bookmarks and folders like this (mobile folder!)

F1 (mobile folder)
-F2 (a subfolder of F1)
-F3 (another subfolder, sibling of F2)
-B1 (a bookmark in F1)
-B2 (another bookmakr in F1)

and then sync.

2) on android fennec sync, then add a new bookmark B3. 
it is added to the top of mobile folder (excluding folders) like this:

F1
-F2
-F3
B3
B1
B2

and then sync.

3) sync on desktop and you get a different order:

F1
-B3
-F2
-F3
-B1
-B2

B3 is before the subfolders F2 and F3, unlike on android, which is after folders, but before old bookmarks.

I think the bookmarks and folders order should be consistent between desktop and android (just choose one ordering rule).
(personally I expected to see B3 after B2, ie it is added to the bottom of the parent folder F1)
Analyzing my sync error logs I found error like these:

1492596374394	Sync.Engine.Extension-Storage	ERROR	Syncing zoompage-we@DW-dev: request failed: Error: HTTP 401 Unauthorized: Missing Authorization Token (Please authenticate yourself to use this endpoint.) (resource://services-common/kinto-http-client.js:1965:25) JS Stack trace: [13]</request/</<@kinto-http-client.js:1965:25 < waitForSyncCallback@async.js:98:7 < makeSpinningCallback/callback.wait@async.js:168:27 < promiseSpinningly@async.js:234:12 < _sync@extension-storage.js:44:12 < WrappedNotify@util.js:163:21 < sync@engines.js:720:5 < _syncEngine@enginesync.js:222:7 < sync@enginesync.js:169:15 < onNotify@service.js:1073:7 < WrappedNotify@util.js:163:21 < WrappedLock@util.js:119:16 < _lockedSync@service.js:1063:12 < sync/<@service.js:1055:7 < WrappedCatch@util.js:94:16 < sync@service.js:1044:5

1492596374633	Sync.Engine.Extension-Storage	ERROR	Syncing fastimageresearch@usacyborg.com: request failed: Error: HTTP 401 Unauthorized: Missing Authorization Token (Please authenticate yourself to use this endpoint.) (resource://services-common/kinto-http-client.js:1965:25) JS Stack trace: [13]</request/</<@kinto-http-client.js:1965:25 < waitForSyncCallback@async.js:98:7 < makeSpinningCallback/callback.wait@async.js:168:27 < promiseSpinningly@async.js:234:12 < _sync@extension-storage.js:44:12 < WrappedNotify@util.js:163:21 < sync@engines.js:720:5 < _syncEngine@enginesync.js:222:7 < sync@enginesync.js:169:15 < onNotify@service.js:1073:7 < WrappedNotify@util.js:163:21 < WrappedLock@util.js:119:16 < _lockedSync@service.js:1063:12 < sync/<@service.js:1055:7 < WrappedCatch@util.js:94:16 < sync@service.js:1044:5

To me these errors seem about two extensions trying to synchronize their data/config between different sync clients.
Is this a real issue? (I'm asking because subsequent sync logs are "successful" but I'm not sure that the two extensions are working properly)
(In reply to Tortino from comment #31)
> Analyzing my sync error logs I found error like these:

Without more context it's difficult to know, but if you have concerns, please open a new bug for that issue - this is about bookmarks.  (The new bug should probably be in the "WebExtensions: General" component)
you're right, this is not the appropriate place. I'll file a new bug report.
thanks.
perhaps my report in comment 30 is this bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=1352549
Hi, 
I'm continuing testing the sync process on nightly. 
Some weeks ago I got a strange result:

1) started firefox with a new profile
2) configured sync (the sync server stored 7000+ bookmarks)
3) during initial sync a folder in the bookmarks toolbar got deleted for some reason
4) all bookmarks from that folder were moved into "other bookmarks" (unsorted)

Then this "delete operation" was propagated to to other PC and Android devices.
This happened on a older firefox build (I believe two weeks) so maybe it's already fixed.
(I'm not able to reproduce it in any way)

Ignoring the fact that the folder was deleted without reason I believe that the bookmarks
contained into that folder should have been deleted too, not moved into "other bookmarks".
Hi,
another issue: older "set" of bookmarks from one device overwrote newer set on the server.

what I've done:
1) to test it's needed a pc with firefox and an android with fennec (probably other combinations works too) pc build is 2017-05-11 and android build was 2017-04-29
2) both devices are configured properly to sync.
3) on pc I make modifications to the bookmarks (add some bookmarks, rename some folders)
4) I start android device, with the older set of bookmars synced on 29 april (without changes from step 3)
5) to test sync process with latest version of fennec I have this "smart" idea: turn off sync of bookmarks and then update.
6) so I start fennec (build from 29 april) and open the sync preferences
7) before the sync starts I turn off syncing of bookmarks, while leaving on other syncs items (passwords, etc..)
8) I check for fennec updates, then download and install build of 11 may
9) I reanable bookmarks sync in preferences and start sync process (to get the new set of bookmarks)
10) instead of getting the new bookmarks fennec uploaded to sync server the *older* set of bookmarks (the one on the android device)
11) then firefox on pc is synced: all its new bookmarks are deleted, and replaced with older set from android!

to me it seems that enabling bookmarks sync on a device means that its bookmarks will overwrite what is stored on sync server, even if the bookmarks stored on server were added at a later date.
Hello again.
after further testing I have found that:
1) the older set is not overwritten, but it is done a merge of the bookmarks sets: the new added bookmarks are present after the sync fomr android
2) I have really lost the name change of the folders: in the new merged set are present the *older* folder names
There are a few known issues with Android and bookmarks, most of which are being tracked in bug 769476, bug 1352549, bug 1352947, bug 1352931 and bug 1343365. I suspect most issues listed here are dupes of one or many of them. But to clarify:

(In reply to Tortino from comment #36)
> 5) to test sync process with latest version of fennec I have this "smart"
> idea: turn off sync of bookmarks and then update.
> 6) so I start fennec (build from 29 april) and open the sync preferences
> 7) before the sync starts I turn off syncing of bookmarks, while leaving on
> other syncs items (passwords, etc..)
> 8) I check for fennec updates, then download and install build of 11 may
> 9) I reanable bookmarks sync in preferences and start sync process (to get
> the new set of bookmarks)
> 10) instead of getting the new bookmarks fennec uploaded to sync server the
> *older* set of bookmarks (the one on the android device)

This is expected - turning of bookmark syncing on one devices means it will be turned of on all devices, and the server copy of the bookmarks will be deleted. It's not possible to have particular sync engines enabled on some devices but not others.

So when you re-enabled sync on Android, it found the server had no bookmarks, so uploaded all the ones it had.

> 11) then firefox on pc is synced: all its new bookmarks are deleted, and
> replaced with older set from android!

That sounds wrong though - what should have happened is that the set of bookmarks should have been merged - you should have ended up with both old and new.

> to me it seems that enabling bookmarks sync on a device means that its
> bookmarks will overwrite what is stored on sync server, even if the
> bookmarks stored on server were added at a later date.

As above, when you enable bookmarks on a device, the server will be empty.
(In reply to Mark Hammond [:markh] from comment #38)

Hello Mark,
thanks for your explanations. I have one more question:

> 
> That sounds wrong though - what should have happened is that the set of
> bookmarks should have been merged - you should have ended up with both old
> and new.

yes, after some more checking I found that it was a merge (see my comment 37)
but the merge was about bookmarks. As I said I lost the name changes to the folders 
(I lost only the rename, not the folder and the contained bookmarks)
I think it could be a bug: the rename operation on the folders was the most recent,
so I expected it to be preserved. 
Does the sync engine use timestamps to resolve the conflicts?

Thanks.
Hi,
just did another full sync on desktop (by deleting mozilla profile) and I got first an error, and then a success in the next sync.
The log is big (7 MB) so I only report here what seems relevant to me. In the log I found:

1495031598468	Sync.Engine.Bookmarks	DEBUG	IBg4Gd3wTooN mapped to djEkzdGOSv57
1495031598476	Sync.Engine.Bookmarks	WARN	Failed to reconcile incoming record IBg4Gd3wTooN: Error: Local item djEkzdGOSv57 does not exist (resource://gre/modules/PlacesSyncUtils.jsm:1777:11) JS Stack trace: dedupeSyncBookmark@PlacesSyncUtils.jsm:1777:11 < async*dedupe/<@PlacesSyncUtils.jsm:594:7 < executeBeforeShutdown@Sqlite.jsm:374:25 < executeBeforeShutdown@Sqlite.jsm:1253:12 < withConnectionWrapper/<@PlacesUtils.jsm:1546:14 < async*withConnectionWrapper@PlacesUtils.jsm:1544:19 < dedupe@PlacesSyncUtils.jsm:593:12 < async*_switchItemToDupe@bookmarks.js:625:46 < _reconcile@engines.js:1508:9 < _processIncoming/newitems.recordHandler@engines.js:1206:23 < getBatched@record.js:771:9 < async*_processIncoming@engines.js:1239:42 < _processIncoming@bookmarks.js:514:7 < _sync@engines.js:1804:7 < WrappedNotify@util.js:161:21 < sync@engines.js:723:5 < _syncEngine@enginesync.js:219:7 < sync@enginesync.js:166:15 < onNotify@service.js:1080:7 < WrappedNotify@util.js:161:21 < WrappedLock@util.js:117:16 < _lockedSync@service.js:1070:12 < sync/<@service.js:1062:7 < WrappedCatch@util.js:92:16 < sync@service.js:1051:5
<cut>
1495032683603	Sync.Engine.Bookmarks	DEBUG	Records that failed to apply: IBg4Gd3wTooN
1495032683606	Sync.Engine.Bookmarks	INFO	Records: 10704 applied, 10703 successfully, 1 failed to apply, 1 newly failed to apply, 49 reconciled.
1495032683607	Sync.SyncScheduler	ERROR	Engine bookmarks found 1 new records that failed to apply
1495032683607	Sync.Status	DEBUG	Status for engine bookmarks: error.engine.reason.apply_fail

(the above is from the log which ended with an error).

In the log that successfully completed I find:

1495032921794	Sync.Collection	DEBUG	mesg: GET success 200 https://sync-438-us-west-2.sync.services.mozilla.com/1.5/63338073/storage/bookmarks?full=1&sort=index&ids=IBg4Gd3wTooN
1495032921794	Sync.Collection	DEBUG	GET success 200 https://sync-438-us-west-2.sync.services.mozilla.com/1.5/63338073/storage/bookmarks?full=1&sort=index&ids=IBg4Gd3wTooN

(these are the messages related to the bookmarks which gave error in the first sync).

In the error log I also got many messages like this (but these are not tagged as warning or errors):

1495031598487	Sync.Engine.Bookmarks	DEBUG	IEl7l2dnIeJR mapped to undefined
1495031598487	Sync.Store.Bookmarks	DEBUG	Applying record IEl7l2dnIeJR
1495031598487	Sync.Store.Bookmarks	DEBUG	Remote parent is P-C1xiT9Wnfh
1495031598491	BookmarkSyncUtils	DEBUG	insertSyncBookmark: Item IEl7l2dnIeJR is not an orphan
1495031598530	Sync.Store.Bookmarks	DEBUG	Created bookmark IEl7l2dnIeJR under P-C1xiT9Wnfh: {"kind":"bookmark","syncId":"IEl7l2dnIeJR","parentSyncId":"P-C1xiT9Wnfh","dateAdded":1485874453888,"title":"How To Beat Online Price Discrimination - Slashdot","url":"http://news.slashdot.org/story/14/10/24/1421258/how-to-beat-online-price-discrimination","tags":[]}
(In reply to Tortino from comment #40)
> just did another full sync on desktop (by deleting mozilla profile) and I
> got first an error, and then a success in the next sync.
> The log is big (7 MB) so I only report here what seems relevant to me. In
> the log I found:

Thanks for pasting that! This looks like another case of bug 1323333, where our deduping logic makes a mess. Do you see any other mentions of "IBg4Gd3wTooN" and "djEkzdGOSv57" in the logs?
Flags: needinfo?(tortino)
Hi,
I found no other occurrences of "IBg4Gd3wTooN" and "djEkzdGOSv57". Are present only what I already reported.
Flags: needinfo?(tortino)
(In reply to Kit Cambridge (he/him) [:kitcambridge] (UTC-7) from comment #41)
> 
> Thanks for pasting that! This looks like another case of bug 1323333, where
> our deduping logic makes a mess. 

Hi,
does the error mean that I lost the bookmark? 
I'm not able to identify the bookmark, so I cannot decide if it is gone or not.
thanks
(In reply to Tortino from comment #43)
> does the error mean that I lost the bookmark? 

I don't think so, but the first sync failing means your device might not have downloaded all your bookmarks from the server. If you have the About Sync add-on installed, do you see any validation errors? Are some of your bookmarks missing, or in the wrong places?
Hi,
I have installed About Sync, but I don't know how to read the data.
In bookmarks -> validation I have some info, like:

1) many lines with Child record <record id> appears as a child in multiple parents
2) many lines with Server-side parent/child mismatch for parent <record id> (first) and child <record id> (second).
3) many lines with Record <record id> has (non-structural) differences between local and server copies

I have too many bookmarks (like 10000+) so it's difficult to find missing or misplaced bookmarks.
I have already reported here what I have found (as example see comment 35) but I don't understand if it's a real bug or just a corrupted profile (I'm not able to reproduce it)
(In reply to Tortino from comment #45)
> 1) many lines with Child record <record id> appears as a child in multiple
> parents
> 2) many lines with Server-side parent/child mismatch for parent <record id>
> (first) and child <record id> (second).
> 3) many lines with Record <record id> has (non-structural) differences
> between local and server copies

These are relatively common problems we see (although we should see far less of *new* problems these days - it's probable these errors were created long ago.

> I have too many bookmarks (like 10000+) so it's difficult to find missing or
> misplaced bookmarks.
> I have already reported here what I have found (as example see comment 35)
> but I don't understand if it's a real bug or just a corrupted profile (I'm
> not able to reproduce it)

Reproducing it would be ideal, but yeah, we can't either. If you are brave enough, you could choose a device where you are happy with the bookmarks already there, then go to about:preferences#sync, de-select the bookmarks engine, sync, re-enable the engine, then sync again - note that the final sync there will likely take some time to complete, so you should check the spinner on the hamburger menu has stopped before quitting.

We'd then expect that your other devices will sync, do some reconciliation, but not introduce new validation problems. However, you should make a backup of your bookmarks before trying any of this. If you still have problems doing this (or new problems after this), please open a new bug.
(In reply to Mark Hammond [:markh] from comment #46)

> Reproducing it would be ideal, but yeah, we can't either. If you are brave
> enough, you could choose a device where you are happy with the bookmarks
> already there, then go to about:preferences#sync, de-select the bookmarks
> engine, sync, re-enable the engine, then sync again - note that the final
> sync there will likely take some time to complete, so you should check the
> spinner on the hamburger menu has stopped before quitting.
> 

I followed your instructions on a single device. (I still have to sync with other devices)
From what you wrote on the second sync I expected to wait some time, but instead it was quite fast,
and the log was just 80KB (I expected to see the usual "full sync" log of about 5MB).
In any case now the About Sync extension now reports "No validation problems found \o/".
I'll sync with other devices (Windows and Android devices) and see the result.

About the spinner in the hamburger menu: I remember in older versions to be able to put the spinner
in the firefox main toolbar, just to have it visible all the time. Why this option was removed, it was quite useful.
Do you know if this feature will return? (maybe the Photon work).

Thanks.
Hi,
I just synced an android device, then re-synced the desktop I have just "reset" (see comment 47).
Now in firefox desktop I got some errors like:

Server-side parent/child mismatch for parent StliAyCX_7I4 (first) and child b-1toKpMRThq (second).

Before syncyng the android device I didn't reset it like I have done for firefox desktop. 
Was it needed?
Hi, I just got this error:

1497169861763	Sync.Engine.Extension-Storage	ERROR	Syncing zoompage-we@DW-dev: request failed: Error: HTTP 507; Error: HTTP 507 Insufficient Storage: Resource access is forbidden for this user (Collection maximum size exceeded (102426 > 102400 Bytes).) (resource://services-common/kinto-http-client.js:2353:21) JS Stack trace: formatResponse@kinto-http-client.js:2376:21 < processResponse@kinto-http-client.js:2351:14 < async*request@kinto-http-client.js:2431:14 < async*execute@kinto-http-client.js:744:26 < async*paginatedList@kinto-http-client.js:850:34 < async*listRecords@kinto-http-client.js:2065:14 < async*[6]</pullChanges/<@kinto-offline-client.js:1761:45 < step@kinto-offline-client.js:872:183 < [6]</_asyncToGenerator/</</step/<@kinto-offline-client.js:872:361 < waitForSyncCallback@async.js:98:7 < makeSpinningCallback/callback.wait@async.js:168:27 < promiseSpinningly@async.js:234:12 < _sync@extension-storage.js:41:12 < WrappedNotify@util.js:160:21 < sync@engines.js:723:5 < _syncEngine@enginesync.js:219:7 < sync@enginesync.js:166:15 < onNotify@service.js:1081:7 < WrappedNotify@util.js:160:21 < WrappedLock@util.js:116:16 < _lockedSync@service.js:1071:12 < sync/<@service.js:1063:7 < WrappedCatch@util.js:91:16 < sync@service.js:1052:5
1497169861765	Sync.Engine.Extension-Storage	WARN	Syncing failed: Error: HTTP 507; Error: HTTP 507 Insufficient Storage: Resource access is forbidden for this user (Collection maximum size exceeded (102426 > 102400 Bytes).) (resource://services-common/kinto-http-client.js:2353:21) JS Stack trace: formatResponse@kinto-http-client.js:2376:21 < processResponse@kinto-http-client.js:2351:14 < async*request@kinto-http-client.js:2431:14 < async*execute@kinto-http-client.js:744:26 < async*paginatedList@kinto-http-client.js:850:34 < async*listRecords@kinto-http-client.js:2065:14 < async*[6]</pullChanges/<@kinto-offline-client.js:1761:45 < step@kinto-offline-client.js:872:183 < [6]</_asyncToGenerator/</</step/<@kinto-offline-client.js:872:361 < waitForSyncCallback@async.js:98:7 < makeSpinningCallback/callback.wait@async.js:168:27 < promiseSpinningly@async.js:234:12 < _sync@extension-storage.js:41:12 < WrappedNotify@util.js:160:21 < sync@engines.js:723:5 < _syncEngine@enginesync.js:219:7 < sync@enginesync.js:166:15 < onNotify@service.js:1081:7 < WrappedNotify@util.js:160:21 < WrappedLock@util.js:116:16 < _lockedSync@service.js:1071:12 < sync/<@service.js:1063:7 < WrappedCatch@util.js:91:16 < sync@service.js:1052:5
1497169861767	Sync.Status	DEBUG	Status for engine extension-storage: error.engine.reason.unknown_fail
1497169861767	Sync.Status	DEBUG	Status.service: success.status_ok => error.sync.failed_partial
1497169861767	Sync.ErrorHandler	DEBUG	extension-storage failed: Error: HTTP 507; Error: HTTP 507 Insufficient Storage: Resource access is forbidden for this user (Collection maximum size exceeded (102426 > 102400 Bytes).) (resource://services-common/kinto-http-client.js:2353:21) JS Stack trace: formatResponse@kinto-http-client.js:2376:21 < processResponse@kinto-http-client.js:2351:14 < async*request@kinto-http-client.js:2431:14 < async*execute@kinto-http-client.js:744:26 < async*paginatedList@kinto-http-client.js:850:34 < async*listRecords@kinto-http-client.js:2065:14 < async*[6]</pullChanges/<@kinto-offline-client.js:1761:45 < step@kinto-offline-client.js:872:183 < [6]</_asyncToGenerator/</</step/<@kinto-offline-client.js:872:361 < waitForSyncCallback@async.js:98:7 < makeSpinningCallback/callback.wait@async.js:168:27 < promiseSpinningly@async.js:234:12 < _sync@extension-storage.js:41:12 < WrappedNotify@util.js:160:21 < sync@engines.js:723:5 < _syncEngine@enginesync.js:219:7 < sync@enginesync.js:166:15 < onNotify@service.js:1081:7 < WrappedNotify@util.js:160:21 < WrappedLock@util.js:116:16 < _lockedSync@service.js:1071:12 < sync/<@service.js:1063:7 < WrappedCatch@util.js:91:16 < sync@service.js:1052:5
(In reply to Tortino from comment #49)
> Hi, I just got this error:

That's not related to this bug. Please open new bugs for new issues, and we will duplicate them to an existing bug if necessary.
Hello,
I've tested again what I reported in comment 48, but this time I used new profiles and firefox account.

STR:

on desktop I used firefox nightly 29/07 and on firefox nightly 30/07

1. on desktop create new profile 1
2. import bookmarks from html (abount 9000 bookmarks and nested folders)
3. create new firefox account and then sync
4. install about sync extension and check bookmarks: No validation problems found \o/
5. on desktop create new profile 2
6. on profile 2 login into new firefox account and then sync
7. install about sync extension and check bookmarks: No validation problems found \o/
8. on android install latest nightly (30/07) and sync with new firefox account 
9. on desktop start new profile 1 and then sync
10 start about sync extension and check bookmarks: now I have lots of errors!

I cannot understand if it's a incorrect report from the about sync extension, and in reality it's all good,
or if it's a real corruption of server side bookmarks data caused by fennec.

(if useful I can provide the html bookmarks file that I used to test and the full list of errors reported by about sync)

examples of errors:

Child record 3eQqcYniXgPO appears as a child in multiple parents
(index) ▼	(record)	id	children	dateAdded	parentid	title	type	parentName	childGUIDs	parent	unfilteredChildren	hasDupe
0	<Recursive (double-click to expand)>	"3eQqcYniXgPO"	<Recursive (double-click to expand)>	"1501410651489"	"eLKzTLoHx_0x"	"storage"	"folder"	"internet"	["Nec7lK0ymAiT","FUlYYpiyH3a7","3LWaZkJ4u3eb","uRA_0NKThFBM","4BQe0knBVNi1","EIGdOkY2UlUA","PhTLQi8zJrZj","rydyjB4i3yIc","p1Z9LoVSopLX","iF9ZcXHLVgoj","hACcxEjodyLd","llTrVqshtenW","5YPnpMZ3hbJQ","c5GKo8n_fxFi","qRc9jp9imkDN","H8FVI2-0CjwC","JUT4t8V4Py5Z","7w2sXXgbYFzB","9NGGObJyoela","0PFchYcW-0QA","3JqYgyKkOMUA","sjQxWeK54Z0m","znhkeG__RF3D","FvSJxMoAQ8CA","QxSLNWe5w-Jq","DLMFsbta4HmR","ZxAFP-UCiacp","EdIOxcrbp6ux","sPjr8EBT54P9","j2ODyYJ0_7c7","eJa7YzUCugPC","9WrVBA3VJzEA","bppyTbyemnqB","8Zumz3BucBAz"]	<Recursive (double-click to expand)>	<Recursive (double-click to expand)>	
1	<Recursive (double-click to expand)>	"eLKzTLoHx_0x"	<Recursive (double-click to expand)>	"1501410639877"	"5xvzN5dvrjJs"	"internet"	"folder"	"hardware"	["AHpNlTQySvpE","8qTrTCAvG6Gs","R6zAiilwEIFX","nyD1vUbfWIpn","3zI8-KWE6L9C","6agNTnIhFxJQ","_0TsLL5vqlVq","kY_rJwRKvWN6","TK-nWZ8jgMKp","u4L9XOOscrzC","SH_t25b8E35W","3eQqcYniXgPO","Nu1U_BPu-XKR","fcV2NFeZ9-lm","QDg6f_wC8CzX","JJkA0lixlXyu","t-zzTez2zKfC","Dg4ZgKKGLQ0x","qBhI2cCc8LrB","tCSdU-QNtEuW","np1NDgMuHUBN"]	<Recursive (double-click to expand)>	<Recursive (double-click to expand)>	
2	<Recursive (double-click to expand)>	"jgK4EFt2wYMT"	<Recursive (double-click to expand)>	1501410649390	"5xvzN5dvrjJs"	"internet"	"folder"	"hardware"	["VwxluXq9tyWK","AHpNlTQySvpE","8qTrTCAvG6Gs","R6zAiilwEIFX","nyD1vUbfWIpn","3zI8-KWE6L9C","6agNTnIhFxJQ","_0TsLL5vqlVq","kY_rJwRKvWN6","TK-nWZ8jgMKp","u4L9XOOscrzC","SH_t25b8E35W","3eQqcYniXgPO"]	<Recursive (double-click to expand)>	<Recursive (double-click to expand)>	true



Server-side parent/child mismatch for parent xNlSV9hvh5WT (first) and child EnICWwj5V-_o (second).
(index) ▼	(record)	id	children	dateAdded	parentid	title	type	parentName	childGUIDs	parent	unfilteredChildren	bmkUri	loadInSidebar	tags	hasDupe
0	<Recursive (double-click to expand)>	"xNlSV9hvh5WT"	<Recursive (double-click to expand)>	"1501410656402"	"OnuON_Q_fa1I"	"moz"	"folder"	"From Google Chrome"	["oFUy5MiTDiiF","x4K3Kj5riiub","MGuOZUJAu-m4","zC94_FmM9cM9","lmXFud3vFstI","2e1FMJP-kXc-","UbchV0LRTqdV","C7QpJT17rRt9","fjud1QiEapCi","9oMXS90OCyTe","7sE21wRzvmlZ","19BvDFJqeOYW","03CqS8uC9B1i","AzBP_L045oTb","rIqoGscwdUqT","nVDuijP7uQzG","c-Bj4NpvyGWp","BTo7XX6XNIDX","lTY9OfO1M8_h","8yIne79RF7XJ","FV21dX6wxL5k","mnDbvJ9Vz0b_","y7DAyMBhk3zR","dLaIsXTtpk3F","iFAMgSma-6mT","oGay71otbhrh","9KPf5uv4DZne","x5h29OCmnkD4","G5lmtZve0s-w","OmeUgy82VSGH","qQ43gOO1H4H1","u0GcZSrKyoC6","DfpFSRbMDruS","OQ5QqrhJz8Bx","Q7ebNVGJItvl","tKtAwfuhbqGx","-EzruUKmEyh2","kC_YuPiMT_Oc","v7qWpJtnQqCj","YJzbqQE5egID","XoJP0ZcrIOkS","EJ5ahhLBDEoR","xChbVpf9QsOP","MHgn4cw6VIRY","4jUWWqWrXXwU","a0g99jOEiCzH","NM0cYD2WCZky"]	<Recursive (double-click to expand)>	<Recursive (double-click to expand)>				
1	<Recursive (double-click to expand)>	"EnICWwj5V-_o"		1501410656499	"xNlSV9hvh5WT"	"Firefox: informazioni sul browser"	"bookmark"	"moz"		<Recursive (double-click to expand)>		"about:firefox"	false	[]	true



Record jgK4EFt2wYMT has structural differences (fields: ["childGUIDs"]) between local and server copies
(index) ▼	(record)	id	field	localRecord	serverRecord	localValue	serverValue
0	<Recursive (double-click to expand)>	"jgK4EFt2wYMT"	"childGUIDs"	<Recursive (double-click to expand)>	<Recursive (double-click to



btw, I think the about sync extension is going to stop working after firefox 57, so will it be replaced with something else?

thanks.
(In reply to Tortino from comment #51)
> Hello,
> I've tested again what I reported in comment 48, but this time I used new
> profiles and firefox account.

Thanks for doing the test! Clean profiles as a starting point and reproducible STRs are really great to have.

Given the steps you took, I'm inclined to say that Fennec is indeed doing something wrong here.

> (if useful I can provide the html bookmarks file that I used to test and the
> full list of errors reported by about sync)

Both would be very useful to have. Perhaps you don't want to attach them here - email would work well. Having a non-trivial profile which triggers a lot of bookmark validation problems after syncing to Fennec will make our work easier.

> btw, I think the about sync extension is going to stop working after firefox
> 57, so will it be replaced with something else?

Mark, can you comment on this?
Flags: needinfo?(gkruglov) → needinfo?(markh)
Hello,
On latest nightly I just got an error during sync between desktop and firefox, due to incorrect time set on android (tablet) which was about 5 minutes in the future. I got the error on the desktop which had the time set correctly.

error on desktop:

1505072480478	Sync.Collection	DEBUG	mesg: GET success 200 https://sync-532-us-west-2.sync.services.mozilla.com/1.5/80496454/storage/history?newer=1505072217.45&full=1&limit=1000
1505072480478	Sync.Collection	DEBUG	GET success 200 https://sync-532-us-west-2.sync.services.mozilla.com/1.5/80496454/storage/history?newer=1505072217.45&full=1&limit=1000
1505072480510	Sync.Engine.History	WARN	Got exception, aborting processIncoming: TypeError: date: Sun Sep 10 2017 21:43:59 GMT+0200 (ora solare Europa occidentale) cannot be a future date (resource://gre/modules/PlacesUtils.jsm:1048:17) JS Stack trace: validatePageInfo@PlacesUtils.jsm:1048:17 < insertMany@History.jsm:273:18 < applyIncomingBatch@history.js:214:13 < async*doApplyBatch@engines.js:1111:39 < async*doApplyBatchAndPersistFailed@engines.js:1128:15 < async*_processIncoming@engines.js:1259:13 < async*_processIncoming@history.js:67:13 < async*_sync@engines.js:1776:13 < async*WrappedNotify@util.js:167:27 < async*sync@engines.js:723:12 < async*_syncEngine@enginesync.js:203:13 < async*sync@enginesync.js:153:21 < async*onNotify@service.js:1103:13 < async*WrappedNotify@util.js:167:27 < async*WrappedLock@util.js:123:22 < async*_lockedSync@service.js:1096:12 < async*sync/<@service.js:1088:13 < async*WrappedCatch@util.js:93:22 < async*sync@service.js:1077:12
1505072480535	Sync.Status	DEBUG	Status for engine history: error.engine.reason.unknown_fail
1505072480535	Sync.Status	DEBUG	Status.service: success.status_ok => error.sync.failed_partial
1505072480535	Sync.ErrorHandler	DEBUG	history failed: TypeError: date: Sun Sep 10 2017 21:43:59 GMT+0200 (ora solare Europa occidentale) cannot be a future date (resource://gre/modules/PlacesUtils.jsm:1048:17) JS Stack trace: validatePageInfo@PlacesUtils.jsm:1048:17 < insertMany@History.jsm:273:18 < applyIncomingBatch@history.js:214:13 < async*doApplyBatch@engines.js:1111:39 < async*doApplyBatchAndPersistFailed@engines.js:1128:15 < async*_processIncoming@engines.js:1259:13 < async*_processIncoming@history.js:67:13 < async*_sync@engines.js:1776:13 < async*WrappedNotify@util.js:167:27 < async*sync@engines.js:723:12 < async*_syncEngine@enginesync.js:203:13 < async*sync@enginesync.js:153:21 < async*onNotify@service.js:1103:13 < async*WrappedNotify@util.js:167:27 < async*WrappedLock@util.js:123:22 < async*_lockedSync@service.js:1096:12 < async*sync/<@service.js:1088:13 < async*WrappedCatch@util.js:93:22 < async*sync@service.js:1077:12
1505072480535	Sync.Telemetry	TRACE	observed weave:engine:sync:error history

To fix the error I had to set the date correctly on the android tablet, but I noticed the incorrect time by chance, there was no message in firefox to help me fix the error.
What about using some mozilla time service to synchonize the date/time on devices? Or at least to inform the user of the problem?

I also found another problem about bookmarks ordering, maybe unrelated to the previous one.

Some bookmarks on android are not alphabetically sorted like just before the sync. On desktop they are still sorted.
I tried syncing again multiple times, and using the sort functionality on desktop, and the syncing again, but without success. the bookmarks on desktop remain sorted, and the one on android are not (they're apparently in random order).
On android there is no sort functionality, so what should I do to fix the error?

thanks.
Which version of Fennec are you using in Comment 53? Bug 1392505 fixed a problem which would manifest in "android sync behaving poorly when incorrect time is set on the device". Can you reproduce this problem on the current Nightly?
Flags: needinfo?(tortino)
I'm using the 9 or 10 september build, I cannot check the exact version now.
Flags: needinfo?(tortino)
I confirm I was using the 10 sept build. 

For some reasong today, after a sync, the bookmark order on android tablet is alphabetical again, like on desktop. just yesterday the bookmarks suddenly lost the alphabetical order and refused to get back in the original order, even after many subsequent forced syncs. Maybe unrelated: I also lost some of the website icons.

Now I upgraded all my android devices to today's 11 build and got another bookmark reordering:
on the android tablet I modified a bookmark (manually changed http to https), loaded the page (icon from website appeared in bookmarks list, while before the change it did not) and then synced.
now on another android device, after a sync, I got the newly modified bookmark as first item in the folder, instead of the original alphabetical position.

also everytime I add a bookmark on android it is added as the first item of parent folder, while on desktop is added as the last one to the bottom.
(In reply to :Grisha Kruglov from comment #52)
> > btw, I think the about sync extension is going to stop working after firefox
> > 57, so will it be replaced with something else?
> 
> Mark, can you comment on this?

Version 0.15 is now available on AMO which works on all Firefox versions, including 57.
Flags: needinfo?(markh)
thanks! :)
Product: Android Background Services → Firefox for Android
Duplicate of this bug: 1219522
Closing per https://bugzilla.mozilla.org/show_bug.cgi?id=1473195

Contact :susheel if you think this bug should be re-opened
Status: UNCONFIRMED → RESOLVED
Closed: Last year
Resolution: --- → INACTIVE
You need to log in before you can comment on or make changes to this bug.