Closed Bug 1355196 (work_queue_.empty) Opened 8 years ago Closed 7 years ago

Intermittent netwerk/test/unit_ipc/test_channel_id.js | application crashed [@ MessageLoop::DeletePendingTasks()] after Assertion failure: work_queue_.empty()

Categories

(Core :: IPC, defect)

defect
Not set
critical

Tracking

()

RESOLVED FIXED
Tracking Status
firefox-esr52 --- unaffected
firefox55 --- unaffected
firefox56 --- fixed

People

(Reporter: intermittent-bug-filer, Unassigned)

References

Details

(Keywords: crash, intermittent-failure)

Crash Data

Flags: needinfo?(jsnajdr)
I think this not a necko specific bug.
Component: Networking → IPC
The channel ID type was changed from UUID string to uint64 in bug 1348462. Landed in m-c on 2017-04-04, this bug reported few days later, on 2017-04-10. Random coincidence or not?
Flags: needinfo?(jsnajdr) → needinfo?(hurley)
Locally reproducible, there is only one task that remains in the queue: base::ObjectWatcher::Watch The whole expand of the work queue: - work_queue_ { size=1 } std::queue<MessageLoop::PendingTask,std::deque<MessageLoop::PendingTask,std::allocator<MessageLoop::PendingTask> > > + c { size=1 } std::deque<MessageLoop::PendingTask,std::allocator<MessageLoop::PendingTask> > - [Raw View] {c={ size=1 } } std::queue<MessageLoop::PendingTask,std::deque<MessageLoop::PendingTask,std::allocator<MessageLoop::PendingTask> > > - c { size=1 } std::deque<MessageLoop::PendingTask,std::allocator<MessageLoop::PendingTask> > + [allocator] allocator std::_Compressed_pair<std::_Wrap_alloc<std::allocator<MessageLoop::PendingTask> >,std::_Deque_val<std::_Deque_simple_types<MessageLoop::PendingTask> >,1> - [0] {task={mRawPtr=0x02c7c970 {watcher=0x00000000 <NULL> object=0x000005c0 wait_object=0x0bf3f990 ...} } ...} MessageLoop::PendingTask - task {mRawPtr=0x02c7c970 {watcher=0x00000000 <NULL> object=0x000005c0 wait_object=0x0bf3f990 ...} } nsCOMPtr<nsIRunnable> - mRawPtr 0x02c7c970 {watcher=0x00000000 <NULL> object=0x000005c0 wait_object=0x0bf3f990 ...} nsIRunnable * {base::ObjectWatcher::Watch} - [base::ObjectWatcher::Watch] {watcher=0x00000000 <NULL> object=0x000005c0 wait_object=0x0bf3f990 ...} base::ObjectWatcher::Watch + mozilla::Runnable {mRefCnt={mValue=1 } _mOwningThread={mThread=0x00d67290 } mName=0x195e7e8c "ObjectWatcher::Watch" } mozilla::Runnable + watcher 0x00000000 <NULL> base::ObjectWatcher * object 0x000005c0 void * wait_object 0x0bf3f990 void * + origin_loop 0x028afd70 {type_=TYPE_IO (2) id_=2 work_queue_={ size=1 } ...} MessageLoop * + delegate 0x00d5edd4 {...} base::ObjectWatcher::Delegate * did_signal true bool + nsISupports {...} nsISupports + delayed_run_time {ticks_=0 } base::TimeTicks sequence_num 0 int nestable true bool + [Raw View] {...} std::deque<MessageLoop::PendingTask,std::allocator<MessageLoop::PendingTask> >
Flags: needinfo?(wmccloskey)
(Note: we should duplicate all "MessageLoop::DeletePendingTasks" crash bugs to this one)
Alias: work_queue_.empty
Carrying ni from bug 1338878 here.
Flags: needinfo?(jmathies)
Note that there has been some more investigation done in bug 1380530.
Depends on: 1380530
It looks like this might have stopped (presumably because of bug 1380530).
Flags: needinfo?(wmccloskey)
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(jmathies)
Flags: needinfo?(hurley)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.