New issue
Advanced search Search tips

Issue 909586 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 17
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug
Flaky-Test: media/controls/volumechange-stopimmediatepropagation.html

Blocking:
issue 521176



Sign in to add a comment

virtual/video-surface-layer/media/controls/volumechange-stopimmediatepropagation.html is flaky

Project Member Reported by Findit, Nov 28

Issue description


Flaky test: virtual/video-surface-layer/media/controls/volumechange-stopimmediatepropagation.html
Sample failed build due to flakiness: https://ci.chromium.org/buildbot/chromium.linux/Linux%20Tests%20%28dbg%29%281%29/76036
Test output log: https://chromium-swarm.appspot.com/task?id=417113e1c79a4010
Culprit (70.0% confidence): r611305
Analysis: https://findit-for-me.appspot.com/waterfall/flake?key=ag9zfmZpbmRpdC1mb3ItbWVy6QELEhdNYXN0ZXJGbGFrZUFuYWx5c2lzUm9vdCKyAWNocm9taXVtLmxpbnV4L0xpbnV4IFRlc3RzIChkYmcpKDEpLzc2MDM2L3dlYmtpdF9sYXlvdXRfdGVzdHMvZG1seWRIVmhiQzkyYVdSbGJ5MXpkWEptWVdObExXeGhlV1Z5TDIxbFpHbGhMMk52Ym5SeWIyeHpMM1p2YkhWdFpXTm9ZVzVuWlMxemRHOXdhVzF0WldScFlYUmxjSEp2Y0dGbllYUnBiMjR1YUhSdGJBPT0MCxITTWFzdGVyRmxha2VBbmFseXNpcxgBDA

Please revert the culprit, or disable the test and find the appropriate owner.

If the culprit above is wrong, please file a bug using this link:
https://bugs.chromium.org/p/chromium/issues/entry?status=Unconfirmed&labels=Pri-1,Test-Findit-Wrong&components=Tools%3ETest%3EFindit%3EFlakiness&summary=%5BFindit%5D%20Flake%20Analyzer%20-%20Wrong%20result%20for%20virtual/video-surface-layer/media/controls/volumechange-stopimmediatepropagation.html&comment=Link%20to%20Analysis%3A%20https://findit-for-me.appspot.com/waterfall/flake?key=ag9zfmZpbmRpdC1mb3ItbWVy6QELEhdNYXN0ZXJGbGFrZUFuYWx5c2lzUm9vdCKyAWNocm9taXVtLmxpbnV4L0xpbnV4IFRlc3RzIChkYmcpKDEpLzc2MDM2L3dlYmtpdF9sYXlvdXRfdGVzdHMvZG1seWRIVmhiQzkyYVdSbGJ5MXpkWEptWVdObExXeGhlV1Z5TDIxbFpHbGhMMk52Ym5SeWIyeHpMM1p2YkhWdFpXTm9ZVzVuWlMxemRHOXdhVzF0WldScFlYUmxjSEp2Y0dGbllYUnBiMjR1YUhSdGJBPT0MCxITTWFzdGVyRmxha2VBbmFseXNpcxgBDA

