Closed
Bug 1511228
Opened 6 years ago
Closed 6 years ago
Erase side effects before running forward to execution points
Categories
(Core Graveyard :: Web Replay, enhancement)
Core Graveyard
Web Replay
Tracking
(firefox66 fixed)
RESOLVED
FIXED
mozilla66
Tracking | Status | |
---|---|---|
firefox66 | --- | fixed |
People
(Reporter: bhackett1024, Assigned: bhackett1024)
References
Details
Attachments
(1 file)
1.10 KB,
patch
|
mccr8
:
review+
|
Details | Diff | Splinter Review |
When a replaying child process pauses, it can create a temporary checkpoint, diverge from the recording and start performing side effects. When running forward in search of breakpoint hits we rewind to the checkpoint first so that the side effects will be erased, but there is no comparable logic when we run forward to reach a specific execution point, as can happen when warping to a place shortly in the future). The attached patch adds support for this.
Attachment #9028828 -
Flags: review?(continuation)
Comment 1•6 years ago
|
||
Comment on attachment 9028828 [details] [diff] [review]
patch
Review of attachment 9028828 [details] [diff] [review]:
-----------------------------------------------------------------
It is too bad there's no easier way to encapsulate the logic of "we're done messing around with our diverged state, get back to a clean state before we do whatever". I guess there's not quite enough of this logic to justify creating, I don't know, some kind of promises.
Attachment #9028828 -
Flags: review?(continuation) → review+
Assignee | ||
Comment 2•6 years ago
|
||
(In reply to Andrew McCreight [:mccr8] from comment #1)
> Comment on attachment 9028828 [details] [diff] [review]
> patch
>
> Review of attachment 9028828 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> It is too bad there's no easier way to encapsulate the logic of "we're done
> messing around with our diverged state, get back to a clean state before we
> do whatever". I guess there's not quite enough of this logic to justify
> creating, I don't know, some kind of promises.
Yeah, it's hard to be very general here, particularly because keeping state in untracked memory whose contents are retained after rewinding requires careful management of the memory where different operations are stored. I think there are some simplifications that can still be made here, though, I'll see what I can do.
Pushed by bhackett@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/835a30210291
Erase side effects before running forward to execution points, r=mccr8.
Comment 4•6 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 6 years ago
status-firefox66:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
Updated•5 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•