New issue
Advanced search Search tips

Issue 918182 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Today
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

DCHECK failure in BlinkTestController::OnResetDone

Project Member Reported by jbroman@chromium.org, Dec 28

Issue description

This DCHECK:

      DCHECK_EQ(GURL(url::kAboutBlankURL),
                rvh->GetMainFrame()->GetLastCommittedURL());

consistently fails in builds with DCHECKs enabled. This means that, for instance, the luci.chromium.try:layout_test_leak_detection bot fails because all tests crash.

To repro locally, build with DCHECKs enabled and run layout tests with
  --additional-driver-flag=--enable-leak-detection

Sample test stderr:

[257936:257936:1228/144823.370084:FATAL:blink_test_controller.cc(1296)] Check failed: GURL(url::kAboutBlankURL) == rvh->GetMainFrame()->GetLastCommittedURL() (about:blank vs. file:///src/chromium/src/third_party/blink/web_tests/accessibility/table-cells.html)
#0 0x7f453604598d base::debug::StackTrace::StackTrace()
#1 0x7f4535d3703a base::debug::StackTrace::StackTrace()
#2 0x7f4535da72bb logging::LogMessage::~LogMessage()
#3 0x559b45ba001b content::BlinkTestController::OnResetDone()
#4 0x559b45bb19a1 _ZN4base20DispatchToMethodImplIPN7content19BlinkTestControllerEMS2_FvvENSt3__15tupleIJEEEJEEEvRKT_T0_OT1_NS6_16integer_sequenceImJXspT2_EEEE
#5 0x559b45bb1918 _ZN4base16DispatchToMethodIPN7content19BlinkTestControllerEMS2_FvvENSt3__15tupleIJEEEEEvRKT_T0_OT1_
#6 0x559b45bb18a4 _ZN3IPC16DispatchToMethodIN7content19BlinkTestControllerEMS2_FvvEvNSt3__15tupleIJEEEEEvPT_T0_PT1_OT2_
#7 0x559b45babc13 _ZN3IPC8MessageTI31ShellViewHostMsg_ResetDone_MetaNSt3__15tupleIJEEEvE8DispatchIN7content19BlinkTestControllerES8_vMS8_FvvEEEbPKNS_7MessageEPT_PT0_PT1_T2_
#8 0x559b45b9f22f content::BlinkTestController::OnMessageReceived()

Assigning to dgozman@, who most recently touched this AFAICT?
 
Cc: bokan@chromium.org
I just ran into this locally. This seems pretty bad for the leak detector, doesn't this mean that we're counting objects before the about:blank load is committed and so we're likely to get false-positives?
Yeah, this looks pretty bad. I'll take a look.
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 18 (4 days ago)

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

commit 8ba6dab66b3c265c3800d112db5d337bf40e2f62
Author: Dmitry Gozman <dgozman@chromium.org>
Date: Fri Jan 18 21:35:15 2019

Fix leak detector in web_tests

- Wait for about:blank to commit before sending
  ShellViewHostMsg_ResetDone. This ensures clean environment,
  which is especially important for leak detection.
- Do not expect about:blank in BlinkTestController, because
  browser might not know that we committed about:blank just yet.

Bug:  918182 
Change-Id: Ia399fad0aeaf8c7a641309dfe9c6827fdc5806b4
Reviewed-on: https://chromium-review.googlesource.com/c/1409521
Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624295}
[modify] https://crrev.com/8ba6dab66b3c265c3800d112db5d337bf40e2f62/content/shell/browser/web_test/blink_test_controller.cc
[modify] https://crrev.com/8ba6dab66b3c265c3800d112db5d337bf40e2f62/content/shell/renderer/web_test/blink_test_runner.cc
[modify] https://crrev.com/8ba6dab66b3c265c3800d112db5d337bf40e2f62/content/shell/renderer/web_test/blink_test_runner.h

Comment 4 by dgozman@chromium.org, Today (11 hours ago)

Status: Fixed (was: Assigned)

Sign in to add a comment