MediaRouter.Cast.Channel.ConnectResult Can Be Both Linear and Boolean |
|||||||||||
Issue descriptionChrome Version: HEAD OS: all MediaRouter.Cast.Channel.ConnectResult is defined as a "boolean" histogram here: https://cs.chromium.org/chromium/src/chrome/browser/media/router/discovery/media_sink_discovery_metrics.cc?rcl=6089944c74a603d90cf1ade1ba8753890f318568&l=93 However, it can also be created as a "linear" histogram here: https://cs.chromium.org/chromium/src/extensions/browser/api/metrics_private/metrics_private_api.cc?rcl=ab7f6879b56532d0e1fbe42db3907ee6f478f465&l=134 The difference causes the browser to crash. One of them needs to be changed. Here's are two crashes with minidumps showing both execution paths: https://crash.corp.google.com/browse?q=custom_data.ChromeCrashProto.magic_signature_1.name%3D%27base%3A%3AHistogram%3A%3AFactory%3A%3ABuild%27%20AND%20product.Version%3E%3D%2763%27%20AND%20ReportID%3D%27c0591522984a516f%27&sql_dialect=dremelsql&ignore_case=false&enable_rewrite=true&omit_field_name=&omit_field_value=&omit_field_opt=%3D&stbtiq=&reportid=&index=0 https://crash.corp.google.com/browse?q=custom_data.ChromeCrashProto.magic_signature_1.name%3D%27base%3A%3AHistogram%3A%3AFactory%3A%3ABuild%27%20AND%20product.Version%3E%3D%2763%27%20AND%20ReportID%3D%27081b7f9233b958a7%27&sql_dialect=dremelsql&ignore_case=false&enable_rewrite=true&omit_field_name=&omit_field_value=&omit_field_opt=%3D&stbtiq=&reportid=&index=0 You can find more crashes here, though it's possible there are some other bad histograms in there, too: https://crash.corp.google.com/browse?q=custom_data.ChromeCrashProto.magic_signature_1.name%3D%27base%3A%3AHistogram%3A%3AFactory%3A%3ABuild%27%20AND%20product.Version%3E%3D%2763%27&sql_dialect=dremelsql&ignore_case=false&enable_rewrite=true&omit_field_name=&omit_field_value=&omit_field_opt=%3D#-property-selector,+productversion
,
Oct 26 2017
,
Oct 26 2017
The same metric is recorded extension-side with an enum with values FAILURE: 0 and SUCCESS: 1. We'll need to change the browser side recording to be consistent with that before enabling in-browser Cast discovery.
,
Oct 26 2017
Pls apply appropriate OSs label. Thank you.
,
Oct 26 2017
,
Oct 27 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7c3ecc068e20da5fc83908efed8a5135f3927fdd commit 7c3ecc068e20da5fc83908efed8a5135f3927fdd Author: Bin Zhao <zhaobin@chromium.org> Date: Fri Oct 27 01:21:25 2017 [Media Router] Record channel connect result as enum instead of boolean "MediaRouter.Cast.Channel.ConnectResult" is recorded as enum at extension side, but as boolean at browser side, causing Chrome crash. Changed to record connect result as enum as well at browser side. Bug: 778761 Change-Id: I9b4270091a4b061660301fa36f9630e23abc628b Reviewed-on: https://chromium-review.googlesource.com/740563 Commit-Queue: Bin Zhao <zhaobin@chromium.org> Reviewed-by: Derek Cheng <imcheng@chromium.org> Cr-Commit-Position: refs/heads/master@{#512052} [modify] https://crrev.com/7c3ecc068e20da5fc83908efed8a5135f3927fdd/chrome/browser/media/router/discovery/mdns/cast_media_sink_service_impl.cc [modify] https://crrev.com/7c3ecc068e20da5fc83908efed8a5135f3927fdd/chrome/browser/media/router/discovery/media_sink_discovery_metrics.cc [modify] https://crrev.com/7c3ecc068e20da5fc83908efed8a5135f3927fdd/chrome/browser/media/router/discovery/media_sink_discovery_metrics.h [modify] https://crrev.com/7c3ecc068e20da5fc83908efed8a5135f3927fdd/chrome/browser/media/router/discovery/media_sink_discovery_metrics_unittest.cc
,
Oct 27 2017
We have turned off EnableCastDiscovery finch feature in Dev and Canary for M63. It should fix this issue and unblock M63 release.
,
Oct 27 2017
Would it be better to just merge this change to M63?
,
Oct 27 2017
We are planning to merge this back to M63. Adding tag.
,
Oct 28 2017
This bug requires manual review: M63 has already been promoted to the beta branch, so this requires manual review Please contact the milestone owner if you have questions. Owners: cmasso@(Android), cmasso@(iOS), gkihumba@(ChromeOS), govind@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 28 2017
Per comment #7, feature was disabled via finch to unblock M63 release. May I please know the reason for this merge request? Please note M63 is already promoted to Beta so merge bar is very high.
,
Oct 30 2017
We would still like to roll out or at least start experimenting in-browser Cast discovery in M63. We had been rolling it out to canary/dev for a week prior to disabling the feature, and AFAICT, there are no other crashes observed that are related to the feature. The fix itself is quite small. Launch bug: https://bugs.chromium.org/p/chromium/issues/detail?id=752604
,
Oct 30 2017
Thank you imcheng@. Can this feature easily disabled via finch on M63 if needed?
,
Oct 30 2017
Yes, the in-browser Cast discovery logic can be disabled via Finch (feature name is EnableCastDiscovery).
,
Oct 30 2017
Approving merge to M63 branch 3239 based on comment #12 and #14. Please merge ASAP. Thank you.
,
Oct 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ec0ec7e6f3e5ce48b955760f0f3e5e353e59741b commit ec0ec7e6f3e5ce48b955760f0f3e5e353e59741b Author: Bin Zhao <zhaobin@chromium.org> Date: Mon Oct 30 20:34:08 2017 [Media Router] Record channel connect result as enum instead of boolean "MediaRouter.Cast.Channel.ConnectResult" is recorded as enum at extension side, but as boolean at browser side, causing Chrome crash. Changed to record connect result as enum as well at browser side. Bug: 778761 Change-Id: I9b4270091a4b061660301fa36f9630e23abc628b Reviewed-on: https://chromium-review.googlesource.com/740563 Commit-Queue: Bin Zhao <zhaobin@chromium.org> Reviewed-by: Derek Cheng <imcheng@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#512052}(cherry picked from commit 7c3ecc068e20da5fc83908efed8a5135f3927fdd) Reviewed-on: https://chromium-review.googlesource.com/744741 Reviewed-by: Bin Zhao <zhaobin@chromium.org> Cr-Commit-Position: refs/branch-heads/3239@{#299} Cr-Branched-From: adb61db19020ed8ecee5e91b1a0ea4c924ae2988-refs/heads/master@{#508578} [modify] https://crrev.com/ec0ec7e6f3e5ce48b955760f0f3e5e353e59741b/chrome/browser/media/router/discovery/mdns/cast_media_sink_service_impl.cc [modify] https://crrev.com/ec0ec7e6f3e5ce48b955760f0f3e5e353e59741b/chrome/browser/media/router/discovery/media_sink_discovery_metrics.cc [modify] https://crrev.com/ec0ec7e6f3e5ce48b955760f0f3e5e353e59741b/chrome/browser/media/router/discovery/media_sink_discovery_metrics.h [modify] https://crrev.com/ec0ec7e6f3e5ce48b955760f0f3e5e353e59741b/chrome/browser/media/router/discovery/media_sink_discovery_metrics_unittest.cc
,
Oct 30 2017
[Bulk Edit] URGENT - PTAL. M63 Stable promotion is coming soon and your bug is labelled as Stable ReleaseBlock, pls make sure to land the fix and get it merged into the release branch ASAP. Thank you.
,
Oct 30 2017
,
Dec 20 2017
This still isn't fixed. There are crashes due to boolean/linear mismatch. It's boolean here: https://cs.chromium.org/chromium/src/chrome/browser/media/router/discovery/media_sink_discovery_metrics.cc?rcl=2f61fdc086d80c57bc523dc38056f926325190f8&l=95 It's linear somewhere else (first). Here are a couple example crashes in M64: https://crash.corp.google.com/browse?q=product.Version%3E%3D%2764.0%27%20AND%20product.Version%20LIKE%20%27__.%25.%25.%25%27%20AND%20product.name%20CONTAINS%20%27Chrome%27%20AND%20custom_data.ChromeCrashProto.magic_signature_1.component%3D%27src%2Fbase%2Fmetrics%27%20AND%20custom_data.ChromeCrashProto.magic_signature_1.name%3D%27base%3A%3AHistogram%3A%3AFactory%3A%3ABuild%27%20AND%20product.name%3D%27Chrome%27%20AND%20ReportID%3D%27d9aa5eb4a8ff86a2%27&sql_dialect=dremelsql&ignore_case=false&enable_rewrite=true&omit_field_name=&omit_field_value=&omit_field_opt=%3D&stbtiq=&reportid=&index=0 https://crash.corp.google.com/browse?q=product.Version%3E%3D%2764.0%27%20AND%20product.Version%20LIKE%20%27__.%25.%25.%25%27%20AND%20product.name%20CONTAINS%20%27Chrome%27%20AND%20custom_data.ChromeCrashProto.magic_signature_1.component%3D%27src%2Fbase%2Fmetrics%27%20AND%20custom_data.ChromeCrashProto.magic_signature_1.name%3D%27base%3A%3AHistogram%3A%3AFactory%3A%3ABuild%27%20AND%20product.name%3D%27Chrome%27%20AND%20ReportID%3D%27c230d15e2017da9f%27&sql_dialect=dremelsql&ignore_case=false&enable_rewrite=true&omit_field_name=&omit_field_value=&omit_field_opt=%3D&stbtiq=&reportid=&index=0
,
Dec 20 2017
bcwhite@: Those crash reports are from November. I don't see any occurrences after 64.0.3251.1.
,
Dec 20 2017
Oh, okay. For some reason I was thinking that you'd fixed it back in M63. Sorry for that. |
|||||||||||
►
Sign in to add a comment |
|||||||||||
Comment 1 by bcwh...@chromium.org
, Oct 26 2017