RFR: JDK-8302644: IGV: Apply filters per graph tab and not globally [v13]

Tobias Holenstein tholenstein at openjdk.org
Thu Mar 30 07:19:48 UTC 2023


On Wed, 29 Mar 2023 12:32:29 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

> Works well for me but I spotted the following issue which seems to be a regression from this change:
> 
> * Open two .xml files, open a graph in each and select the local profile
> * Double click on a filter and then click Cancel
> 
> ```
> java.lang.AssertionError
> 	at com.sun.hotspot.igv.view.DiagramViewModel.filterChanged(DiagramViewModel.java:356)
> 	at com.sun.hotspot.igv.view.DiagramViewModel.lambda$new$1(DiagramViewModel.java:73)
> 	at com.sun.hotspot.igv.data.ChangedEvent.fire(ChangedEvent.java:44)
> 	at com.sun.hotspot.igv.data.ChangedEvent.fire(ChangedEvent.java:31)
> 	at com.sun.hotspot.igv.data.Event.fire(Event.java:56)
> 	at com.sun.hotspot.igv.filter.FilterChain$1.changed(FilterChain.java:48)
> 	at com.sun.hotspot.igv.filter.FilterChain$1.changed(FilterChain.java:45)
> 	at com.sun.hotspot.igv.data.ChangedEvent.fire(ChangedEvent.java:44)
> 	at com.sun.hotspot.igv.data.ChangedEvent.fire(ChangedEvent.java:31)
> 	at com.sun.hotspot.igv.data.Event.fire(Event.java:56)
> 	at com.sun.hotspot.igv.filter.CustomFilter.openInEditor(CustomFilter.java:86)
> 	at com.sun.hotspot.igv.filter.CustomFilter$1.open(CustomFilter.java:77)
> 	at org.openide.actions.OpenAction.performAction(OpenAction.java:59)
> 	at org.openide.util.actions.NodeAction$DelegateAction$1.run(NodeAction.java:561)
> 	at org.openide.util.actions.ActionInvoker$1.run(ActionInvoker.java:70)
> 	at org.openide.util.actions.ActionInvoker.doPerformAction(ActionInvoker.java:91)
> 	at org.openide.util.actions.ActionInvoker.invokeAction(ActionInvoker.java:74)
> 	at org.openide.util.actions.NodeAction$DelegateAction.actionPerformed(NodeAction.java:558)
> 	at org.openide.explorer.view.ListView.performObjectAt(ListView.java:681)
> 	at org.openide.explorer.view.ListView$PopupSupport.mouseClicked(ListView.java:1306)
> 	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
> 	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6638)
> 	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
> 	at java.desktop/java.awt.Component.processEvent(Component.java:6400)
> 	at java.desktop/java.awt.Container.processEvent(Container.java:2263)
> 	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011)
> 	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
> 	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843)
> 	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
> 	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4556)
> 	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
> 	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
> 	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
> 	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843)
> 	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
> 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
> 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
> 	at java.base/java.security.AccessController.doPrivileged(Native Method)
> 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
> 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
> 	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
> 	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
> 	at java.base/java.security.AccessController.doPrivileged(Native Method)
> 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
> 	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
> 	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
> [catch] at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
> 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
> 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
> 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
> 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
> 	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
> ```

Thanks for catching that @TobiHartmann . It should be fixed now

-------------

PR Comment: https://git.openjdk.org/jdk/pull/12714#issuecomment-1489812196


More information about the hotspot-compiler-dev mailing list