Win10 native notification - invalid launch id for ~1% usage |
|||
Issue descriptionChrome Version: 68.0.3419.0 (Official Build) canary (64-bit) OS: Win10 UMA metric Notifications.Windows.ActivationStatus show that ~1% activation failed with *INVALID_LAUNCH_ID.
,
May 5 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/91695ae4ffcb13db2fb6df061d198d7474d32871 commit 91695ae4ffcb13db2fb6df061d198d7474d32871 Author: Xi Cheng <chengx@chromium.org> Date: Sat May 05 00:34:43 2018 Dedup enums in Notifications.Windows.ActivationStatus Methods GetProfileIdFromLaunchId() and HandleActivation() are both called in a single notification activation run. They log the same failure to UMA, which skews the UMA failure metrics. This CL fixes it. Bug: 734095 , 839942 Change-Id: If7e7cd63869a19b815052bd2b470577e06660252 Reviewed-on: https://chromium-review.googlesource.com/1040349 Reviewed-by: Ilya Sherman <isherman@chromium.org> Reviewed-by: Peter Beverloo <peter@chromium.org> Reviewed-by: Finnur Thorarinsson <finnur@chromium.org> Commit-Queue: Xi Cheng <chengx@chromium.org> Cr-Commit-Position: refs/heads/master@{#556272} [modify] https://crrev.com/91695ae4ffcb13db2fb6df061d198d7474d32871/chrome/browser/notifications/notification_platform_bridge_win.cc [modify] https://crrev.com/91695ae4ffcb13db2fb6df061d198d7474d32871/chrome/browser/notifications/notification_platform_bridge_win_metrics.h [modify] https://crrev.com/91695ae4ffcb13db2fb6df061d198d7474d32871/tools/metrics/histograms/enums.xml [modify] https://crrev.com/91695ae4ffcb13db2fb6df061d198d7474d32871/tools/metrics/histograms/histograms.xml
,
May 5 2018
Now Notifications.Windows.ActivationStatus only has two enums: SUCCESS and INVALID_LAUNCH_ID.
,
May 19 2018
Hi Finnur, do you have any insights here? Thanks!
,
May 22 2018
Hmm, hard to say. It could be non-existent (blank) or garbled or invalid in some other way. Maybe the contents of notification_id is messing up the parsing... As for why that would be, I have no idea. But we could get more info by adding INVALID_LAUNCH_ID_BLANK and/or adding metrics to the parsing code (NotificationLaunchId dtor that takes a string as param)...
,
May 23 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fa67db5c1a6e20836650aa14e15f7a6507a44da0 commit fa67db5c1a6e20836650aa14e15f7a6507a44da0 Author: Xi Cheng <chengx@chromium.org> Date: Wed May 23 20:50:39 2018 Log notification launch id decode status We have ~1% invalid launch ids that are invalid, which needs more investigation. Bug: 839942 , 734095 Change-Id: Ibebb6beeebb6fe4200d49a728dde56d979a795cc Reviewed-on: https://chromium-review.googlesource.com/1068655 Commit-Queue: Xi Cheng <chengx@chromium.org> Reviewed-by: Peter Beverloo <peter@chromium.org> Reviewed-by: Finnur Thorarinsson <finnur@chromium.org> Reviewed-by: Brian White <bcwhite@chromium.org> Cr-Commit-Position: refs/heads/master@{#561249} [modify] https://crrev.com/fa67db5c1a6e20836650aa14e15f7a6507a44da0/chrome/browser/notifications/notification_launch_id.cc [modify] https://crrev.com/fa67db5c1a6e20836650aa14e15f7a6507a44da0/tools/metrics/histograms/enums.xml [modify] https://crrev.com/fa67db5c1a6e20836650aa14e15f7a6507a44da0/tools/metrics/histograms/histograms.xml
,
May 26 2018
Quick update: According to Notifications.Windows.LaunchIdDecodeStatus metric data, the only failure reason is that the launch id string is empty.
,
May 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d326a008e79cb49bdc3871e08bf3fb8ef902b871 commit d326a008e79cb49bdc3871e08bf3fb8ef902b871 Author: Xi Cheng <chengx@chromium.org> Date: Wed May 30 03:53:55 2018 Log execute status of NotificationActivator::Activate The metric is used to help investigate the issue of empty launch id string and verify the fix to the issue of window's not becoming foreground. Bug: 839942 , 837796 , 734095 Change-Id: Ia52d685d0b2c866aa1d048a984bf7932e5fa52f8 Reviewed-on: https://chromium-review.googlesource.com/1077369 Reviewed-by: Ilya Sherman <isherman@chromium.org> Commit-Queue: Xi Cheng <chengx@chromium.org> Cr-Commit-Position: refs/heads/master@{#562725} [modify] https://crrev.com/d326a008e79cb49bdc3871e08bf3fb8ef902b871/chrome/notification_helper/notification_activator.cc [modify] https://crrev.com/d326a008e79cb49bdc3871e08bf3fb8ef902b871/tools/metrics/histograms/enums.xml [modify] https://crrev.com/d326a008e79cb49bdc3871e08bf3fb8ef902b871/tools/metrics/histograms/histograms.xml
,
May 30 2018
Another update: this empty launch-id string issue only occurs during activation, so I am totally responsible for it :-) Hopefully the CL as in comment 8 will give me more ideas.
,
Jun 5 2018
According to metric Notifications.NotificationHelper.NotificationActivatorSecondaryStatus, the cause of this issue is that the launch id string supplied from NotificationActivator::Activate (which is invoked by Windows) is empty!! I checked the launch id related metrics in display, and they are almost all good. So it's highly suspicious that this is something to do with Windows.
,
Jun 12 2018
Per the discussion with Andrew from Microsoft, the empty launch id string is generated when the app title in the Action Center is clicked. This addresses the concern that we are losing some notification related information. This bug can be closed. As for the issue that clicking app title in the Action Center makes the toast notification disappear from AC, I will file a separate bug after more investigation. |
|||
►
Sign in to add a comment |
|||
Comment 1 by chengx@chromium.org
, May 4 2018