[Bug 3148] New: NPE in Accordion code makes host tree show up incorrectly

bugzilla-daemon at icedtea.classpath.org bugzilla-daemon at icedtea.classpath.org
Tue Aug 23 17:01:45 UTC 2016


http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=3148

            Bug ID: 3148
           Summary: NPE in Accordion code makes host tree show up
                    incorrectly
           Product: Thermostat
           Version: hg
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P5
         Component: gui
          Assignee: unassigned at icedtea.classpath.org
          Reporter: sgehwolf at redhat.com
                CC: thermostat at icedtea.classpath.org

Created attachment 1549
  --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1549&action=edit
Screenshot of the hosts/vms tree.

There seems to be some racy code when the accordion (host/vms tree) is being
rendered. I'm seeing this (it's not really reproducible):

WARNING - ActionNotifier: a listener threw an unexpected exception
  Caused by:
  java.lang.NullPointerException: null
  java.awt.Container.remove(Container.java:1261)
 
com.redhat.thermostat.client.swing.internal.accordion.Accordion$AccordionModelChangeListenerImpl.headerRemoved(Accordion.java:230)
 
com.redhat.thermostat.client.swing.internal.accordion.AccordionModel.fireHeaderRemovedEvent(AccordionModel.java:223)
 
com.redhat.thermostat.client.swing.internal.accordion.AccordionModel.removeHeader(AccordionModel.java:146)
 
com.redhat.thermostat.client.swing.internal.accordion.AccordionModel.clear(AccordionModel.java:274)
 
com.redhat.thermostat.client.swing.internal.vmlist.controller.HostTreeController.rebuildTree(HostTreeController.java:344)
 
com.redhat.thermostat.client.swing.internal.vmlist.controller.HostTreeController.addFilter(HostTreeController.java:401)
 
com.redhat.thermostat.client.swing.internal.vmlist.controller.FilterManager$1.actionPerformed(FilterManager.java:60)
 
com.redhat.thermostat.common.ActionNotifier.fireAction(ActionNotifier.java:80)
 
com.redhat.thermostat.common.ThermostatExtensionRegistry$1.addingService(ThermostatExtensionRegistry.java:69)
 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
  org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
  org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)
  org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:317)
  org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261)
 
com.redhat.thermostat.common.ThermostatExtensionRegistry.start(ThermostatExtensionRegistry.java:86)
 
com.redhat.thermostat.client.swing.internal.vmlist.controller.FilterManager.start(FilterManager.java:72)
 
com.redhat.thermostat.client.swing.internal.MainWindowControllerImpl.installListenersAndStartRegistries(MainWindowControllerImpl.java:439)
 
com.redhat.thermostat.client.swing.internal.MainWindowControllerImpl.access$1900(MainWindowControllerImpl.java:104)
 
com.redhat.thermostat.client.swing.internal.MainWindowControllerImpl$4.dependenciesAvailable(MainWindowControllerImpl.java:307)
 
com.redhat.thermostat.common.MultipleServiceTracker$InternalServiceTrackerCustomizer.addingService(MultipleServiceTracker.java:70)
 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
  org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
  org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
 
org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894)
 
org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932)
 
org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:793)
 
org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:543)
  org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4401)
  org.apache.felix.framework.Felix.registerService(Felix.java:3411)
 
org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:346)
 
org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:320)
 
com.redhat.thermostat.storage.internal.Activator$1.dependenciesAvailable(Activator.java:132)
 
com.redhat.thermostat.common.MultipleServiceTracker$InternalServiceTrackerCustomizer.addingService(MultipleServiceTracker.java:70)
 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
  org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
  org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
 
org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894)
 
org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932)
 
org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:793)
 
org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:543)
  org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4401)
  org.apache.felix.framework.Felix.registerService(Felix.java:3411)
 
org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:346)
 
org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:320)
 
com.redhat.thermostat.storage.internal.DbServiceImpl.connect(DbServiceImpl.java:112)
  com.redhat.thermostat.client.swing.internal.Main$1.run(Main.java:164)
 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  java.lang.Thread.run(Thread.java:745)

Hopefully the trace is sufficient to figure out where the problem is.

This has the effect of one incomplete host entry in the tree. It has no child
elements and is not expandable. Though, one can select it just fine and is a
dupe of the host entry below it. See attached screenshot.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20160823/1123d337/attachment-0001.html>


More information about the distro-pkg-dev mailing list