New issue
Advanced search Search tips

Issue 654555 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug

Blocking:
issue 646947



Sign in to add a comment

OnPrerenderStopLoading and OnPrerenderStop called on one page would lead to DCHECK failure

Project Member Reported by romax@chromium.org, Oct 10 2016

Issue description

Was running top 10 EM urls using harness. Saw http://globo.com/ would invoke 2 callbacks : OnPrerenderStopLoading and OnPrerenderStop.
it will lead to the DCHECK(!IsActive()) failure in debug build.

Full log is attached, there're successful cases for comparison.

scheduler_callback_(EvaluationTestScheduler::UserRequestCallback) would post a task to StartProcessing() immediately.

10-10 14:20:33.081 E/chromium( 6372): [ERROR:save_page_request.cc(74)] ROMAX http://globo.com/ MarkAttemptStarted with attempt count 1  completed count 0 state: 2
10-10 14:20:33.082 E/chromium( 6372): [ERROR:prerendering_offliner.cc(215)] ROMAX PrerenderingOffliner::LoadAndSave
10-10 14:20:33.096 E/chromium( 6372): [ERROR:prerendering_loader.cc(78)] ROMAX PrerenderingLoader::LoadPage
10-10 14:21:03.197 E/chromium( 6372): [ERROR:prerender_adapter.cc(96)] ROMAX PrerenderAdapter::OnPrerenderStopLoading
10-10 14:21:03.197 E/chromium( 6372): [ERROR:prerendering_loader.cc(149)] ROMAX PrerenderingLoader::StartSnapshot()
10-10 14:21:03.197 E/chromium( 6372): [ERROR:prerendering_loader.cc(161)] ROMAX PrerenderingLoader::HandleLoadEvent()
10-10 14:21:03.197 E/chromium( 6372): [ERROR:prerendering_loader.cc(169)] ROMAX PrerenderingLoader::HandleLoadEvent() web_contents true
10-10 14:21:03.198 E/chromium( 6372): [ERROR:prerender_adapter.cc(110)] ROMAX PrerenderAdapter::OnPrerenderStop
10-10 14:21:03.198 E/chromium( 6372): [ERROR:prerendering_loader.cc(200)] ROMAX PrerenderingLoader::HandleLoadingStopped()  IsLoaded == true
10-10 14:21:03.221 E/chromium( 6372): [ERROR:prerendering_offliner.cc(68)] ROMAX PrerenderingOffliner::OnLoadPageDone
10-10 14:21:03.221 E/chromium( 6372): [ERROR:prerendering_offliner.cc(84)] ROMAX PrerenderingOffliner::OnLoadPageDone RequestStatus::LOADED going to SavePage
10-10 14:21:03.224 E/chromium( 6372): [ERROR:prerendering_offliner.cc(108)] ROMAX PrerenderingOffliner::OnLoadPageDone FINISHED
10-10 14:21:03.230 E/chromium( 6372): [ERROR:prerendering_offliner.cc(68)] ROMAX PrerenderingOffliner::OnLoadPageDone
10-10 14:21:03.230 E/chromium( 6372): [ERROR:prerendering_offliner.cc(103)] ROMAX PrerenderingOffliner::OnLoadPageDone RequestStatus != LOADED
10-10 14:21:03.230 E/chromium( 6372): [ERROR:request_coordinator.cc(500)] ROMAX offliner finished, saved: 0, status: 4, OfflinerDoneCallback
10-10 14:21:03.231 E/chromium( 6372): [ERROR:save_page_request.cc(93)] ROMAX http://globo.com/ MarkAttemptAborted with count 1  completed count 0 state: 0
10-10 14:21:03.246 D/cr_OPManualEvaluation( 6372): [OfflinePageManualEvaluationTest.java:175] ROMAX savePageRequestChanged http://globo.com/ 0
10-10 14:21:03.246 E/chromium( 6372): [ERROR:request_coordinator.cc(566)] ROMAX RC::OfflinerDoneCallback Going to scheduler_callback_ with status: 4
10-10 14:21:03.246 E/chromium( 6372): [ERROR:evaluation_test_scheduler.cc(58)] ROMAX EvaluationTestScheduler::UserRequestCallback
10-10 14:21:03.246 E/chromium( 6372): [ERROR:prerendering_offliner.cc(108)] ROMAX PrerenderingOffliner::OnLoadPageDone FINISHED
10-10 14:21:03.258 E/chromium( 6372): [ERROR:prerendering_offliner.cc(116)] ROMAX PrerenderingOffliner::OnSavePageDone Start
10-10 14:21:03.264 E/chromium( 6372): [ERROR:request_coordinator.cc(364)] ROMAX RC::StartProcessing 0 0
10-10 14:21:03.264 E/chromium( 6372): [ERROR:request_coordinator.cc(413)] ROMAX RC::TryNextRequest() 
10-10 14:21:03.265 E/chromium( 6372): [ERROR:save_page_request.cc(74)] ROMAX http://globo.com/ MarkAttemptStarted with attempt count 2  completed count 0 state: 2
10-10 14:21:03.265 E/chromium( 6372): [ERROR:prerendering_offliner.cc(215)] ROMAX PrerenderingOffliner::LoadAndSave
10-10 14:21:03.271 E/chromium( 6372): [ERROR:prerendering_loader.cc(78)] ROMAX PrerenderingLoader::LoadPage

 
detailed_log.txt
18.7 KB View Download
Labels: -Pri-2 M-55 Pri-1
Looks like bad recent regression that is in the M-55 branch.
Project Member

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

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

commit 492403bb5d8d52e7bc7b3e4bd5f73b4b959349c3
Author: dougarnett <dougarnett@chromium.org>
Date: Tue Oct 11 15:48:19 2016

[Offline Pages] Fix PrerenderingLoader regression for handle a stop event from the prerender stack.

BUG= 654555 

Review-Url: https://codereview.chromium.org/2405863003
Cr-Commit-Position: refs/heads/master@{#424439}

[modify] https://crrev.com/492403bb5d8d52e7bc7b3e4bd5f73b4b959349c3/chrome/browser/android/offline_pages/prerendering_loader.cc
[modify] https://crrev.com/492403bb5d8d52e7bc7b3e4bd5f73b4b959349c3/chrome/browser/android/offline_pages/prerendering_loader_unittest.cc

Labels: Merge-Request-55
Status: Fixed (was: Assigned)

Comment 4 by dimu@chromium.org, Oct 11 2016

Labels: -Merge-Request-55 Merge-Approved-55 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M55 (branch: 2883)
Project Member

Comment 5 by bugdroid1@chromium.org, Oct 11 2016

Labels: -merge-approved-55 merge-merged-2883
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/64076e7b580d9660b4bb999cd68f8b1f34acbc5e

commit 64076e7b580d9660b4bb999cd68f8b1f34acbc5e
Author: Pete Williamson <petewil@chromium.org>
Date: Tue Oct 11 20:00:36 2016

[Offline Pages] Fix PrerenderingLoader regression for handle a stop
event from the prerender stack.

BUG= 654555 

Review-Url: https://codereview.chromium.org/2405863003
Cr-Commit-Position: refs/heads/master@{#424439}
(cherry picked from commit 492403bb5d8d52e7bc7b3e4bd5f73b4b959349c3)

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

Cr-Commit-Position: refs/branch-heads/2883@{#44}
Cr-Branched-From: 614d31daee2f61b0180df403a8ad43f20b9f6dd7-refs/heads/master@{#423768}

[modify] https://crrev.com/64076e7b580d9660b4bb999cd68f8b1f34acbc5e/chrome/browser/android/offline_pages/prerendering_loader.cc
[modify] https://crrev.com/64076e7b580d9660b4bb999cd68f8b1f34acbc5e/chrome/browser/android/offline_pages/prerendering_loader_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Oct 27 2016

Labels: merge-merged-2840
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/64076e7b580d9660b4bb999cd68f8b1f34acbc5e

commit 64076e7b580d9660b4bb999cd68f8b1f34acbc5e
Author: Pete Williamson <petewil@chromium.org>
Date: Tue Oct 11 20:00:36 2016

[Offline Pages] Fix PrerenderingLoader regression for handle a stop
event from the prerender stack.

BUG= 654555 

Review-Url: https://codereview.chromium.org/2405863003
Cr-Commit-Position: refs/heads/master@{#424439}
(cherry picked from commit 492403bb5d8d52e7bc7b3e4bd5f73b4b959349c3)

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

Cr-Commit-Position: refs/branch-heads/2883@{#44}
Cr-Branched-From: 614d31daee2f61b0180df403a8ad43f20b9f6dd7-refs/heads/master@{#423768}

[modify] https://crrev.com/64076e7b580d9660b4bb999cd68f8b1f34acbc5e/chrome/browser/android/offline_pages/prerendering_loader.cc
[modify] https://crrev.com/64076e7b580d9660b4bb999cd68f8b1f34acbc5e/chrome/browser/android/offline_pages/prerendering_loader_unittest.cc

Comment 7 by dimu@google.com, Nov 4 2016

[Automated comment] removing mislabelled merge-merged-2840

Comment 8 by dimu@google.com, Nov 4 2016

Labels: -merge-merged-2840
[Automated comment] removing mislabelled merge-merged-2840

Sign in to add a comment