Closed Bug 1313861 Opened 3 years ago Closed 5 months ago

Intermittent browser_dbg_searchbox-parse.js | A promise chain failed to handle a rejection: - at chrome://devtools/content/debugger/views/filter-view.js:788 - TypeError: aSources[Symbol.iterator](...).next(...).value is undefined


(DevTools :: Debugger, defect, P3)



(firefox52 disabled, firefox53 disabled, firefox54 disabled)

Tracking Status
firefox52 --- disabled
firefox53 --- disabled
firefox54 --- disabled


(Reporter: aryx, Assigned: jmaher)



(Keywords: intermittent-failure, Whiteboard: [test disabled on asan and debug][stockwell disabled])


(1 file)

[task 2016-10-29T14:52:57.588382Z] 14:52:57     INFO - TEST-PASS | devtools/client/debugger/test/mochitest/browser_dbg_searchbox-parse.js | The searchbox data wasn't parsed correctly (26). - 
[task 2016-10-29T14:52:57.589585Z] 14:52:57     INFO - Destroying the specified debugger.
[task 2016-10-29T14:52:57.600151Z] 14:52:57     INFO - Waiting for event: 'Debugger:Shutdown' on [object ChromeWindow].
[task 2016-10-29T14:52:57.603039Z] 14:52:57     INFO - Waiting for event: 'destroyed' on [object Object].
[task 2016-10-29T14:52:57.604074Z] 14:52:57     INFO - Got event: 'destroyed' on [object Object].
[task 2016-10-29T14:52:57.611643Z] 14:52:57     INFO - Got event: 'Debugger:Shutdown' on [object ChromeWindow].
[task 2016-10-29T14:52:57.612568Z] 14:52:57     INFO - Removing tab.
[task 2016-10-29T14:52:57.614164Z] 14:52:57     INFO - TEST-UNEXPECTED-FAIL | devtools/client/debugger/test/mochitest/browser_dbg_searchbox-parse.js | A promise chain failed to handle a rejection:  - at chrome://devtools/content/debugger/views/filter-view.js:788 - TypeError: aSources[Symbol.iterator](...).next(...).value is undefined
[task 2016-10-29T14:52:57.619428Z] 14:52:57     INFO - Stack trace:
[task 2016-10-29T14:52:57.628416Z] 14:52:57     INFO - FilteredFunctionsView.prototype<._doSearch@chrome://devtools/content/debugger/views/filter-view.js:788:10
[task 2016-10-29T14:52:57.629308Z] 14:52:57     INFO - FilteredFunctionsView.prototype<.scheduleSearch/</<@chrome://devtools/content/debugger/views/filter-view.js:758:39
[task 2016-10-29T14:52:57.630197Z] 14:52:57     INFO - Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
[task 2016-10-29T14:52:57.631171Z] 14:52:57     INFO - this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
[task 2016-10-29T14:52:57.643106Z] 14:52:57     INFO - Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
[task 2016-10-29T14:52:57.646109Z] 14:52:57     INFO - this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
[task 2016-10-29T14:52:57.646998Z] 14:52:57     INFO - this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:714:7
[task 2016-10-29T14:52:57.648284Z] 14:52:57     INFO - maybeFinish@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/debugger/content/actions/sources.js:264:9
[task 2016-10-29T14:52:57.651701Z] 14:52:57     INFO - onTimeout@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/debugger/content/actions/sources.js:240:7
[task 2016-10-29T14:52:57.653060Z] 14:52:57     INFO - setTimeout handler*getTextForSources/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/debugger/content/actions/sources.js:235:5
[task 2016-10-29T14:52:57.661090Z] 14:52:57     INFO - thunk/</<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/shared/redux/middleware/thunk.js:15:9
[task 2016-10-29T14:52:57.662034Z] 14:52:57     INFO - task/</<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/shared/redux/middleware/task.js:31:12
[task 2016-10-29T14:52:57.662980Z] 14:52:57     INFO - FilteredFunctionsView.prototype<.scheduleSearch/<@chrome://devtools/content/debugger/views/filter-view.js:757:28
[task 2016-10-29T14:52:57.671469Z] 14:52:57     INFO - setNamedTimeout/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/shared/widgets/view-helpers.js:54:38
[task 2016-10-29T14:52:57.672308Z] 14:52:57     INFO - setTimeout_timer@resource://gre/modules/Timer.jsm:30:5
[task 2016-10-29T14:52:57.674529Z] 14:52:57     INFO - Tab removed and finished closing.
Priority: -- → P3
this started up december 30th, I have some comments in bug 1317053 about similar bugs- although this is linux64 asan specific and those are timeout bugs- odd we had so many devtools issues start on december 30th...
possible a regression from bug 1245921?
(In reply to Joel Maher ( :jmaher) from comment #4)
> possible a regression from bug 1245921?


:gregtatum -- Can you investigate? This is one of our most frequent failures.
Blocks: 1245921
Flags: needinfo?(gtatum)
Pushed by
Skip test browser_dbg_searchbox-parse.js on linux-asan for frequent failures; r=me
Keywords: leave-open
Whiteboard: [test disabled on linux-asan]
Yes, I've been out on a work week. I'll try to take a look at it today or tomorrow.
Hmm... I spent some time this morning looking at the cause of this, and I'm not seeing anything obvious. The timing for the toolbox initialization changed with my toolbar patch, so my suspicion is that this revealed an underlying race condition. I've never worked with the debugger client code before, so I'm having trouble figuring out the underlying cause. I was chatting with Jason Laster on IRC, and since the old debugger client is end of life with the new debugger interface coming in, we both felt it was OK to leave this test disabled.
Flags: needinfo?(gtatum)
We need to expand the disabling then. This still fails on !asan.
:jlast what do you think?
Flags: needinfo?(jlaster)
:gregtatum, I think we can disable this test. We're not going to make changes to the filter-view.
Flags: needinfo?(jlaster)
I would advocate disabling this on win8-debug and osx-debug; if other browser changes go in and break this feature, this test would catch that which is why I would advocate for disabling partially, instead of in-whole.

I already see this is disabled for *-e10s-debug, and asan configurations.  To simplify this, just skip-if = debug would solve a lot of things and retain some coverage.
Attachment #8829995 - Flags: review?(gtatum) → review+
Sounds like a good solution to me. Thanks Joel!
Pushed by
Intermittent browser_dbg_searchbox-parse.js, disable on all debug configurations. r=gregtatum
Whiteboard: [test disabled on asan and debug] → [test disabled on asan and debug][stockwell disabled]
Product: Firefox → DevTools
Closed: 5 months ago
Resolution: --- → FIXED
Assignee: nobody → jmaher
You need to log in before you can comment on or make changes to this bug.