Closed Bug 1602440 Opened 5 years ago Closed 3 years ago

Nodes in the debugger source tree expand automatically and randomly in the OBT

Categories

(DevTools :: Debugger, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1690269

People

(Reporter: pbro, Assigned: bomsy)

References

(Blocks 1 open bug)

Details

(Whiteboard: good-second-bug)

Attachments

(1 file, 1 obsolete file)

Attached image source-tree.gif (deleted) —

I don't know when this happens exactly but I've noticed that certain parts of the source tree in the OBT's debugger sometimes auto-expand, on their own.

My steps were:

  • open 2 tabs in Firefox, both on https://output.jsbin.com/bipifozesi
  • open the OBT, switch to the debugger
  • look for a script in the source tree, in the content process where the page runs, expand a few nodes in there, until you find a script and click on it

As soon as I click on the script, the source opens, but also another node in the source tree expands itself. For me this was the one at the top (another content process).

I recorded a GIF to show what I'm seeing. I'm suspecting that this is a bit random, I don't know how easy it will be to reproduce.

The other anecdote is that while testing the OBT, Honza also reported a problem:

No stable STRs but, clicking on an item in the Sources view sometimes expands multiple items.

I have another scenario that might be related.

This is related to selection, not expanding and I am happy to file new bug if it's different problem.

STR:

  1. Open Firefox with one tab e.g. google.com (I don't think it matters how many tabs or URLs, but just for completeness)
  2. Open OBT and switch to the Debugger panel
  3. There should be multiple (at least two) content procesees.
  4. In the first one, expand chrome:// -> content -> But, do not select the items, just expand
  5. In the second one, expand the same: chrome:// -> content -> But, do not select the items, just expand
  6. In the second one, select browser-child.js -> works ok
  7. In the second one, select browser-content.js -> now the browser-content.js in the first content process is selected -> BUG
  8. You migt try to select process-content.js in the second one to see the issue.

Honza

@Jason, do you have an idea what could be the problem here?
This is quite annoying and it would be great to fix it.

Thanks!
Honza

Flags: needinfo?(jlaster)

Yes, it happens because we track the source that is selected and not the source actor. This an issue when one source has two corresponding source actors in different threads, and the tree does not know which one to select.

We can prioritize this.

Flags: needinfo?(jlaster)

Thanks!

I am marking as P2, since it's annoying and it would be great to fix it.

Honza

Priority: -- → P2

I can still reproduce this one.
Honza

Whiteboard: good-second-bug
Assignee: nobody → hmanilla
Status: NEW → ASSIGNED
Pushed by hmanilla@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/1c185d07d900
[devtools] Use actor instead of url for worker targets r=nchevobbe

Backed out changeset 1c185d07d900 (bug 1602440) for browser_dbg-sources-querystring.js failures.

Push with failures: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&fromchange=87c24c64eece98464a05f684742798f2c9ae00de&test_paths=devtools%2Fclient%2Fdebugger%2Ftest%2Fmochitest&tochange=b093fb55f41cb6f9ca93be80822c97d3b2c79a25&selectedTaskRun=M6wCxzkOScSbGw0rxxi0gQ.0

Backout link: https://hg.mozilla.org/integration/autoland/rev/b093fb55f41cb6f9ca93be80822c97d3b2c79a25

Failure log: https://treeherder.mozilla.org/logviewer?job_id=326269008&repo=autoland&lineNumber=15400

[task 2021-01-09T14:30:25.184Z] 14:30:25     INFO - TEST-START | devtools/client/debugger/test/mochitest/browser_dbg-sources-querystring.js
[task 2021-01-09T14:30:25.643Z] 14:30:25     INFO - GECKO(1543) | [ACTION] SET_ORIENTATION  - {"type":"SET_ORIENTATION","orientation":"horizontal"}
[task 2021-01-09T14:30:25.664Z] 14:30:25     INFO - GECKO(1543) | [ACTION] CONNECT  - {"type":"CONNECT","traits":{"reconfigure":false,"frames":true,"logInPage":true,"watchpoints":true,"navigation":true},"mainThreadActorID":"server0.conn80.child3/thread23","isWebExtension":false}
[task 2021-01-09T14:30:25.682Z] 14:30:25     INFO - GECKO(1543) | [ACTION] UPDATE_EVENT_LISTENERS  - {"type":"UPDATE_EVENT_LISTENERS","active":[]}
[task 2021-01-09T14:30:25.683Z] 14:30:25     INFO - GECKO(1543) | [ACTION] EVALUATE_EXPRESSIONS  - {"type":"EVALUATE_EXPRESSIONS","cx":{"navigateCounter":0,"thread":"server0.conn80.child3/thread23","isPaused":false,"pauseCounter":0},"inputs":[],"results":[]}
[task 2021-01-09T14:30:25.683Z] 14:30:25     INFO - GECKO(1543) | [ACTION] INSERT_THREAD  - {"type":"INSERT_THREAD","cx":{"navigateCounter":0},"newThread":{"actor":"server0.conn80.child3/thread23","url":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/doc-sources-querystring.html","isTopLevel":true,"targetType":"frame","name":"Main Thread"}}
[task 2021-01-09T14:30:25.739Z] 14:30:25     INFO - GECKO(1543) | [ACTION] RECEIVE_EVENT_LISTENER_TYPES  - {"type":"RECEIVE_EVENT_LISTENER_TYPES","categories":[{"name":"Animation","events":[{"id":"animationframe.request","name":"Request Animation Frame"},{"id":"animationframe.cancel","name":"Cancel Animation Frame"},{"id":"animationframe.fire","name":"Animation Frame fired"}]},{"name":"Clipboard","events":[{"id":"event.clipboard.copy","name":"copy"},{"id":"event.clipboard.cut","name":"cut"},{"id":"event.clipboard.paste","name":"paste"},{"id":"event.clipboard.beforecopy","name":"beforecopy"},{"id":"event.clipboard.beforecut","name":"beforecut"},{"id":"event.clipboard.beforepaste","name":"beforepaste"}]},{"name":"Control","events":[{"id":"event.control.resize","name":"resize"},{"id":"event.control.scroll","name":"scroll"},{"id":"event.control.zoom","name":"zoom"},{"id":"event.control.focus","name":"focus"},{"id":"event.control.blur","name":"blur"},{"id":"event.control.select","name":"select"},{"id":"event.control.change","name":"change"},{"id":"event.control.submit","name":"submit"},{"id":"event.control.reset","name":"reset"}]},{"name":"DOM Mutation","events":[{"id":"event.dom-mutation.DOMActivate","name":"DOMActivate"},{"id":"event.dom-mutation.DOMFocusIn","name":"DOMFocusIn"},{"id":"event.dom-mutation.DOMFocusOut","name":"DOMFocusOut"},{"id":"event.dom-mutation.DOMAttrModified","name":"DOMAttrModified"},{"id":"event.dom-mutation.DOMCharacterDataModified","name":"DOMCharacterDataModified"},{"id":"event.dom-mutation.DOMNodeInserted","name":"DOMNodeInserted"},{"id":"event.dom-mutation.DOMNodeInsertedIntoDocument","name":"DOMNodeInsertedIntoDocument"},{"id":"event.dom-mutation.DOMNodeRemoved","name":"DOMNodeRemoved"},{"id":"event.dom-mutation.DOMNodeRemovedIntoDocument","name":"DOMNodeRemovedIntoDocument"},{"id":"event.dom-mutation.DOMSubtreeModified","name":"DOMSubtreeModified"},{"id":"event.dom-mutation.DOMContentLoaded","name":"DOMContentLoaded"}]},{"name":"Device","events":[{"id":"event.device.deviceorientation","name":"deviceorientation"},{"id":"event.device.devicemotion","name":"devicemotion"}]},{"name":"Drag and Drop","events":[{"id":"event.drag-and-drop.drag","name":"drag"},{"id":"event.drag-and-drop.dragstart","name":"dragstart"},{"id":"event.drag-and-drop.dragend","name":"dragend"},{"id":"event.drag-and-drop.dragenter","name":"dragenter"},{"id":"event.drag-and-drop.dragover","name":"dragover"},{"id":"event.drag-and-drop.dragleave","name":"dragleave"},{"id":"event.drag-and-drop.drop","name":"drop"}]},{"name":"Keyboard","events":[{"id":"event.keyboard.beforeinput","name":"beforeinput"},{"id":"event.keyboard.input","name":"input"},{"id":"event.keyboard.keydown","name":"keydown"},{"id":"event.keyboard.keyup","name":"keyup"},{"id":"event.keyboard.keypress","name":"keypress"}]},{"name":"Load","events":[{"id":"event.load.load","name":"load"},{"id":"event.load.abort","name":"abort"},{"id":"event.load.error","name":"error"},{"id":"event.load.hashchange","name":"hashchange"},{"id":"event.load.popstate","name":"popstate"}]},{"name":"Media","events":[{"id":"event.media.play","name":"play"},{"id":"event.media.pause","name":"pause"},{"id":"event.media.playing","name":"playing"},{"id":"event.media.canplay","name":"canplay"},{"id":"event.media.canplaythrough","name":"canplaythrough"},{"id":"event.media.seeking","name":"seeking"},{"id":"event.media.seeked","name":"seeked"},{"id":"event.media.timeupdate","name":"timeupdate"},{"id":"event.media.ended","name":"ended"},{"id":"event.media.ratechange","name":"ratechange"},{"id":"event.media.durationchange","name":"durationchange"},{"id":"event.media.volumechange","name":"volumechange"},{"id":"event.media.loadstart","name":"loadstart"},{"id":"event.media.progress","name":"progress"},{"id":"event.media.suspend","name":"suspend"},{"id":"event.media.abort","name":"abort"},{"id":"event.media.error","name":"error"},{"id":"event.media.emptied","name":"emptied"},{"id":"event.media.stalled","name":"stalled"},{"id":"event.media.loadedmetadata","name":"loadedmetadata"},{"id":"event.media.loadeddata","name":"loadeddata"},{"id":"event.media.waiting","name":"waiting"}]},{"name":"Mouse","events":[{"id":"event.mouse.auxclick","name":"auxclick"},{"id":"event.mouse.click","name":"click"},{"id":"event.mouse.dblclick","name":"dblclick"},{"id":"event.mouse.mousedown","name":"mousedown"},{"id":"event.mouse.mouseup","name":"mouseup"},{"id":"event.mouse.mouseover","name":"mouseover"},{"id":"event.mouse.mousemove","name":"mousemove"},{"id":"event.mouse.mouseout","name":"mouseout"},{"id":"event.mouse.mouseenter","name":"mouseenter"},{"id":"event.mouse.mouseleave","name":"mouseleave"},{"id":"event.mouse.mousewheel","name":"mousewheel"},{"id":"event.mouse.wheel","name":"wheel"},{"id":"event.mouse.contextmenu","name":"contextmenu"}]},{"name":"Pointer","events":[{"id":"event.pointer.pointerover","name":"pointerover"},{"id":"event.pointer.pointerout","name":"pointerout"},{"id":"event.pointer.pointerenter","name":"pointerenter"},{"id":"event.pointer.pointerleave","name":"pointerleave"},{"id":"event.pointer.pointerdown","name":"pointerdown"},{"id":"event.pointer.pointerup","name":"pointerup"},{"id":"event.pointer.pointermove","name":"pointermove"},{"id":"event.pointer.pointercancel","name":"pointercancel"},{"id":"event.pointer.gotpointercapture","name":"gotpointercapture"},{"id":"event.pointer.lostpointercapture","name":"lostpointercapture"}]},{"name":"Script","events":[{"id":"script.source.firstStatement","name":"Script First Statement"}]},{"name":"Timer","events":[{"id":"timer.timeout.set","name":"setTimeout"},{"id":"timer.timeout.clear","name":"clearTimeout"},{"id":"timer.timeout.fire","name":"setTimeout fired"},{"id":"timer.interval.set","name":"setInterval"},{"id":"timer.interval.clear","name":"clearInterval"},{"id":"timer.interval.fire","name":"setInterval fired"}]},{"name":"Touch","events":[{"id":"event.touch.touchstart","name":"touchstart"},{"id":"event.touch.touchmove","name":"touchmove"},{"id":"event.touch.touchend","name":"touchend"},{"id":"event.touch.touchcancel","name":"touchcancel"}]},{"name":"WebSocket","events":[{"id":"event.websocket.open","name":"open"},{"id":"event.websocket.message","name":"message"},{"id":"event.websocket.error","name":"error"},{"id":"event.websocket.close","name":"close"}]},{"name":"Worker","events":[{"id":"event.worker.message","name":"message"},{"id":"event.worker.messageerror","name":"messageerror"},{"id":"event.serviceworker.fetch","name":"fetch"}]},{"name":"XHR","events":[{"id":"event.xhr.readystatechange","name":"readystatechange"},{"id":"event.xhr.load","name":"load"},{"id":"event.xhr.loadstart","name":"loadstart"},{"id":"event.xhr.loadend","name":"loadend"},{"id":"event.xhr.abort","name":"abort"},{"id":"event.xhr.error","name":"error"},{"id":"event.xhr.progress","name":"progress"},{"id":"event.xhr.timeout","name":"timeout"}]}]}
[task 2021-01-09T14:30:25.739Z] 14:30:25     INFO - GECKO(1543) | [ACTION] ADD_SOURCES  - {"type":"ADD_SOURCES","cx":{"navigateCounter":0},"sources":[{"id":"sourceURL-http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=1","url":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=1","relativeUrl":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=1","isPrettyPrinted":false,"extensionName":null,"isBlackBoxed":false,"isWasm":false,"isExtension":false,"isOriginal":false},{"id":"sourceURL-http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=2","url":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=2","relativeUrl":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=2","isPrettyPrinted":false,"extensionName":null,"isBlackBoxed":false,"isWasm":false,"isExtension":false,"isOriginal":false}]}
[task 2021-01-09T14:30:25.747Z] 14:30:25     INFO - GECKO(1543) | [ACTION] INSERT_SOURCE_ACTORS  - {"type":"INSERT_SOURCE_ACTORS","items":[{"id":"server0.conn80.child3/source24","actor":"server0.conn80.child3/source24","thread":"server0.conn80.child3/thread23","source":"sourceURL-http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=1","isBlackBoxed":false,"sourceMapBaseURL":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=1","sourceMapURL":null,"url":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=1","introductionType":"scriptElement"},{"id":"server0.conn80.child3/source25","actor":"server0.conn80.child3/source25","thread":"server0.conn80.child3/thread23","source":"sourceURL-http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=2","isBlackBoxed":false,"sourceMapBaseURL":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=2","sourceMapURL":null,"url":"http://example.com/browser/devtools/client/debugger/test/mochitest/examples/simple1.js?x=2","introductionType":"scriptElement"}]}
[task 2021-01-09T14:30:25.763Z] 14:30:25     INFO - GECKO(1543) | [ACTION] SET_EXPANDED_STATE  - {"type":"SET_EXPANDED_STATE","expanded":{}}
[task 2021-01-09T14:30:25.778Z] 14:30:25     INFO - GECKO(1543) | [ACTION] SET_EXPANDED_STATE  - {"type":"SET_EXPANDED_STATE","expanded":{}}
[task 2021-01-09T14:30:31.771Z] 14:30:31     INFO - GECKO(1543) | 1610202631767	addons.xpi	ERROR	System addon update list error Error: got node name: html, expected: updates
[task 2021-01-09T14:31:10.191Z] 14:31:10     INFO - TEST-INFO | started process screentopng
[task 2021-01-09T14:31:10.475Z] 14:31:10     INFO - TEST-INFO | screentopng: exit 0
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Buffered messages logged at 14:30:25
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Entering test bound 
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Adding a new tab with URL: http://example.com/browser/devtools/client/debugger/test/mochitest/examples/doc-sources-querystring.html
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Tab added and finished loading
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Opening the toolbox
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Toolbox opened and focused
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Waiting on sources: simple1.js?x=1, simple1.js?x=2
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Finished waiting on sources: simple1.js?x=1, simple1.js?x=2
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - waiting for 2 sources
[task 2021-01-09T14:31:10.476Z] 14:31:10     INFO - Buffered messages logged at 14:30:31
[task 2021-01-09T14:31:10.479Z] 14:31:10     INFO - Console message: [JavaScript Error: "1610202631767	addons.xpi	ERROR	System addon update list error Error: got node name: html, expected: updates" {file: "resource://gre/modules/Log.jsm" line: 723}]
[task 2021-01-09T14:31:10.479Z] 14:31:10     INFO - append@resource://gre/modules/Log.jsm:723:12
[task 2021-01-09T14:31:10.480Z] 14:31:10     INFO - log@resource://gre/modules/Log.jsm:379:16
[task 2021-01-09T14:31:10.480Z] 14:31:10     INFO - error@resource://gre/modules/Log.jsm:387:10
[task 2021-01-09T14:31:10.480Z] 14:31:10     INFO - updateSystemAddons/res<@resource://gre/modules/addons/XPIInstall.jsm:4016:25
[task 2021-01-09T14:31:10.480Z] 14:31:10     INFO - promise callback*updateSystemAddons@resource://gre/modules/addons/XPIInstall.jsm:4016:7
[task 2021-01-09T14:31:10.481Z] 14:31:10     INFO - async*XPIProvider[meth]@resource://gre/modules/addons/XPIProvider.jsm:3235:28
[task 2021-01-09T14:31:10.481Z] 14:31:10     INFO - backgroundUpdateCheck/buPromise<@resource://gre/modules/AddonManager.jsm:1391:13
[task 2021-01-09T14:31:10.481Z] 14:31:10     INFO - backgroundUpdateCheck@resource://gre/modules/AddonManager.jsm:1399:7
[task 2021-01-09T14:31:10.481Z] 14:31:10     INFO - backgroundUpdateTimerHandler@resource://gre/modules/AddonManager.jsm:3573:26
[task 2021-01-09T14:31:10.482Z] 14:31:10     INFO - notify@resource://gre/modules/addonManager.js:174:25
[task 2021-01-09T14:31:10.482Z] 14:31:10     INFO - TM_notify/<@resource://gre/modules/UpdateTimerManager.jsm:221:50
[task 2021-01-09T14:31:10.482Z] 14:31:10     INFO - TM_notify@resource://gre/modules/UpdateTimerManager.jsm:292:7
[task 2021-01-09T14:31:10.483Z] 14:31:10     INFO - 
[task 2021-01-09T14:31:10.483Z] 14:31:10     INFO - Buffered messages finished
[task 2021-01-09T14:31:10.483Z] 14:31:10     INFO - TEST-UNEXPECTED-FAIL | devtools/client/debugger/test/mochitest/browser_dbg-sources-querystring.js | Test timed out - 
[task 2021-01-09T14:31:10.484Z] 14:31:10     INFO - Removing tab.
[task 2021-01-09T14:31:10.484Z] 14:31:10     INFO - Waiting for event: 'TabClose' on [object XULElement].
[task 2021-01-09T14:31:10.485Z] 14:31:10     INFO - Got event: 'TabClose' on [object XULElement].
[task 2021-01-09T14:31:10.485Z] 14:31:10     INFO - Tab removed and finished closing
[task 2021-01-09T14:31:10.501Z] 14:31:10     INFO - TEST-PASS | devtools/client/debugger/test/mochitest/browser_dbg-sources-querystring.js | The main process DevToolsServer has no pending connection when the test ends - 
[task 2021-01-09T14:31:10.502Z] 14:31:10     INFO - GECKO(1543) | MEMORY STAT | vsize 4300MB | residentFast 461MB | heapAllocated 136MB
[task 2021-01-09T14:31:10.503Z] 14:31:10     INFO - TEST-OK | devtools/client/debugger/test/mochitest/browser_dbg-sources-querystring.js | took 45326ms
Flags: needinfo?(hmanilla)

There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:bomsy, could you have a look please?
For more information, please visit auto_nag documentation.

Flags: needinfo?(hmanilla)

Note that I may fix this issues in bug 1690269.

Tested this! It looks like it has been fixed. Likely by 1690269

Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Flags: needinfo?(hmanilla)
Resolution: --- → DUPLICATE
Attachment #9189996 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: