New issue
Advanced search Search tips

Issue 685493 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 649558



Sign in to add a comment

DevTools crashes on Debug build with ServiceWorker

Project Member Reported by horo@chromium.org, Jan 26 2017

Issue description

Chrome Version: 58.0.2993.0 (Developer Build) (64-bit)
OS: Linux

What steps will reproduce the problem?
(1) Go https://horo-t.github.io/serviceworker/demo/simpleblob/
(2) Click button
(3) Click "test" link
(4) Open DevTools.

What is the expected result?
No crash
What happens instead?
Crash

[1:13:0126/124100.232495:FATAL:MemoryCache.cpp(49)] Check failed: WTF::isMainThread(). 
#0 0x7f39fc79408e base::debug::StackTrace::StackTrace()
#1 0x7f39fc80049f logging::LogMessage::~LogMessage()
#2 0x7f39ecd0b02e blink::memoryCache()
#3 0x7f39e3428fcd blink::InspectorNetworkAgent::setCacheDisabled()
#4 0x7f39e342901f blink::InspectorNetworkAgent::setCacheDisabled()
#5 0x7f39e40a1801 blink::protocol::Network::DispatcherImpl::setCacheDisabled()
#6 0x7f39e409ef95 blink::protocol::Network::DispatcherImpl::dispatch()
#7 0x7f39e40d0f92 blink::protocol::UberDispatcher::dispatch()
#8 0x7f39e3455a72 blink::InspectorSession::dispatchProtocolMessage()
#9 0x7f39e349817b blink::WorkerInspectorController::dispatchMessageFromFrontend()
#10 0x7f39e3b09855 blink::dispatchOnInspectorBackendTask()
#11 0x7f39e3b0d2ff _ZN4base8internal13FunctorTraitsIPFvRKN3WTF6StringEPN5blink12WorkerThreadEEvE6InvokeIJS5_S8_EEEvSA_DpOT_
#12 0x7f39e3b0d26d _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKPFvRKN3WTF6StringEPN5blink12WorkerThreadEEJS7_SA_EEEvOT_DpOT0_
#13 0x7f39e3b0d218 _ZN4base8internal7InvokerINS0_9BindStateIPFvRKN3WTF6StringEPN5blink12WorkerThreadEEJS4_NS3_17UnretainedWrapperIS8_LNS3_22FunctionThreadAffinityE0EEEEEEFvvEE7RunImplIRKSB_RKSt5tupleIJS4_SE_EEJLm0ELm1EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#14 0x7f39e3b0d12c _ZN4base8internal7InvokerINS0_9BindStateIPFvRKN3WTF6StringEPN5blink12WorkerThreadEEJS4_NS3_17UnretainedWrapperIS8_LNS3_22FunctionThreadAffinityE0EEEEEEFvvEE3RunEPNS0_13BindStateBaseE
#15 0x7f39e2649b8b base::internal::RunMixin<>::Run()
#16 0x7f39e2c8b6d9 WTF::Function<>::operator()()
#17 0x7f39e3b14f32 blink::WorkerThread::performDebuggerTaskOnWorkerThread()
#18 0x7f39e3b1db5a _ZN4base8internal13FunctorTraitsIMN5blink12WorkerThreadEFvSt10unique_ptrIN3WTF8FunctionIFvvELNS5_22FunctionThreadAffinityE0EEESt14default_deleteIS9_EEEvE6InvokeIPS3_JSC_EEEvSE_OT_DpOT0_
#19 0x7f39e3b1da26 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKMN5blink12WorkerThreadEFvSt10unique_ptrIN3WTF8FunctionIFvvELNS7_22FunctionThreadAffinityE0EEESt14default_deleteISB_EEEJPS5_SE_EEEvOT_DpOT0_
#20 0x7f39e3b1d9a8 _ZN4base8internal7InvokerINS0_9BindStateIMN5blink12WorkerThreadEFvSt10unique_ptrIN3WTF8FunctionIFvvELNS6_22FunctionThreadAffinityE0EEESt14default_deleteISA_EEEJNS6_17UnretainedWrapperIS4_LS9_0EEENS6_13PassedWrapperISD_EEEEES8_E7RunImplIRKSF_RKSt5tupleIJSH_SJ_EEJLm0ELm1EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#21 0x7f39e3b1d8bc _ZN4base8internal7InvokerINS0_9BindStateIMN5blink12WorkerThreadEFvSt10unique_ptrIN3WTF8FunctionIFvvELNS6_22FunctionThreadAffinityE0EEESt14default_deleteISA_EEEJNS6_17UnretainedWrapperIS4_LS9_0EEENS6_13PassedWrapperISD_EEEEES8_E3RunEPNS0_13BindStateBaseE
#22 0x7f39e2649b8b base::internal::RunMixin<>::Run()
#23 0x7f39e2c8b6d9 WTF::Function<>::operator()()
#24 0x7f39e3b1514a blink::WorkerThread::performDebuggerTaskDontWaitOnWorkerThread()
#25 0x7f39e325de65 _ZN4base8internal13FunctorTraitsIMN5blink16HTMLParserThreadEFvvEvE6InvokeIPS3_JEEEvS5_OT_DpOT0_
#26 0x7f39e3b1e2c1 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKMN5blink12WorkerThreadEFvvEJPS5_EEEvOT_DpOT0_
#27 0x7f39e3b1e267 _ZN4base8internal7InvokerINS0_9BindStateIMN5blink12WorkerThreadEFvvEJN3WTF17UnretainedWrapperIS4_LNS7_22FunctionThreadAffinityE0EEEEEEFvvEE7RunImplIRKS6_RKSt5tupleIJSA_EEJLm0EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#28 0x7f39e3b1e1ac _ZN4base8internal7InvokerINS0_9BindStateIMN5blink12WorkerThreadEFvvEJN3WTF17UnretainedWrapperIS4_LNS7_22FunctionThreadAffinityE0EEEEEEFvvEE3RunEPNS0_13BindStateBaseE
#29 0x7f39ec6ff09b base::internal::RunMixin<>::Run()
#30 0x7f39ec6fefd9 WTF::Function<>::operator()()
#31 0x7f39ec6fe131 blink::(anonymous namespace)::runCrossThreadClosure()
#32 0x7f39ec6ffc07 _ZN4base8internal13FunctorTraitsIPFvSt10unique_ptrIN3WTF8FunctionIFvvELNS3_22FunctionThreadAffinityE0EEESt14default_deleteIS7_EEEvE6InvokeIJSA_EEEvSC_DpOT_
#33 0x7f39ec6ffb68 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKPFvSt10unique_ptrIN3WTF8FunctionIFvvELNS5_22FunctionThreadAffinityE0EEESt14default_deleteIS9_EEEJSC_EEEvOT_DpOT0_
#34 0x7f39ec6ffb17 _ZN4base8internal7InvokerINS0_9BindStateIPFvSt10unique_ptrIN3WTF8FunctionIFvvELNS4_22FunctionThreadAffinityE0EEESt14default_deleteIS8_EEEJNS0_13PassedWrapperISB_EEEEES6_E7RunImplIRKSD_RKSt5tupleIJSF_EEJLm0EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#35 0x7f39ec6ffa5c _ZN4base8internal7InvokerINS0_9BindStateIPFvSt10unique_ptrIN3WTF8FunctionIFvvELNS4_22FunctionThreadAffinityE0EEESt14default_deleteIS8_EEEJNS0_13PassedWrapperISB_EEEEES6_E3RunEPNS0_13BindStateBaseE
#36 0x7f39fc799e81 _ZNO4base8internal8RunMixinINS_8CallbackIFvvELNS0_8CopyModeE0ELNS0_10RepeatModeE0EEEE3RunEv
#37 0x7f39fc799872 base::debug::TaskAnnotator::RunTask()
#38 0x7f39ecb39ef6 blink::scheduler::TaskQueueManager::ProcessTaskFromWorkQueue()
#39 0x7f39ecb3749a blink::scheduler::TaskQueueManager::DoWork()
#40 0x7f39ecb418ec _ZN4base8internal13FunctorTraitsIMN5blink9scheduler16TaskQueueManagerEFvNS_9TimeTicksEbEvE6InvokeIRKNS_7WeakPtrIS4_EEJRKS5_RKbEEEvS7_OT_DpOT0_
#41 0x7f39ecb417c4 _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN5blink9scheduler16TaskQueueManagerEFvNS_9TimeTicksEbERKNS_7WeakPtrIS6_EEJRKS7_RKbEEEvOT_OT0_DpOT1_
#42 0x7f39ecb41724 _ZN4base8internal7InvokerINS0_9BindStateIMN5blink9scheduler16TaskQueueManagerEFvNS_9TimeTicksEbEJNS_7WeakPtrIS5_EES6_bEEEFvvEE7RunImplIRKS8_RKSt5tupleIJSA_S6_bEEJLm0ELm1ELm2EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#43 0x7f39ecb415fc _ZN4base8internal7InvokerINS0_9BindStateIMN5blink9scheduler16TaskQueueManagerEFvNS_9TimeTicksEbEJNS_7WeakPtrIS5_EES6_bEEEFvvEE3RunEPNS0_13BindStateBaseE
#44 0x7f39fc799e81 _ZNO4base8internal8RunMixinINS_8CallbackIFvvELNS0_8CopyModeE0ELNS0_10RepeatModeE0EEEE3RunEv
#45 0x7f39fc799872 base::debug::TaskAnnotator::RunTask()
#46 0x7f39fc828e6f base::MessageLoop::RunTask()
#47 0x7f39fc8290f4 base::MessageLoop::DeferOrRunPendingTask()
#48 0x7f39fc8293de base::MessageLoop::DoWork()
#49 0x7f39fc8408e8 base::MessagePumpDefault::Run()
#50 0x7f39fc828a17 base::MessageLoop::RunHandler()
#51 0x7f39fc8d5a6a base::RunLoop::Run()
#52 0x7f39fc97ceb4 base::Thread::Run()
#53 0x7f39fc97d71a base::Thread::ThreadMain()
#54 0x7f39fc96403a base::(anonymous namespace)::ThreadFunc()
#55 0x7f39fcbf2184 start_thread
#56 0x7f39e8d8f37d clone

 

Comment 1 by horo@chromium.org, Jan 26 2017

Components: Blink>ServiceWorker
I will revert https://codereview.chromium.org/2620463002/

Comment 2 by horo@chromium.org, Jan 26 2017

I understood the crash reason.
I want to land the fix patch instead of reverting.
https://codereview.chromium.org/2650973006/
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 26 2017

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

commit 16de2c25e724f07d46b68f5758e49fae6f136073
Author: horo <horo@chromium.org>
Date: Thu Jan 26 07:49:51 2017

Revert of Show service worker navigation preload requests in DevTools Network tab (patchset #10 id:480001 of https://codereview.chromium.org/2620463002/ )

Reason for revert:
Introduced DCHECK crash.

BUG= 685493 

Original issue's description:
> Show service worker navigation preload requests in DevTools Network tab.
>
> Demo: https://youtu.be/I-Qe_Y-xYxE
>
> Navigation Preload requests are initiated from the browser process.
> This is different from the normal network requests which are initiated from the
> renderer process.
>
> When the DevTools show the normal requests in the Network tab, DevTool's
> Network events (requestWillBeSent, responseReceived, loadingFinished etc) are
> dispatched via InspectorInstrumentation and InspectorNetworkAgent.
>
> This CL introduces new DevTool's Network events (navigationPreloadSent,
> navigationPreloadResponseReceived, navigationPreloadFailed,
> navigationPreloadFinished) which are dispatched via InspectorInstrumentation and
> InspectorNetworkAgent from ServiceWorkerContextClient.
>
> In the normal requests case, we record the request sending timestamp when the
> renderer process will send the request in InspectorNetworkAgent::
> willSendRequestInternal(). But in the navigation preload case, we record the
> timestamp in the browser process, and send it to the service worker's renderer
> process using FetchEventPreloadHandle.
>
>
> BUG= 649558 
>
> Review-Url: https://codereview.chromium.org/2620463002
> Cr-Original-Commit-Position: refs/heads/master@{#445630}
> Committed: https://chromium.googlesource.com/chromium/src/+/4c6b3b0f11b62e069d9d84ba99dbe94a45a5c622
> Review-Url: https://codereview.chromium.org/2620463002
> Cr-Commit-Position: refs/heads/master@{#445699}
> Committed: https://chromium.googlesource.com/chromium/src/+/23276c71698583a0142e8213bada22e3ae8d0a0e

TBR=falken@chromium.org,pfeldman@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 649558 

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

[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/content/browser/loader/resource_dispatcher_host_impl.cc
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/content/browser/service_worker/service_worker_browsertest.cc
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/content/browser/service_worker/service_worker_fetch_dispatcher.cc
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/content/renderer/service_worker/service_worker_context_client.cc
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/content/renderer/service_worker/service_worker_context_client.h
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/LayoutTests/http/tests/inspector/inspector-test.js
[delete] https://crrev.com/1ae83a08f3b0b6831e5dbdaae12635010367b246/third_party/WebKit/LayoutTests/http/tests/inspector/service-workers/resources/navigation-preload-scope.php
[delete] https://crrev.com/1ae83a08f3b0b6831e5dbdaae12635010367b246/third_party/WebKit/LayoutTests/http/tests/inspector/service-workers/resources/navigation-preload-worker.php
[delete] https://crrev.com/1ae83a08f3b0b6831e5dbdaae12635010367b246/third_party/WebKit/LayoutTests/http/tests/inspector/service-workers/service-workers-navigation-preload-expected.txt
[delete] https://crrev.com/1ae83a08f3b0b6831e5dbdaae12635010367b246/third_party/WebKit/LayoutTests/http/tests/inspector/service-workers/service-workers-navigation-preload.html
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/InspectorInstrumentation.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/InspectorInstrumentation.idl
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/InspectorNetworkAgent.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/InspectorNetworkAgent.h
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/WorkerInspectorController.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/WorkerInspectorController.h
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/inspector/browser_protocol.json
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/loader/FrameFetchContext.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/loader/PingLoader.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/DedicatedWorkerTest.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/InProcessWorkerMessagingProxy.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/ThreadedWorkletTest.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/WorkerThreadStartupData.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/WorkerThreadStartupData.h
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/WorkerThreadTest.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/core/workers/WorkerThreadTestHelper.h
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/devtools/front_end/network/NetworkDataGridNode.js
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/devtools/front_end/sdk/NetworkLog.js
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/devtools/front_end/sdk/NetworkRequest.js
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/devtools/front_end/sdk/SubTargetsManager.js
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/modules/compositorworker/AnimationWorkletThreadTest.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/modules/webaudio/AudioWorkletThreadTest.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/web/ServiceWorkerGlobalScopeProxy.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/web/ServiceWorkerGlobalScopeProxy.h
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/web/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/Source/web/WebSharedWorkerImpl.cpp
[modify] https://crrev.com/16de2c25e724f07d46b68f5758e49fae6f136073/third_party/WebKit/public/web/modules/serviceworker/WebServiceWorkerContextProxy.h

Comment 4 by horo@chromium.org, Jan 27 2017

Status: Fixed (was: Started)

Comment 5 by falken@chromium.org, Jul 28 2017

Labels: Stability M-58

Sign in to add a comment