Project

General

Profile

Bug #5260

Problems with unknown free-form tags

Added by Derik Barseghian over 8 years ago. Updated over 8 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
tagging
Target version:
Start date:
12/21/2010
Due date:
% Done:

0%

Estimated time:
Bugzilla-Id:
5260

Description

There are some exceptions and gui malfunctions/lockups that occur that I believe are related to unknown free-form tags. By 'unknown' I mean the owl file that stores free-form tags in ~/.kepler/cache-2.1/modules/core/onto[numbers].owl has been deleted, e.g. by ant clean-cache, or this file has not been updated to contain free-form tags created on a different system, e.g. for a kar open event (not clear to me if that's what should happen, but these foreign tags needs to be made available somewhere).

To replicate:
  • open kepler
  • tag blank workflow with a new tag, e.g. myWorkflowTag
  • execute
  • File -> Save As to kar
  • quit kepler, ant clean-cache, restart kepler
  • open kar, tag is visible on workflow.
  • click tag X to delete it.
  • click on workflow. tag reappears. also the tag is not shown in the drop down menu, and the tag is not in the file in the cache dir.
  • also: change to the Reporting view, and see the run row no longer shows the workflow tag. Clicking on a different run row then (sometimes? always?) gives NPEs.

(I'm not clear how to replicate this, but this also occurred to me a few times, and I suspect is related to missing free-form tags: clicking on the tagging drop down button (on Mac) didn't bring up the list, and on linux the tagging drop down once appeared, but froze.)

One NPE comes from ColoredListCellRenderer, another is unclear:


Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at org.kepler.tagging.gui.ColoredListCellRenderer.getListCellRendererComponent(ColoredListCellRenderer.java:54)
at javax.swing.plaf.basic.BasicComboBoxUI.getDisplaySize(BasicComboBoxUI.java:1334)
at javax.swing.plaf.basic.BasicComboBoxUI.getMinimumSize(BasicComboBoxUI.java:903)
at com.apple.laf.AquaComboBoxUI.getMinimumSize(AquaComboBoxUI.java:507)
at javax.swing.JComponent.getMinimumSize(JComponent.java:1714)
at javax.swing.BoxLayout.checkRequests(BoxLayout.java:463)
at javax.swing.BoxLayout.minimumLayoutSize(BoxLayout.java:306)
at java.awt.Container.minimumSize(Container.java:1651)
at java.awt.Container.getMinimumSize(Container.java:1636)
at javax.swing.JComponent.getMinimumSize(JComponent.java:1716)
at javax.swing.BoxLayout.checkRequests(BoxLayout.java:463)
at javax.swing.BoxLayout.minimumLayoutSize(BoxLayout.java:306)
at java.awt.Container.minimumSize(Container.java:1651)
at java.awt.Container.getMinimumSize(Container.java:1636)
at javax.swing.JComponent.getMinimumSize(JComponent.java:1716)
at javax.swing.BoxLayout.checkRequests(BoxLayout.java:463)
at javax.swing.BoxLayout.minimumLayoutSize(BoxLayout.java:306)
at javax.swing.JToolBar$DefaultToolBarLayout.minimumLayoutSize(JToolBar.java:756)
at java.awt.Container.minimumSize(Container.java:1651)
at java.awt.Container.getMinimumSize(Container.java:1636)
at javax.swing.JComponent.getMinimumSize(JComponent.java:1716)
at javax.swing.BoxLayout.checkRequests(BoxLayout.java:463)
at javax.swing.BoxLayout.preferredLayoutSize(BoxLayout.java:281)
at java.awt.Container.preferredSize(Container.java:1599)
at java.awt.Container.getPreferredSize(Container.java:1584)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1636)
at java.awt.BorderLayout.layoutContainer(BorderLayout.java:798)
at java.awt.Container.layout(Container.java:1421)
at java.awt.Container.doLayout(Container.java:1410)
at java.awt.Container.validateTree(Container.java:1507)
at java.awt.Container.validateTree(Container.java:1513)
at java.awt.Container.validateTree(Container.java:1513)
at java.awt.Container.validate(Container.java:1480)
at javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:669)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:124)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.BoxLayout.preferredLayoutSize(BoxLayout.java:282)
at java.awt.Container.preferredSize(Container.java:1599)
at java.awt.Container.getPreferredSize(Container.java:1584)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1636)
at java.awt.BorderLayout.layoutContainer(BorderLayout.java:798)
at java.awt.Container.layout(Container.java:1421)
at java.awt.Container.doLayout(Container.java:1410)
at java.awt.Container.validateTree(Container.java:1507)
at java.awt.Container.validateTree(Container.java:1513)
at java.awt.Container.validateTree(Container.java:1513)
at java.awt.Container.validate(Container.java:1480)
at javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:669)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:124)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

History

#1 Updated by Sean Riddle over 8 years ago

Orphaned tags can now be properly deleted (as of r26636). After fixing the bug, I was unable to reproduce any of the other exceptions mentioned. I'll reopen this if I see a similar looking exception in the future.

#2 Updated by Derik Barseghian over 8 years ago

Thanks Sean. Things work for me too -- up until the very last step of the above procedure: when I click on different run rows after clicking on the tagged run row, I get the NPEs mentioned above.

Also when opening the kar with free-form tag that's no longer 'in the system' because of ant clean-cache, it's not available in the drop-down list (though I'm not sure if it should be).

#3 Updated by Sean Riddle over 8 years ago

(In reply to comment #2)

Also when opening the kar with free-form tag that's no longer 'in the system'
because of ant clean-cache, it's not available in the drop-down list (though
I'm not sure if it should be).

This part is expected behavior. The drop-down menu only contains tags that are currently known to the system (in the OntologyCatalog). I'll take a look at the other bit.

#4 Updated by Sean Riddle over 8 years ago

I fixed the ColoredListCellRenderer exception (r26677) and have not observed the other exception. Closing for now, unless that other exception can be reproduced.

#5 Updated by Redmine Admin over 6 years ago

Original Bugzilla ID was 5260

Also available in: Atom PDF