*** The problem

We are currently faced with a problem on facebook.com (see bug 934935)
that brings Firefox to its knees because our session restore accumulates
huge amounts of dead data. This problem is most likely a Facebook bug,
and we are in touch with the Facebook team to see if they can address
it, but we are also thinking about counter-measures.

The problem seems to be due to the combination of the following things:
- facebook.com uses huge URLs (1kb), presumably for some kind of
ad-tracking (annoying, but not a facebook bug);
- facebook.com opens iframes and never closes them (presumably a
facebook bug);
- facebook.com uses the history API to push states (which increases the
number of states that we need to save to disk).

The net result is that users who spend lots of time on Facebook without
Adblock end up with thousands of (conceptually dead) iframes saved to
sessionstore.js, which is quite bad.


*** Discussions

We could get rid of the issue by not saving dynamically generated
iframes to sessionstore.js.

Or we could not save dynamic iframes that are not visible.

Or we could not save dynamic iframes in non-current positions in the
history.

etc.

All of these choices would change the semantics of sessionstore.js and
would alter the user experience when reopening/recovering from crash on
some sites that make good use of dynamic iframes.

I would like people's opinion on such changes or possible other
countermeasures.

Cheers,
 David


-- 
David Rajchenbach-Teller, PhD
 Performance Team, Mozilla
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to