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

Regression: Delay is seen while loading print preview contents after checking/unchecking background graphics checkbox

Reported by pranjali...@etouch.net, Feb 23 2018

Issue description

Chrome Version:66.0.3353.0 (Official Build) 545e59b4d718e55d2fa80a0a6c104de9236a0eda-refs/heads/master@{#538677} (64 bit)
 
OS: Mac(10.13.4).

URL: https://pdfobject.com/

Steps to reproduce:
1. Launch chrome and navigate to above URL.
2. Give print command and click on ‘More settings’.
3. Now check/uncheck background graphics checkbox under option in ‘More settings’ and observe.

Actual: Delay is seen while loading print preview contents after checking/unchecking background graphics checkbox
Expected: Delay should not be seen while loading print preview contents after checking/unchecking background graphics checkbox

This is Regression issue broken in 'M-66’ and Using the per-revision bisect providing the bisect results,

Good Build:66.0.3344.0  
Bad Build:66.0.3345.0   

You are probably looking for a change made after 535635 (known good), but no later than 535637 (first known bad).
CHANGELOG URL:

The script might not always return single CL as suspect as some perf builds might get missing due to failure.

https://chromium.googlesource.com/chromium/src/+log/e04a14f4769d6b33b32686ccc3414e917a625ae7..a5676deb1e679035678bc1ed997518cd226378b9

Suspect: https://chromium.googlesource.com/chromium/src/+/96f85b68747a679ea1ac4cd05d6743ae5f7142b7

@skobes:  Could you please look into the issue, pardon me if it has nothing to do with your changes and if possible please assign it to concern owner.

Note: 
1. Issue is not seen on Mac(10.12.6 , 10.13.1) , Win(7,8,8.1,10) and Linux(14.04 LTS)
2. Unable to capture actual result recording ,so providing screenshot.

Kindly refer attached screen cast 
 
Expected_result.mov
6.2 MB View Download
Actual_result.png
573 KB View Download
Labels: RegressedIn-66 FoundIn-66 Target-66

Comment 2 by skobes@chromium.org, Feb 23 2018

Cc: chrishtr@chromium.org szager@chromium.org bokan@chromium.org vmp...@chromium.org
szager/vmpstr: this might be related to the other painting bugs (e.g.  issue 813835 )?

Comment 3 by skobes@chromium.org, Feb 23 2018

Blocking: 417782

Comment 4 by skobes@chromium.org, Feb 23 2018

Cc: -szager@chromium.org skobes@chromium.org
Owner: szager@chromium.org

Comment 5 by bokan@chromium.org, Feb 27 2018

Cc: -vmp...@chromium.org szager@chromium.org
Owner: vmp...@chromium.org

Comment 6 by vmp...@chromium.org, Feb 27 2018

I can't immediately reproduce this. I will try and see if this reproduces before some of our fixes (maybe this was fixed by something else)

Comment 7 by vmp...@chromium.org, Feb 28 2018

Update: I think it's something timing dependent. On a debug ToT build, I can't reproduce no matter how much I try. However, if I do a bisect-builds tool, then every version I try reproduces pretty quickly.

I'm currently building mac release to try and repro on ToT.
Update: Bisected this down to https://codereview.chromium.org/2728273002 which was a year or so ago.

I have a probably-too-aggressive fix here: https://chromium-review.googlesource.com/c/chromium/src/+/942347

We can probably rethink what needs to happen more, but for now it's not a bad fix for a rare case and it fixes the printing dialog.
Cc: pbomm...@chromium.org ccameron@chromium.org josa...@chromium.org
 Issue 814662  has been merged into this issue.
Another approach to fix this could be to analyze every change in 
https://codereview.chromium.org/2728273002. There are various attach/detach
methods that were updated. Perhaps we need to force the ...rebuild_ state on
one of them?
Labels: ReleaseBlock-Stable
Project Member

Comment 12 by bugdroid1@chromium.org, Mar 3 2018

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

commit 93b15c2c0cfeea861d3f64af9ab9dab670060925
Author: Vladimir Levin <vmpstr@chromium.org>
Date: Sat Mar 03 00:07:45 2018

[RLS] Ensure that iframes graphics layers are attached.

This patch ensures that if we remove a child frame's graphics layer from
its parent, that we reattach its (possibly new) root graphics layer back
to the parent it had before.

The parent does not change during this, because we're in a stack
processing the child frame, and the parent would reference the parent
frame that is currently paused.

This mimics pre-RLS code path where the child frame always had a parent
accessible directly from the compositor (ie root_content_layer_), except
here we save off whatever we were attached to already.

R=chrishtr@chromium.org, skobes@chromium.org, pdr@chromium.org

Bug:  815121 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I9e63d2d513df24eaa13a30ee36582b5c807f4aff
Reviewed-on: https://chromium-review.googlesource.com/946566
Commit-Queue: vmpstr <vmpstr@chromium.org>
Reviewed-by: Steve Kobes <skobes@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540692}
[add] https://crrev.com/93b15c2c0cfeea861d3f64af9ab9dab670060925/third_party/WebKit/LayoutTests/compositing/iframe-graphics-tree-changes-parents-does-not-expected.html
[add] https://crrev.com/93b15c2c0cfeea861d3f64af9ab9dab670060925/third_party/WebKit/LayoutTests/compositing/iframe-graphics-tree-changes-parents-does-not.html
[add] https://crrev.com/93b15c2c0cfeea861d3f64af9ab9dab670060925/third_party/WebKit/LayoutTests/compositing/resources/iframe-graphics-tree-changes-parents-does-not-frame.html
[modify] https://crrev.com/93b15c2c0cfeea861d3f64af9ab9dab670060925/third_party/WebKit/Source/core/paint/compositing/PaintLayerCompositor.cpp
[modify] https://crrev.com/93b15c2c0cfeea861d3f64af9ab9dab670060925/third_party/WebKit/Source/core/paint/compositing/PaintLayerCompositor.h

