Closed Bug 1479909 Opened 6 years ago Closed 6 years ago

Bit Bucket cannot be loaded

Categories

(Core Graveyard :: Web Replay, defect)

defect
Not set
normal

Tracking

(firefox63 fixed)

RESOLVED FIXED
mozilla63
Tracking Status
firefox63 --- fixed

People

(Reporter: jlast, Assigned: bhackett1024)

Details

Attachments

(4 files)

It looks like https://bitbucket.org/ crashes when webreplay is on.

CC https://twitter.com/niborst/status/1022704576078565376
Hi, sorry for the late reply, I just started watching the Web Replay component (oops).  I'm not able to reproduce this, but there have been a fair number of fixes going in the last couple weeks which may have taken care of this.  Crash reporting should be working in today's Nightly (maybe tomorrow's) so if the issue still reproduces we should be able to figure out what the problem is from the report.
Hmm, it still crashes for me. There should now be a crash report :wink:
Attached patch patchSplinter Review
OK, I'm able to reproduce the crashes now.  This patch has a few small changes that get bitbucket.org to reliably record and rewind for me.
Assignee: nobody → bhackett1024
The debugger in the recording/replaying process can see multiple onNewScript notifications for scripts with the same script source on this site.  This fix lets the debugger handle these correctly.  While this wasn't leading to crashes it did break the debugger.
Attachment #9005483 - Flags: review?(jimb)
Give replaying processes a lot more time to execute between checkpoints before treating them as hanged.  We had this low 5 second limit so that we could restart hanged processes without as much of an impact on the user, but this has turned out to be a lot more trouble than it's worth.  Giving 30 seconds to the replaying process should restrict crashes to actual hangs.
Attachment #9005484 - Flags: review?(continuation)
Ion optimizations of DOM accesses can observably affect the recording.  I think this is because operations which operate on wrapper caches (which interact with the recording, so accesses on their weakly held contents replay reliably) can be combined via GVN or LICM.  This patch disables all DOM optimizations when recording or replaying.
Attachment #9005487 - Flags: review?(bzbarsky)
Attachment #9005484 - Flags: review?(continuation) → review+
Comment on attachment 9005487 [details] [diff] [review]
Part 3 - Disable DOM Ion optimizations when recording or replaying.

r=me
Attachment #9005487 - Flags: review?(bzbarsky) → review+
Comment on attachment 9005483 [details] [diff] [review]
Part 1 - Tolerate multiple scripts with the same source when replaying.

Review of attachment 9005483 [details] [diff] [review]:
-----------------------------------------------------------------

When I'm reading code and I see an `if` that I don't understand, it suggests to me that there are cases the code is dealing with that I'm not aware of. It'd be nice to have a brief comment explaining the conditions under which this can occur.
Attachment #9005483 - Flags: review?(jimb) → review+
Pushed by bhackett@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/0e0a9ee8560a
Part 1 - Tolerate multiple scripts with the same source when replaying, r=jimb.
https://hg.mozilla.org/integration/mozilla-inbound/rev/45649765f2a9
Part 2 - Give replaying processes more time to execute before treating them as hanged, r=mccr8.
https://hg.mozilla.org/integration/mozilla-inbound/rev/354e37362d06
Part 3 - Disable DOM Ion optimizations when recording or replaying, r=bz.
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: