Closed Bug 1168428 Opened 9 years ago Closed 5 years ago

[meta] Sync is janky

Categories

(Firefox :: Sync, defect, P3)

defect

Tracking

()

RESOLVED FIXED
Tracking Status
firefox41 --- affected

People

(Reporter: luke, Unassigned)

References

Details

(Keywords: meta, Whiteboard: [fxsync])

Attachments

(1 file, 1 obsolete file)

Today, when I switched to a FF profile that I hadn't used in a while (so that there was a lot to sync in my FxA), I noticed the browser chrome was really laggy (variable second delays between mouse action and UI response in browser chrome).  I restarted the browser (which had just finished updating to the latest nightly build), and after half a minute or so, the UI lagginess returned.  I noticed that the Sync animation was spinning in the FF menu indicating that a Sync operation was going on.  After a minute or so, the Sync operation completed and the UI was immediately responsive again.  I'm afraid I didn't have time to capture a profile while this was happening.
I forgot to add, this just happened on Win7, but it also happened for me on OSX recently (same situation: using profile linked to big FxA for the first time in a month) and the browser was almost unusable for a minute.
Needs investigation and should be assigned as high priority.
Priority: -- → P2
This could be users' second device experience as well.
Priority: P2 → P1
:pdehaan any chance you can try to repro this? We'd love more data on how many people experience this.
Flags: needinfo?(pdehaan)
A quick profile shows the lowest hanging fruit is the bookmarks engine, and specifically _buildGUIDMap(). Best I can tell, this is all using the old sync bookmarks API, which I believe does main thread IO. We probably want to convert this engine to using async IO (but I also wonder if we should consider looking at the OSX bookmarks engine rnewman recently did, and just rewrite the entire engine!?
Flags: needinfo?(pdehaan)
> A quick profile shows the lowest hanging fruit is the bookmarks engine, and specifically _buildGUIDMap()

I've heard this _buildGUIDMap() thing mentioned before, so I wonder if there's existing bugzilla literature on plans for its removal.  Couldn't find anything using my primitive bz search skills though...
Blocks: 1182288
Rank: 15
Assignee: nobody → markh
Whiteboard: [fxsync]
Flags: firefox-backlog+
Related is Bug 1008592
See Also: → 1008592
Iteration: --- → 43.1 - Aug 24
I'm going to treat this as a meta bug for all janky sync-related things. I'm unassigning myself from this one, but I'll take most (all?) of the dependencies.
Assignee: markh → nobody
Depends on: 1008592
OS: Windows 7 → Unspecified
Hardware: x86_64 → Unspecified
Summary: large ongoing Sync operation causes significant UI jank → [meta] Sync is janky
Iteration: 43.1 - Aug 24 → ---
Priority: P1 → P2
Clearing the priority from all our meta bugs.
Priority: P2 → --
Flags: firefox-backlog+
Kit reports this has come back recently. I just rebased the earlier hacks I had in place to measure jank (but haven't verified it still works) and I'm attaching it here incase someone else wants to have a look - needinfo myself to play with this some more later.
Flags: needinfo?(markh)
Mark was looking at jank in _guidMap, and fixed the issue in bug 1303831.
Flags: needinfo?(markh)
Priority: -- → P3
Whiteboard: [fxsync] → [fxsync][qf]
Whiteboard: [fxsync][qf] → [fxsync]
Updated to current master.
Attachment #8800082 - Attachment is obsolete: true
Keywords: meta

All dependencies are closed \o/

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: