CloudServices/Sync/FxSync/Performance
From MozillaWiki
< CloudServices | Sync | FxSync(Redirected from Services/Sync/FxSync/Performance)
NOTE: This is not likely to be a 100% comprehensive plan. I fully expect that once we address these known areas, we'll find some more stuff to optimize. Nothing is perfect, but we're going to iterate closer and closer.
Contents
Known Areas
Sync Crypto
Crypto off main thread
Tracked by bug 608156
- We've had to drop our first approach due to JS engine changes. We're re-rolling as fast as we can.
- There is some question about whether this is absolutely required once we kill the RSA bits.
Simplify Crypto
Tracked by bug 603489
- RSA is expensive and slow. We're just going to use AES everywhere, and dispense with a layer of wrapping while we're at it.
Places
Places lock contention issues
Tracked by bug 606353
- This is a known issue with Places (bug 563538) that we are tripping. The proposed solution is to add async APIs to Places and use those in Sync in an attempt to resolve this.
Places GUIDs
Tracked by bug 607107
- Places has to add GUIDs for history items, and query using GUIDs for history and bookmark items. Both of these are complicated and expensive queries.
- The goal here is to make GUIDs a universal attribute of places items, so that Sync doesn't need to insert them, and so queries are faster to insert and remove items.
Disk I/O
Tracked by bug 608617
- I/O on main thread sucks, so we need to not do that.