Closed
Bug 839675
Opened 11 years ago
Closed 11 years ago
Prevent out-of-sync problems
Categories
(Remote Protocol :: Marionette, defect)
Remote Protocol
Marionette
Tracking
(firefox19 wontfix, firefox20 wontfix, firefox21 fixed, b2g18 fixed, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 fixed)
RESOLVED
FIXED
mozilla21
People
(Reporter: jgriffin, Assigned: jgriffin)
References
Details
Attachments
(2 files, 1 obsolete file)
10.55 KB,
patch
|
jgriffin
:
review+
akeybl
:
approval-mozilla-b2g18+
|
Details | Diff | Splinter Review |
1.04 KB,
patch
|
mdas
:
review+
lsblakk
:
approval-mozilla-b2g18+
|
Details | Diff | Splinter Review |
In bug 779011 I implemented some logic that could reduce out-of-sync problems, but it didn't go quite far enough. I'll extend that logic and enforce it to make it impossible for Marionette to get out-of-sync.
Assignee | ||
Comment 1•11 years ago
|
||
This prevents out of sync problems completely. It doesn't solve any socket.timeout problems.
Attachment #712019 -
Flags: review?(mdas)
Assignee | ||
Comment 2•11 years ago
|
||
pushed to try: b2g: https://tbpl.mozilla.org/?tree=Try&rev=8287bbacb883 desktop: https://tbpl.mozilla.org/?tree=Try&rev=f7f3a3042e0d
Comment 3•11 years ago
|
||
Comment on attachment 712019 [details] [diff] [review] Prevent out-of-sync problems, Review of attachment 712019 [details] [diff] [review]: ----------------------------------------------------------------- hurray! ::: testing/marionette/marionette-actors.js @@ +472,4 @@ > */ > newSession: function MDA_newSession() { > this.command_id = this.getCommandId(); > + this.newSessionCommandId = this.command_id; Why can't we use this.command_id instead of creating newSessionCommandId? I don't think we reassign it anywhere during newSession() or any functions it calls, do we?
Attachment #712019 -
Flags: review?(mdas) → review+
Assignee | ||
Comment 4•11 years ago
|
||
(In reply to Malini Das [:mdas] from comment #3) > ::: testing/marionette/marionette-actors.js > @@ +472,4 @@ > > */ > > newSession: function MDA_newSession() { > > this.command_id = this.getCommandId(); > > + this.newSessionCommandId = this.command_id; > > Why can't we use this.command_id instead of creating newSessionCommandId? I > don't think we reassign it anywhere during newSession() or any functions it > calls, do we? The call chain that results from newSession is rather convoluted. We don't send a response back to the client until a frame script registers itself in the Marionette:register handler. I use the the 'this.newSessionCommandId' variable there to assign the correct command_id to the response. It would be nicer to pass the command_id along as we do for other commands, but this is hard because of the way we're hooking up the frame script in newSession.
Assignee | ||
Comment 5•11 years ago
|
||
This patch fails try with a bunch of errors of the sort: MarionetteException: Emulator callback still pending when finish() called
Assignee | ||
Comment 6•11 years ago
|
||
This was a silly error on my part. Fixed and pushed to try again: https://tbpl.mozilla.org/?tree=Try&rev=d7297db0aed2 https://tbpl.mozilla.org/?tree=Try&rev=e094e7dc9974
Assignee | ||
Comment 7•11 years ago
|
||
Fixed all the oranges in the last try run and pushed to try again: https://tbpl.mozilla.org/?tree=Try&rev=7ea2bf40784c https://tbpl.mozilla.org/?tree=Try&rev=d4bd329c05df
Assignee | ||
Comment 8•11 years ago
|
||
Updated patch that fixes oranges shown by try
Assignee | ||
Updated•11 years ago
|
Attachment #712019 -
Attachment is obsolete: true
Assignee | ||
Comment 9•11 years ago
|
||
Comment on attachment 712977 [details] [diff] [review] Prevent out-of-sync problems, Carry r+ forward.
Attachment #712977 -
Flags: review+
Assignee | ||
Comment 10•11 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/ede7e0cd808b
Assignee | ||
Comment 11•11 years ago
|
||
Comment on attachment 712977 [details] [diff] [review] Prevent out-of-sync problems, [Approval Request Comment] Bug caused by (feature/regressing bug #): User impact if declined: None - test-only patch Testing completed: Full try runs Risk to taking this patch (and alternatives if risky): This patch enhances the stability of Marionette-based tests, including Gaia UI tests. Not taking it will prevent these stability enhancements from taking effect. String or UUID changes made by this patch: None
Attachment #712977 -
Flags: approval-mozilla-b2g18?
Comment 12•11 years ago
|
||
Comment on attachment 712977 [details] [diff] [review] Prevent out-of-sync problems, Test-only patch, if this sticks on m-i/m-c (I'll let you all decide on when you're confident with the landing) we can uplift to mozilla-b2g18.
Attachment #712977 -
Flags: approval-mozilla-b2g18? → approval-mozilla-b2g18+
Comment 13•11 years ago
|
||
(In reply to Alex Keybl [:akeybl] from comment #12) > Comment on attachment 712977 [details] [diff] [review] > Prevent out-of-sync problems, > > Test-only patch, if this sticks on m-i/m-c (I'll let you all decide on when > you're confident with the landing) we can uplift to mozilla-b2g18. This has already landed on m-c, so we're clear:)
Comment 14•11 years ago
|
||
Dammit, wires got crossed, I thought this was a different bug. Ignore my comment please.
Comment 15•11 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/ede7e0cd808b
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla21
Comment 16•11 years ago
|
||
https://hg.mozilla.org/releases/mozilla-b2g18/rev/3dbddbdc7a26
status-b2g18:
--- → fixed
status-b2g18-v1.0.0:
--- → wontfix
status-b2g18-v1.0.1:
--- → fixed
status-firefox19:
--- → wontfix
status-firefox20:
--- → wontfix
status-firefox21:
--- → fixed
Assignee | ||
Comment 17•11 years ago
|
||
This actually made problems on Jenkins worse in a way, since a test that fails due to a frozen UI will cause all subsequent tests to fail out very quickly, before the UI unfreezes. Before the out-of-sync problem was fixed, the tests could get to an execute call that would take some time to error out; a few of these would allow enough time to progress that that the UI would unfreeze and allow other tests to function.
Assignee | ||
Comment 18•11 years ago
|
||
Oops, I inadvertently left in a little extra logging I'd added. This removes it.
Attachment #713508 -
Flags: review?(mdas)
Assignee | ||
Updated•11 years ago
|
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Updated•11 years ago
|
Attachment #713508 -
Flags: review?(mdas) → review+
Assignee | ||
Comment 19•11 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/e02c8045c228
Assignee | ||
Comment 20•11 years ago
|
||
Comment on attachment 713508 [details] [diff] [review] Remove extra logging, [Approval Request Comment] Bug caused by (feature/regressing bug #): User impact if declined: Testing completed: Risk to taking this patch (and alternatives if risky): This removes some extra logging accidentally left from a previous patch. Test-only and no user impact. String or UUID changes made by this patch:
Attachment #713508 -
Flags: approval-mozilla-b2g18?
Comment 21•11 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/e02c8045c228
Status: REOPENED → RESOLVED
Closed: 11 years ago → 11 years ago
Resolution: --- → FIXED
Comment 22•11 years ago
|
||
Comment on attachment 713508 [details] [diff] [review] Remove extra logging, Approving for v1-train uplift, fwiw in the future fixes that are only to tests can be a=test-only commits.
Attachment #713508 -
Flags: approval-mozilla-b2g18? → approval-mozilla-b2g18+
Assignee | ||
Comment 23•11 years ago
|
||
https://hg.mozilla.org/releases/mozilla-b2g18/rev/14bd266b0757
Assignee | ||
Comment 24•11 years ago
|
||
https://hg.mozilla.org/releases/mozilla-b2g18_v1_0_1/rev/eb5e87a42a25
Updated•1 year ago
|
Product: Testing → Remote Protocol
You need to log in
before you can comment on or make changes to this bug.
Description
•