Automatically posted by the findit-for-me app (https://goo.gl/Ot9f7N).
 
Culprit sounds plausible. A similar patch had been reverted for similar failing tests: https://bugs.chromium.org/p/chromium/issues/detail?id=905506#c15

Issuing revert.
 Issue 909585  has been merged into this issue.
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 28

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

commit 964cc812e77d2e3299f20248d9c95ab2166d8bba
Author: Tim Schumann <tschumann@chromium.org>
Date: Wed Nov 28 08:47:03 2018

Revert "Remove synchronous blocking from PipelineImpl::Stop() - take 2."

This reverts commit 63dd5d456b12a62a19793b361baea8b732853458.

Reason for revert: Causes flakes in the following tests:
virtual/video-surface-layer/media/track/track-cue-rendering-position-auto.html

virtual/video-surface-layer/media/controls/volumechange-stopimmediatepropagation.html

Bug:  909586 

Original change's description:
> Remove synchronous blocking from PipelineImpl::Stop() - take 2.
> 
> We should be able to avoid this with careful use of a trampoline
> through the media thread after PipelineImpl::Stop() completes.
> 
> This is an updated version of the last CL:
> https://chromium-review.googlesource.com/c/chromium/src/+/1336659
> 
> The difference is we now also preserve the RendererFactorySelector
> until after renderer shutdown. This passes all the failing tests
> I could find locally.
> 
> BUG= 521176 ,  905506 
> TEST=passes cq.
> R=​sandersd
> 
> Change-Id: I86c4814a91ee6c41f20f6bb8a05859ac44171d7e
> Reviewed-on: https://chromium-review.googlesource.com/c/1351791
> Reviewed-by: Dan Sanders <sandersd@chromium.org>
> Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#611305}

TBR=dalecurtis@chromium.org,sandersd@chromium.org

Change-Id: I8d70751211f938756bf5b98e86b298f4fe921617
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  521176 ,  905506 
Reviewed-on: https://chromium-review.googlesource.com/c/1352326
Reviewed-by: Tim Schumann <tschumann@chromium.org>
Commit-Queue: Tim Schumann <tschumann@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611602}
[modify] https://crrev.com/964cc812e77d2e3299f20248d9c95ab2166d8bba/media/base/data_source.h
[modify] https://crrev.com/964cc812e77d2e3299f20248d9c95ab2166d8bba/media/base/pipeline_impl.cc
[modify] https://crrev.com/964cc812e77d2e3299f20248d9c95ab2166d8bba/media/blink/multibuffer_data_source.cc
[modify] https://crrev.com/964cc812e77d2e3299f20248d9c95ab2166d8bba/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/964cc812e77d2e3299f20248d9c95ab2166d8bba/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/964cc812e77d2e3299f20248d9c95ab2166d8bba/media/blink/webmediaplayer_impl_unittest.cc

Labels: -Pri-1 -Sheriff-Chromium Pri-2
Owner: dalecur...@chromium.org
Blocking: 521176
Cc: lethalantidote@chromium.org liber...@chromium.org
Status: Assigned (was: Untriaged)
Huh, interesting, without the synchronous Stop() these tests aren't advancing enough to paint the first frame. I'll look over the tests themselves since they may just not be waiting for the right ready state.
Hmm, I think these tests are just flaky, they are only waiting for metadata which isn't enough to guarantee that a video frame has even been renderered. Will try to deflake the tests and then revert revert.

Can repro locally with linux debug build.
Project Member

Comment 7 by bugdroid1@chromium.org, Dec 13

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

commit f273f8f008de42ca3a951f85661ded5615f33e7a
Author: Dale Curtis <dalecurtis@chromium.org>
Date: Thu Dec 13 23:40:33 2018

Remove synchronous blocking from PipelineImpl::Stop() - take 3.

We should be able to avoid this with careful use of a trampoline
through the media thread after PipelineImpl::Stop() completes.

This is an updated version of the last CL:
https://chromium-review.googlesource.com/c/chromium/src/+/1351791

PS#1 is the original change, latest PS is the fixed change.

The differences are as follows:
- We now disconnect the WebSurfaceLayerBridge from WMPI and preserve
it until after renderer shutdown -- otherwise layout tests don't
always get the last painted frame.
- When stopping the pipeline for HLS playback we now destruct the
DataSource and Demuxer at time of OnError(), rather than waiting until
the subsequent StartPipeline() call. This ensures the survive until
renderer stop completes.

BUG= 521176 ,  905506 ,  909586 , 909832
TEST=cq, layout tests, hls playback test.

Change-Id: Ifa895a6abf2b2ca2d51c126c31f210e594b261b0
Reviewed-on: https://chromium-review.googlesource.com/c/1351531
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Reviewed-by: Frank Liberato <liberato@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616493}
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/content/renderer/media/stream/webmediaplayer_ms_unittest.cc
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/media/base/data_source.h
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/media/base/pipeline_impl.cc
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/media/blink/multibuffer_data_source.cc
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/third_party/blink/public/platform/web_surface_layer_bridge.h
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/third_party/blink/renderer/platform/graphics/surface_layer_bridge.cc
[modify] https://crrev.com/f273f8f008de42ca3a951f85661ded5615f33e7a/third_party/blink/renderer/platform/graphics/surface_layer_bridge.h

Status: Fixed (was: Assigned)

Sign in to add a comment