Closed
Bug 845625
Opened 12 years ago
Closed 12 years ago
Intermittent B2G test_execute_async_script.py TestExecuteAsyncContent.test_execute_async_unload | MarionetteException: {u'from': u'conn40.marionette1', u'value': 3} and others
Categories
(Testing :: Marionette Client and Harness, defect)
Tracking
(firefox22 fixed, b2g18 fixed, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 fixed)
RESOLVED
FIXED
mozilla22
People
(Reporter: RyanVM, Assigned: jgriffin)
References
Details
(Keywords: intermittent-failure)
Attachments
(1 file, 2 obsolete files)
1.89 KB,
patch
|
mdas
:
review+
|
Details | Diff | Splinter Review |
https://tbpl.mozilla.org/php/getParsedLog.php?id=20113890&tree=Mozilla-Inbound
b2g_ics_armv7a_gecko_emulator_vm mozilla-inbound opt test marionette-webapi on 2013-02-26 12:12:06 PST for push a38bbae7a53b
slave: tst-linux64-ec2-325
12:22:14 INFO - test_execute_async_unload (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_execute_js_exception (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_execute_no_return (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_execute_permission (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_no_timeout (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_same_context (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_sandbox_reuse (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - test_script_finished (test_execute_async_script.TestExecuteAsyncContent) ... ERROR
12:22:15 INFO - ======================================================================
12:22:15 INFO - ERROR: test_execute_async_unload (test_execute_async_script.TestExecuteAsyncContent)
12:22:15 INFO - ----------------------------------------------------------------------
12:22:15 ERROR - Traceback (most recent call last):
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/tests/testing/marionette/client/marionette/tests/unit/test_execute_async_script.py", line 10, in setUp
12:22:15 INFO - super(TestExecuteAsyncContent, self).setUp()
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette_test.py", line 131, in setUp
12:22:15 INFO - self.marionette.test_name = self.test_name
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 349, in test_name
12:22:15 INFO - if self._send_message('setTestName', 'ok', value=test_name):
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 255, in _send_message
12:22:15 INFO - self._handle_error(response)
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 313, in _handle_error
12:22:15 INFO - raise MarionetteException(message=response, status=500)
12:22:15 INFO - TEST-UNEXPECTED-FAIL | test_execute_async_script.py TestExecuteAsyncContent.test_execute_async_unload | MarionetteException: {u'from': u'conn40.marionette1', u'value': 3}
12:22:15 INFO - ======================================================================
12:22:15 INFO - ERROR: test_execute_js_exception (test_execute_async_script.TestExecuteAsyncContent)
12:22:15 INFO - ----------------------------------------------------------------------
12:22:15 ERROR - Traceback (most recent call last):
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/tests/testing/marionette/client/marionette/tests/unit/test_execute_async_script.py", line 10, in setUp
12:22:15 INFO - super(TestExecuteAsyncContent, self).setUp()
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette_test.py", line 133, in setUp
12:22:15 INFO - (self.filepath.replace('\\', '\\\\'), self.methodName))
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 497, in execute_script
12:22:15 INFO - scriptTimeout=script_timeout)
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 255, in _send_message
12:22:15 INFO - self._handle_error(response)
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 313, in _handle_error
12:22:15 INFO - raise MarionetteException(message=response, status=500)
12:22:15 INFO - TEST-UNEXPECTED-FAIL | test_execute_async_script.py TestExecuteAsyncContent.test_execute_js_exception | MarionetteException: {u'ok': True, u'from': u'conn40.marionette1'}
12:22:15 INFO - ======================================================================
12:22:15 INFO - ERROR: test_execute_no_return (test_execute_async_script.TestExecuteAsyncContent)
12:22:15 INFO - ----------------------------------------------------------------------
12:22:15 ERROR - Traceback (most recent call last):
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/tests/testing/marionette/client/marionette/tests/unit/test_execute_async_script.py", line 10, in setUp
12:22:15 INFO - super(TestExecuteAsyncContent, self).setUp()
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette_test.py", line 131, in setUp
12:22:15 INFO - self.marionette.test_name = self.test_name
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 349, in test_name
12:22:15 INFO - if self._send_message('setTestName', 'ok', value=test_name):
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 255, in _send_message
12:22:15 INFO - self._handle_error(response)
12:22:15 INFO - File "/builds/slave/test/build/tests/marionette/marionette/marionette.py", line 313, in _handle_error
12:22:15 INFO - raise MarionetteException(message=response, status=500)
etc etc etc
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 29•12 years ago
|
||
It's tempting to think this is some side effect of bug 839675, but since this problem wasn't reported until Feb 26, bug 844942 seems like a more likely source, if the problem is internal to Marionette.
Assignee | ||
Comment 30•12 years ago
|
||
This is an out-of-sync problem; somehow the script return for this:
http://mxr.mozilla.org/mozilla-central/source/testing/marionette/client/marionette/tests/unit/test_execute_async_script.py#24
is leaking into the next test.
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 36•12 years ago
|
||
I think this will solve this problem. I'll push to try as soon as bug 847683 is resolved.
Assignee | ||
Updated•12 years ago
|
Assignee: nobody → jgriffin
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 39•12 years ago
|
||
(In reply to Jonathan Griffin (:jgriffin) from comment #36)
> Created attachment 720961 [details] [diff] [review]
> Prevent tests from getting out of sync when an exception is thrown
>
> I think this will solve this problem. I'll push to try as soon as bug
> 847683 is resolved.
Thank you for looking at this :-)
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 42•12 years ago
|
||
pushed to try: https://tbpl.mozilla.org/?tree=Try&rev=d552508707e7
Assignee | ||
Comment 43•12 years ago
|
||
This was green on the try run except for test_simpletest_pass.js, which failed because it tries to assert on window.location.href. I've removed that check, which really doesn't belong there anyway.
Attachment #721363 -
Flags: review?(mdas)
Assignee | ||
Updated•12 years ago
|
Attachment #720961 -
Attachment is obsolete: true
Assignee | ||
Comment 44•12 years ago
|
||
Comment on attachment 721363 [details] [diff] [review]
Prevent tests from getting out of sync when an exception is thrown
Nm, I'm getting my try runs mixed up, this try run for this isn't back yet.
Attachment #721363 -
Flags: review?(mdas)
Assignee | ||
Comment 45•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Attachment #721363 -
Attachment is obsolete: true
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 48•12 years ago
|
||
Comment on attachment 721366 [details] [diff] [review]
Prevent tests from getting out of sync when an exception is thrown
try run is green.
This patch causes us to be a little more strict with command_id's than we were previously (actually, as strict as we can get). There was one gap that out-of-sync messages could still pass through, and this plugs it.
It also fixes screenShot to set this.command_id, since previously it was benefiting from said gap unintentionally.
Attachment #721366 -
Flags: review?(mdas)
Comment 49•12 years ago
|
||
Comment on attachment 721366 [details] [diff] [review]
Prevent tests from getting out of sync when an exception is thrown
Review of attachment 721366 [details] [diff] [review]:
-----------------------------------------------------------------
great, I can't see any other holes with the new code
::: testing/marionette/marionette-actors.js
@@ +277,5 @@
> + // A null value for this.command_id means we've already processed
> + // a message for the previous value, and so the current message is a
> + // duplicate.
> + logger.warn("ignoring duplicate response for command_id " + command_id);
> + return;
there's some additional whitespace after the ;
@@ +1954,4 @@
> * of the window will be taken.
> */
> screenShot: function MDA_saveScreenshot(aRequest) {
> + this.command_id = this.getCommandId();
nice catch!
Attachment #721366 -
Flags: review?(mdas) → review+
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 54•12 years ago
|
||
Thanks, I fixed the whitespace problem.
https://hg.mozilla.org/integration/mozilla-inbound/rev/a9533266197d
Target Milestone: --- → mozilla22
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Reporter | ||
Comment 60•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
![]() |
||
Comment 63•12 years ago
|
||
(In reply to TinderboxPushlog Robot from comment #62)
> honzab.moz%firemni.cz
> https://tbpl.mozilla.org/php/getParsedLog.php?id=20436500&tree=Try
> b2g_ics_armv7a_gecko_emulator_vm try opt test marionette-webapi on
> 2013-03-07 14:57:18
This run was purposely based on older changes set (https://hg.mozilla.org/try/rev/216ec69cc531).
Assignee | ||
Comment 64•12 years ago
|
||
Uplifted to mozilla-b2g18 for bug 833764: https://hg.mozilla.org/releases/mozilla-b2g18/rev/ff13cd6775b3
status-b2g18:
--- → fixed
status-b2g18-v1.0.0:
--- → wontfix
status-b2g18-v1.0.1:
--- → wontfix
status-firefox22:
--- → fixed
Assignee | ||
Comment 65•12 years ago
|
||
Updated•2 years ago
|
Product: Testing → Remote Protocol
Comment 66•2 years ago
|
||
Moving bug to Testing::Marionette Client and Harness component per bug 1815831.
Component: Marionette → Marionette Client and Harness
Product: Remote Protocol → Testing
You need to log in
before you can comment on or make changes to this bug.
Description
•