You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Ernest Allen (JIRA)" <ji...@apache.org> on 2017/06/29 20:07:00 UTC

[jira] [Resolved] (DISPATCH-789) Console breaks when quickly moving between tabs (both hawtio and stand-alone)

     [ https://issues.apache.org/jira/browse/DISPATCH-789?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ernest Allen resolved DISPATCH-789.
-----------------------------------
       Resolution: Fixed
         Assignee: Ernest Allen
    Fix Version/s: 1.0.0

There may still be error messages in the debug console, but the page should not crash anymore. 

> Console breaks when quickly moving between tabs (both hawtio and stand-alone)
> -----------------------------------------------------------------------------
>
>                 Key: DISPATCH-789
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-789
>             Project: Qpid Dispatch
>          Issue Type: Bug
>          Components: Console
>    Affects Versions: 1.0.0
>         Environment: Dispatch and Dispatch plugin at commit e22091b3
> Built without libwebsocket, used the old websockify way to connect console
> Firefox 51.0.1, Chrome 56.0.2924.87 (64-bit) on Linux
>            Reporter: Jiri Danek
>            Assignee: Ernest Allen
>             Fix For: 1.0.0
>
>
> If I open Dispatch plugin, log in, and quickly switch between tabs in Dispatch plugin, the plugin stops working eventually.
> See https://www.youtube.com/watch?v=sDLLXAWEVdg
> h3. Logs for hawtio version of console
> {noformat}
> Error: TypeError: tree.getNodeByKey is not a function
>     at updateLeaves (eval at <anonymous> (app.js?c8641b2e13788127:1), <anonymous>:1402:29)
>     at eval (eval at <anonymous> (app.js?c8641b2e13788127:1), <anonymous>:1452:29)
>     at app.js?c8641b2e13788127:14
>     at g (app.js?c8641b2e13788127:13)
>     at app.js?c8641b2e13788127:13
> consoleLogger @ app.js?c8641b2e13788127:16
> c @ app.js?c8641b2e13788127:16
> (anonymous) @ app.js?c8641b2e13788127:16
> invoke @ app.js?c8641b2e13788127:4
> error @ app.js?c8641b2e13788127:4
> (anonymous) @ app.js?c8641b2e13788127:4
> (anonymous) @ app.js?c8641b2e13788127:14
> (anonymous) @ app.js?c8641b2e13788127:13
> (anonymous) @ app.js?c8641b2e13788127:14
> g @ app.js?c8641b2e13788127:13
> (anonymous) @ app.js?c8641b2e13788127:13
> {noformat}
> {noformat}
> app.js?c8641b2e13788127:16 Stack trace:  <div class="log-stack-trace">
> <p>TypeError: tree.getNodeByKey is not a function</p>
> <p>    at updateLeaves (eval at <anonymous> (http://127.0.0.1:8080/hawtio/app/app.js?c8641b2e13788127:1:26916), <anonymous>:1402:29)</p>
> <p>    at eval (eval at <anonymous> (http://127.0.0.1:8080/hawtio/app/app.js?c8641b2e13788127:1:26916), <anonymous>:1452:29)</p>
> <p>    at http://127.0.0.1:8080/hawtio/app/app.js?c8641b2e13788127:14:24956</p>
> <p>    at g (http://127.0.0.1:8080/hawtio/app/app.js?c8641b2e13788127:13:17652)</p>
> <p>    at http://127.0.0.1:8080/hawtio/app/app.js?c8641b2e13788127:13:19298</p>
> </div>
> {noformat}
> Or sometimes (same as in DISPATCH-791)
> {noformat}
> app.js?c8641b2e13788127:16 [Window] Uncaught TypeError: Cannot read property 'results' of undefined  (<a href="http://127.0.0.1:8080/hawtio/dispatch_hawtio_console/topology:5">http://127.0.0.1:8080/hawtio/dispatch_hawtio_console/topology:5:8603</a>)
> consoleLogger	@	app.js?c8641b2e13788127:16
> c	@	app.js?c8641b2e13788127:16
> (anonymous)	@	app.js?c8641b2e13788127:16
> invoke	@	app.js?c8641b2e13788127:4
> error	@	app.js?c8641b2e13788127:4
> window.onerror	@	app.js?c8641b2e13788127:16
> {noformat}
> Or sometimes
> {noformat}
> app.js?c8641b2e13788127:16 [Window] Script error.  (<a href=":0">:0</a>)
> consoleLogger	@	app.js?c8641b2e13788127:16
> c	@	app.js?c8641b2e13788127:16
> (anonymous)	@	app.js?c8641b2e13788127:16
> invoke	@	app.js?c8641b2e13788127:4
> error	@	app.js?c8641b2e13788127:4
> window.onerror	@	app.js?c8641b2e13788127:16
> {noformat}
> At some point, the JavaScript in the dispatch plugin completely breaks and almost nothing no longer works.
> h3. The stand-alone console
> It shows some errors in browser log too, before it breaks
> {noformat}
> TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (ng-grid.min.js:1)
>     at angular.js:19964
>     at completeOutstandingRequest (angular.js:6131)
>     at angular.js:6411
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> (anonymous) @ angular.js:19967
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> angular.js:14362 TypeError: Cannot read property 'find' of null
>     at l.setDraggables (https://cdnjs.cloudflare.com/ajax/libs/ng-grid/2.0.11/ng-grid.min.js:1:17852)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:19964:31
>     at completeOutstandingRequest (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6131:10)
>     at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.2/angular.js:6411:7 Possibly unhandled rejection: {}
> (anonymous) @ angular.js:14362
> (anonymous) @ angular.js:10859
> processChecks @ angular.js:16715
> $eval @ angular.js:18017
> $digest @ angular.js:17827
> $apply @ angular.js:18125
> (anonymous) @ angular.js:19972
> completeOutstandingRequest @ angular.js:6131
> (anonymous) @ angular.js:6411
> ng-grid.min.js:1 Uncaught TypeError: Cannot read property '$$phase' of null
>     at Object.o.digest (ng-grid.min.js:1)
>     at Object.o.BuildStyles (ng-grid.min.js:1)
>     at Object.o.RebuildGrid (ng-grid.min.js:1)
>     at ng-grid.min.js:1
> o.digest @ ng-grid.min.js:1
> o.BuildStyles @ ng-grid.min.js:1
> o.RebuildGrid @ ng-grid.min.js:1
> (anonymous) @ ng-grid.min.js:1
> {noformat}
> When it broke, the errors were (in Chrome)
> {noformat}
> Uncaught TypeError: Cannot read property 'results' of undefined
>     at initializeLinks (qdrTopology.js:723)
>     at qdrTopology.js:1009
>     at qdrService.js:440
>     at i._call (d3-queue.min.js:2)
>     at s (d3-queue.min.js:2)
>     at d3-queue.min.js:2
>     at qdrService.js:668
>     at Object.resolver (qdrService.js:813)
>     at Object.resolve (qdrService.js:172)
>     at Receiver.<anonymous> (qdrService.js:1073)
> initializeLinks @ qdrTopology.js:723
> (anonymous) @ qdrTopology.js:1009
> (anonymous) @ qdrService.js:440
> _call @ d3-queue.min.js:2
> s @ d3-queue.min.js:2
> (anonymous) @ d3-queue.min.js:2
> (anonymous) @ qdrService.js:668
> (anonymous) @ qdrService.js:813
> resolve @ qdrService.js:172
> (anonymous) @ qdrService.js:1073
> EventEmitter.emit @ rhea-min.js:5
> link.dispatch @ rhea-min.js:1
> Incoming.on_transfer @ rhea-min.js:3
> Session.on_transfer @ rhea-min.js:3
> Connection.(anonymous function) @ rhea-min.js:1
> c.dispatch @ rhea-min.js:4
> Transport.read @ rhea-min.js:3
> Connection.input @ rhea-min.js:1
> ws.onmessage @ rhea-min.js:4
> rhea-min.js:3 Uncaught Error: frame sequence error: expected 341, got 342
>     at Incoming.on_transfer (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:465)
>     at Session.on_transfer (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:8023)
>     at Connection.(anonymous function) [as on_transfer] (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:1:16550)
>     at c.dispatch (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:4:162)
>     at Transport.read (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:12095)
>     at Connection.input (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:1:10995)
>     at WebSocket.ws.onmessage (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:4:3113)
> Incoming.on_transfer @ rhea-min.js:3
> Session.on_transfer @ rhea-min.js:3
> Connection.(anonymous function) @ rhea-min.js:1
> c.dispatch @ rhea-min.js:4
> Transport.read @ rhea-min.js:3
> Connection.input @ rhea-min.js:1
> ws.onmessage @ rhea-min.js:4
> angular.js:14362 QDR: routeChangeSuccess: path is now /charts
> angular.js:14362 QDR: {}
> angular.js:14362 QDR: stopUpdating called
> qdrTopology.js:1024 Uncaught TypeError: Cannot read property '.router' of undefined
>     at qdrTopology.js:1024
>     at qdrService.js:440
>     at i._call (d3-queue.min.js:2)
>     at s (d3-queue.min.js:2)
>     at a (d3-queue.min.js:2)
>     at i.abort (d3-queue.min.js:2)
>     at timedOut (qdrService.js:805)
> (anonymous) @ qdrTopology.js:1024
> (anonymous) @ qdrService.js:440
> _call @ d3-queue.min.js:2
> s @ d3-queue.min.js:2
> a @ d3-queue.min.js:2
> abort @ d3-queue.min.js:2
> timedOut @ qdrService.js:805
> angular.js:14362 QDR: routeChangeSuccess: path is now /topology
> angular.js:14362 QDR: started QDR.TopologyController with urlPrefix: http://127.0.0.1:8080/stand-alone/
> angular.js:14362 QDR: {}
> angular.js:14362 QDR: startUpdating called
> rhea-min.js:3 Uncaught Error: frame sequence error: expected 341, got 343
>     at Incoming.on_transfer (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:465)
>     at Session.on_transfer (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:8023)
>     at Connection.(anonymous function) [as on_transfer] (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:1:16550)
>     at c.dispatch (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:4:162)
>     at Transport.read (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:12095)
>     at Connection.input (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:1:10995)
>     at WebSocket.ws.onmessage (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:4:3113)
> Incoming.on_transfer @ rhea-min.js:3
> Session.on_transfer @ rhea-min.js:3
> Connection.(anonymous function) @ rhea-min.js:1
> c.dispatch @ rhea-min.js:4
> Transport.read @ rhea-min.js:3
> Connection.input @ rhea-min.js:1
> ws.onmessage @ rhea-min.js:4
> angular.js:14362 QDR: routeChangeSuccess: path is now /list
> angular.js:14362 QDR: stopUpdating called
> angular.js:14362 QDR: startUpdating called
> angular.js:14362 QDR: asked to get topology but was already getting it
> rhea-min.js:3 Uncaught Error: frame sequence error: expected 341, got 344
>     at Incoming.on_transfer (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:465)
>     at Session.on_transfer (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:8023)
>     at Connection.(anonymous function) [as on_transfer] (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:1:16550)
>     at c.dispatch (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:4:162)
>     at Transport.read (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:3:12095)
>     at Connection.input (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:1:10995)
>     at WebSocket.ws.onmessage (http://127.0.0.1:8080/stand-alone/plugin/lib/rhea-min.js:4:3113)
> Incoming.on_transfer @ rhea-min.js:3
> Session.on_transfer @ rhea-min.js:3
> Connection.(anonymous function) @ rhea-min.js:1
> c.dispatch @ rhea-min.js:4
> Transport.read @ rhea-min.js:3
> Connection.input @ rhea-min.js:1
> ws.onmessage @ rhea-min.js:4
> angular.js:14362 QDR: routeChangeSuccess: path is now /overview
> qdrOverview.js:39 QDR.OverviewControll started with location of /overview and connection of  true
> angular.js:14362 QDR: node activated: Addresses
> {noformat}
> and then it died.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org