New issue
Advanced search Search tips

Issue 619242 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

fast/events/message-port-gc-closed-cloned.html fails with https://codereview.chromium.org/2049263003/

Project Member Reported by wangxianzhu@chromium.org, Jun 11 2016

Issue description

https://codereview.chromium.org/2049263003 causes failure of fast/events/message-port-gc-closed-cloned.html on linux_chromium_rel_ng [1]. The failure seems not flaky. Didn't the test failing on other bots.

The actual result is:

MessagePorts (and their execution contexts) should be collected by GC once close() has been called on them
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


FAIL iframeDocGC.wasCollected should be true. Was false.
PASS successfullyParsed is true

TEST COMPLETE

I didn't see any relationship between my CL and the test. Would like to debug it but couldn't reproduce it locally with either release or debug build.


[1] https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/244413

 
Labels: -Pri-2 ReleaseBlock-Beta Pri-1
I'm going to land the CL first but mark this bug ReleaseBlock-Beta, before we figure out whether the failure will affect real users.
Project Member

Comment 2 by bugdroid1@chromium.org, Jun 11 2016

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

commit 43b0c4f23351a0bbfaccfea8d0ce10fec85977db
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Sat Jun 11 00:36:57 2016

Check rect under-invalidations

There are two modes:
- Using RuntimeEnabledFeatures::slimmingPaintUnderInvalidationChecking.
  When the feature is enabled, for each paint, changed pixels without
  invalidation are logged and marked red.
- In layout tests, when tracking paint invalidation, content_shell will
  crash if there are any changed pixels without invalidation.

The method is: for each GraphicsLayer, after each paint, save the
painted picture. After another paint, rasterize the old and new pictures
into bitmaps and compare the bitmaps. If any pixel changed but not
covered by paint invalidations between the paints, take action (log,
mark as red or crash).

BUG= 617799 , 619242 
R=chrishtr@chromium.org, pdr@chromium.org

Review URL: https://codereview.chromium.org/2049263003 .

Cr-Commit-Position: refs/heads/master@{#399331}

[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/LayoutTests/fast/repaint/resources/text-based-repaint.js
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/GraphicsLayer.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/web/LinkHighlightImpl.cpp

Cc: haraken@chromium.org
Labels: -Pri-1 -ReleaseBlock-Beta Pri-3
Turned out that the test failed on try-bot only. The test is passing on all waterfall build bots: http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=fast%2Fevents%2Fmessage-port-gc-closed-cloned.html

Lowering priority and remove RBB.

Any hints/suggestions are welcome.

Comment 4 by adamk@chromium.org, Jun 13 2016

Sorry, I have no ideas here, especially not any idea why such a seemingly-unrelated change should have this effect.

Comment 5 by kouhei@chromium.org, Jun 13 2016

The layouttest needs to be updated to use asyncGC() instead of GC() which is known to be non-deterministic
Status: Fixed (was: Assigned)
Project Member

Comment 8 by bugdroid1@chromium.org, Jun 15 2016

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

commit 43b0c4f23351a0bbfaccfea8d0ce10fec85977db
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Sat Jun 11 00:36:57 2016

Check rect under-invalidations

There are two modes:
- Using RuntimeEnabledFeatures::slimmingPaintUnderInvalidationChecking.
  When the feature is enabled, for each paint, changed pixels without
  invalidation are logged and marked red.
- In layout tests, when tracking paint invalidation, content_shell will
  crash if there are any changed pixels without invalidation.

The method is: for each GraphicsLayer, after each paint, save the
painted picture. After another paint, rasterize the old and new pictures
into bitmaps and compare the bitmaps. If any pixel changed but not
covered by paint invalidations between the paints, take action (log,
mark as red or crash).

BUG= 617799 , 619242 
R=chrishtr@chromium.org, pdr@chromium.org

Review URL: https://codereview.chromium.org/2049263003 .

Cr-Commit-Position: refs/heads/master@{#399331}

[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/LayoutTests/fast/repaint/resources/text-based-repaint.js
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/GraphicsLayer.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
[modify] https://crrev.com/43b0c4f23351a0bbfaccfea8d0ce10fec85977db/third_party/WebKit/Source/web/LinkHighlightImpl.cpp

Sign in to add a comment