Open Bug 1865179 Opened 2 years ago Updated 1 year ago

Fenix took 10 full minutes to sync my history collection

Categories

(Application Services :: Places, enhancement, P3)

enhancement

Tracking

(Not tracked)

People

(Reporter: markh, Unassigned)

Details

From github: https://github.com/mozilla/application-services/issues/3176.

I have an install of Firefox Beta on my phone that I hadn't used in a while, but I recently wanted to use it for some debugging. It was still connected to my account, so on launching the app for the first time in several weeks, it had do a large sync in order to catch up to the other clients. The sync worked very well, but it took a surprisingly long time - fully ten minutes to sync the history collection, according to adb logs.

Is it expected that we should take this long to sync a collection? I'm on a Galaxy S8, so not the newest of phones, but no slouch.

I've uploaded a snippet of my adb logcat info here

  • basically all the log lines with "sync" or "places" in them, from the time history started syncing to the time it finished, starting at 18:05 and ending at 18:15. Some initial observations:
  • It tries to download 5000 history entries, which I guess is expected for a device that's been offline for several weeks.
  • It fetches the items from the server fairly quickly.
  • It then logs 529 instances of ChunkedCoopTransaction commiting after taking allocated time, taking 10 minutes to write out the changes to disk.
  • It also shows that browser autocomplete queries work and return quickly while this is happening, which is very nice!
  • After applying the items, it tries to upload some items of its own, but fails with a 412 Precondition Failed. Which fair enough, it's likely that another client wrote to the history collection in those 10 minutes.

Everything worked here as far as I can tell, I'm just really surprised it took such a long time.

┆Issue is synchronized with this Jira Task
┆Epic: Important backlog

Change performed by the Move to Bugzilla add-on.

You need to log in before you can comment on or make changes to this bug.