Labels: Merge-Request-66
Status: Fixed (was: Assigned)
Merge request for #12
Project Member

Comment 14 by sheriffbot@chromium.org, Mar 6 2018

Labels: -Merge-Request-66 Merge-Approved-66 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M66. Please go ahead and merge the CL to branch 3359 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), josafat@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 15 by bugdroid1@chromium.org, Mar 6 2018

Labels: -merge-approved-66 merge-merged-3359
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aa2ef48e42025130cb0006b2dd3d1851cbac4268

commit aa2ef48e42025130cb0006b2dd3d1851cbac4268
Author: Vladimir Levin <vmpstr@chromium.org>
Date: Tue Mar 06 19:47:55 2018

[RLS] Ensure that iframes graphics layers are attached.

This patch ensures that if we remove a child frame's graphics layer from
its parent, that we reattach its (possibly new) root graphics layer back
to the parent it had before.

The parent does not change during this, because we're in a stack
processing the child frame, and the parent would reference the parent
frame that is currently paused.

This mimics pre-RLS code path where the child frame always had a parent
accessible directly from the compositor (ie root_content_layer_), except
here we save off whatever we were attached to already.

R=chrishtr@chromium.org, pdr@chromium.org, skobes@chromium.org
TBR=vmpstr@chromium.org

(cherry picked from commit 93b15c2c0cfeea861d3f64af9ab9dab670060925)

Bug:  815121 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I9e63d2d513df24eaa13a30ee36582b5c807f4aff
Reviewed-on: https://chromium-review.googlesource.com/946566
Commit-Queue: vmpstr <vmpstr@chromium.org>
Reviewed-by: Steve Kobes <skobes@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#540692}
Reviewed-on: https://chromium-review.googlesource.com/951967
Reviewed-by: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/branch-heads/3359@{#36}
Cr-Branched-From: 66afc5e5d10127546cc4b98b9117aff588b5e66b-refs/heads/master@{#540276}
[add] https://crrev.com/aa2ef48e42025130cb0006b2dd3d1851cbac4268/third_party/WebKit/LayoutTests/compositing/iframe-graphics-tree-changes-parents-does-not-expected.html
[add] https://crrev.com/aa2ef48e42025130cb0006b2dd3d1851cbac4268/third_party/WebKit/LayoutTests/compositing/iframe-graphics-tree-changes-parents-does-not.html
[add] https://crrev.com/aa2ef48e42025130cb0006b2dd3d1851cbac4268/third_party/WebKit/LayoutTests/compositing/resources/iframe-graphics-tree-changes-parents-does-not-frame.html
[modify] https://crrev.com/aa2ef48e42025130cb0006b2dd3d1851cbac4268/third_party/WebKit/Source/core/paint/compositing/PaintLayerCompositor.cpp
[modify] https://crrev.com/aa2ef48e42025130cb0006b2dd3d1851cbac4268/third_party/WebKit/Source/core/paint/compositing/PaintLayerCompositor.h

Cc: jansson@chromium.org vasanthakumar@chromium.org guidou@chromium.org
 Issue 819221  has been merged into this issue.
Status: Verified (was: Fixed)
This bug is verified in 66.0.3359.31 /10452.11.0 Jaq, Squawks, Chell, Clapper

Sign in to add a comment