New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 780525 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: ----



Sign in to add a comment

smoothness.key_silk_cases failing on Android

Project Member Reported by sullivan@chromium.org, Nov 1 2017

Issue description

smoothness.key_silk_cases failing on multiple builders

Builders failed on: 
- Android Nexus5 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus5%20Perf
- Android Nexus5X WebView Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus5X%20WebView%20Perf
- Android Nexus6 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus6%20Perf
- Android Nexus6 WebView Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus6%20WebView%20Perf
- Android Nexus7v2 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus7v2%20Perf
- Android One Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20One%20Perf


Looks like the failing story is https://polymer-topeka.appspot.com/ in all cases. Range is:

Nexus 5X: 512016:512076
Nexus 6: 511986:512081

Logs:
Traceback (most recent call last):
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/story_runner.py", line 104, in _RunStoryAndProcessErrorIfNeeded
    state.RunStory(results)
  File "/b/swarming/w/ir/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 52, in traced_function
    return func(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/page/shared_page_state.py", line 327, in RunStory
    self._current_page.Run(self)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/page/__init__.py", line 118, in Run
    self.RunPageInteractions(action_runner)
  File "/b/swarming/w/ir/tools/perf/page_sets/key_silk_cases.py", line 36, in RunPageInteractions
    self.PerformPageInteractions(action_runner)
  File "/b/swarming/w/ir/tools/perf/page_sets/key_silk_cases.py", line 655, in PerformPageInteractions
    action_runner.WaitForElement(selector=first_name)
  File "/b/swarming/w/ir/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/actions/action_runner.py", line 290, in WaitForElement
    timeout_in_seconds=timeout_in_seconds))
  File "/b/swarming/w/ir/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/actions/action_runner.py", line 63, in _RunAction
    action.RunAction(self._tab)
  File "/b/swarming/w/ir/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/actions/wait.py", line 22, in RunAction
    wait=True, timeout_in_seconds=self.timeout_in_seconds)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/actions/page_action.py", line 127, in EvaluateCallbackWithElement
    tab.WaitForJavaScriptCondition(code, timeout=timeout_in_seconds)
  File "/b/swarming/w/ir/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/browser/web_contents.py", line 239, in WaitForJavaScriptCondition
    return self._inspector_backend.WaitForJavaScriptCondition(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/b/swarming/w/ir/third_party/catapult/telemetry/telemetry/internal/backends/chrome_inspector/inspector_backend.py", line 302, in WaitForJavaScriptCondition
    e.message + '\n' + debug_message)
TimeoutException: Timed out while waiting 60s for IsJavaScriptExpressionTrue.
 
Cc: kochi@chromium.org
Owner: kochi@chromium.org
Status: Assigned (was: Available)

=== Auto-CCing suspected CL author kochi@chromium.org ===

Hi kochi@chromium.org, the bisect results pointed to your CL, please take a look at the
results.


=== BISECT JOB RESULTS ===
Test failure found with culprit

Suspected Commit
  Author : Takayoshi Kochi
  Commit : bdf17920ad6a1d02c97159fb0e986eaf2c7fc30f
  Date   : Thu Oct 26 23:42:28 2017
  Subject: Disable multiple shadow roots

Bisect Details
  Configuration: android_nexus5X_perf_bisect
  Benchmark    : smoothness.key_silk_cases
  Metric       : avg_surface_fps/https___polymer-topeka.appspot.com_

Revision             Exit Code      N
chromium@511965      0 +- N/A       20      good
chromium@511993      0 +- N/A       20      good
chromium@512007      0 +- N/A       20      good
chromium@512014      0 +- N/A       20      good
chromium@512016      0 +- N/A       20      good
chromium@512017      1 +- N/A       20      bad       <--
chromium@512018      1 +- N/A       20      bad
chromium@512021      1 +- N/A       20      bad
chromium@512076      1 +- N/A       20      bad

To Run This Test
  src/tools/perf/run_benchmark -v --browser=android-chromium --output-format=chartjson --upload-results --pageset-repeat=1 --also-run-disabled-tests --story-filter=https...polymer.topeka.appspot.com. smoothness.key_silk_cases

More information on addressing performance regressions:
  http://g.co/ChromePerformanceRegressions

Debug information about this bisect:
  https://chromeperf.appspot.com/buildbucket_job_status/8964106872411296000


For feedback, file a bug with component Speed>Bisection
Cc: ajuma@chromium.org
cc-ing ajuma, owner of smoothness.key_silk_cases: ajuma, is this test case for https://polymer-topeka.appspot.com/ still valid? We can ask kochi to roll back the CL, but it looks like maybe the problem is that the site is very outdated and its use of shadow roots is no longer supported?

I'm going to create a CL to disable the story while we work out what to do.

Comment 4 by kochi@chromium.org, Nov 2 2017

Looks like polymer-topeka.appspot.com is using very old Polymer, which uses
shadow DOM v0 and won't work after my CL anyway (even before my CL, I doubt
the site is not a good test case).

So disable, or remove the case is the way to go.

Comment 5 by ajuma@chromium.org, Nov 2 2017

The site seems to be trying to create multiple shadow roots (exactly the feature that's removed by the CL). When I try opening it in Canary, I get:

Uncaught DOMException: Failed to execute 'createShadowRoot' on 'Element': Shadow root cannot be created on a host which already hosts a shadow tree.
    at HTMLElement.shadowFromTemplate (https://polymer-topeka.appspot.com/build.js:20:26089)
    at HTMLElement.parseDeclaration (https://polymer-topeka.appspot.com/build.js:20:25862)
    at HTMLElement.parseDeclarations (https://polymer-topeka.appspot.com/build.js:20:25722)
    at HTMLElement.makeElementReady (https://polymer-topeka.appspot.com/build.js:20:25000)
    at HTMLElement.bindFinished (https://polymer-topeka.appspot.com/build.js:20:23015)
    at processBindings (https://polymer-topeka.appspot.com/build.js:19:13623)
    at cloneAndBindInstance (https://polymer-topeka.appspot.com/build.js:19:15527)
    at cloneAndBindInstance (https://polymer-topeka.appspot.com/build.js:19:15316)
    at cloneAndBindInstance (https://polymer-topeka.appspot.com/build.js:19:15316)
    at cloneAndBindInstance (https://polymer-topeka.appspot.com/build.js:19:15316)

The site looks like it hasn't been updated in a couple years: https://github.com/Polymer/topeka

kochi, is there a straightforward way to convert the use of multiple shadow roots over to the currently supported shadow dom APIs?

Comment 6 by ajuma@chromium.org, Nov 2 2017

Sorry kochi, I didn't see your message before replying :)

Removing the test case sgtm.
Project Member

Comment 7 by bugdroid1@chromium.org, Nov 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dfeac0215c0e93628f695e71324c125b20002250

commit dfeac0215c0e93628f695e71324c125b20002250
Author: Annie Sullivan <sullivan@chromium.org>
Date: Fri Nov 03 15:13:58 2017

Disable failing polymer story for smoothness.key_silk_cases.

Bug: 780525
Change-Id: Ie83a02296c96f7c8d039a2d59f1c9d195fa267a9
Reviewed-on: https://chromium-review.googlesource.com/751041
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Annie Sullivan <sullivan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#513775}
[modify] https://crrev.com/dfeac0215c0e93628f695e71324c125b20002250/tools/perf/benchmarks/smoothness.py

Labels: Pri-3
Owner: ajuma@chromium.org
Now that the test is disabled, assigning to ajuma to either remove it or replace it. Lowering priority.

Sign in to add a comment