Kepler: Issueshttps://projects.ecoinformatics.org/ecoinfo/https://projects.ecoinformatics.org/ecoinfo/ecoinfo/favicon.ico?14691340362012-05-07T23:15:32ZEcoinformatics Redmine
Redmine Bug #5601 (Closed): Can still lose report design when saving to KARhttps://projects.ecoinformatics.org/ecoinfo/issues/56012012-05-07T23:15:32ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>It's still possible to lose your report design when you save to a KAR -- there's at least one scenario where you can see your report design in the Designer, save to KAR, and the ROML does not end up in the KAR.</p> Bug #5434 (Resolved): run-kar result from headless kepler.sh execution doesn't contain report art...https://projects.ecoinformatics.org/ecoinfo/issues/54342011-06-30T02:03:01ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>This thread:<br /><a class="external" href="http://lists.nceas.ucsb.edu/kepler/pipermail/kepler-users/2011-June/002541.html">http://lists.nceas.ucsb.edu/kepler/pipermail/kepler-users/2011-June/002541.html</a><br /> prompted me to look into headless usage, esp wrt passing in workflow parameters. It's unclear to me if passing in parameters is supported by ant tasks like ant run-workflow-no-gui-server. So I began focusing on usage like:<br />./kepler.sh -runwf -nogui -myparam 7 /Users/derik/KeplerData/workflows/MyWorkflows/testwf.kar</p>
<p>If this testwf.kar contains a reportlayout (ROML), the reporting artifacts do not end up in the run-kar (or in provenance associated w/ the run) after execution if you specify parameters on the command line. If you don't pass in parameters, the run-kar contains everything it should.</p>
<p>I tracked this down to the WorkflowManager changeListener not hearing the change events on the model when it's changed for the parameter passed in. This is because the NamedObj this listener gets added to is a different instance than the one used a little bit later for execution. This is because the model can't be found in the ModelDirectory at the execution point, because it's not put in until that moment.</p>
<p>A solution to this bug is to call _openModel with the url to the temporary unzipped workflow.xml file immediately after it's created in KeplerConfigurationApplication(String[] args). Then the same NamedObj is utilized, and the WorkflowManager listener doesn't get lost.</p>
<p>I want to look at this a bit more before checking in the fix, e.g. to see if there's a better spot(s?) at which to put the model into the directory...</p> Bug #5433 (Resolved): use 1024m instead of 512m for reporting suitehttps://projects.ecoinformatics.org/ecoinfo/issues/54332011-06-28T22:28:19ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Kepler has a max memory setting of 512m by default. Increasing this to 1024m when using the reporting suite enables us to increase the hsqldb.cache_scale setting to 18 (which greatly improves workflow execution time performance when provenance is on by using more memory). Without making this change kepler will lock up with heap space errors after a few executions of data intensive workflows.</p> Bug #5337 (Resolved): NPE from WorkflowManager when configuring actor within compositehttps://projects.ecoinformatics.org/ecoinfo/issues/53372011-03-04T01:59:05ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Sometimes when you right-click Configure Actor an actor within a composite, and actually make a change, you'll get an Exception Change Failed message. This is due to an NPE from WorkflowManager.changeExecuted. oldLayout is null.</p> Bug #5301 (Resolved): clicking on Image item Scale Property Value sometimes gives ArrayIndexOutOf...https://projects.ecoinformatics.org/ecoinfo/issues/53012011-02-10T01:31:29ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Clicking on Image item Scale Property Value sometimes gives ArrayIndexOutOfBoundException, seems to happen after changing the scale of another report item.</p> Bug #5295 (Resolved): Report designer panel gui simplification and spacinghttps://projects.ecoinformatics.org/ecoinfo/issues/52952011-02-05T01:02:10ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>'Items of Interest' doesn't get enough room, and 'Report Formatting Items' gets too much.</p>
<p>The checkboxes (Show Ports, Show Attributes, Show Relations) probably take up too much room too. Also should Show Ports just always be on, and not shown? And should Show Relations even be an option? Relations can't be reported on, and don't seem very useful to me in list form.</p> Bug #5293 (Resolved): Deleting a report item scrolls you to top of designhttps://projects.ecoinformatics.org/ecoinfo/issues/52932011-02-04T01:12:58ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>This is really annoying when you're trying to delete items from a long report design; with each delete you lose your place.</p> Bug #5254 (Resolved): provenance database connections keep growing when using Reporting suite.https://projects.ecoinformatics.org/ecoinfo/issues/52542010-12-10T01:02:15Zjianwu jianwujianwu@sdsc.edu
<p>Every time a window is open, or a workflow is saved, running, a separate db connection is gotten. but they are not released when a window is closed. It will cause memory usage goes up.</p>
<p>We guess WorkflowRunManager.disconnect() should call SQLQueryV8.disconnect() to close the connection. Currently, SQLQueryV8.disconnect() is not called by any classes.</p>
<p>If we can reuse existing connections. The performance will be better than creating and closing a new one.</p>
<p>This is one stack trace for db connection when a window is open:</p>
<p>DatabaseFactory.getConnectedDatabaseType(Map<String,String>, String) line: 154 <br />SQLQueryV8.<init>(Map<String,String>) line: 77 <br />WorkflowRunManager.connect() line: 135 <br />WorkflowRunManagerPanel.reconnect() line: 960 <br />WorkflowRunManagerPanel.resetProvenanceInfo(ProvenanceStore) line: 937 <br />WorkflowRunManagerPanel.initializeTab() line: 231 <br />TabPaneFactory.createTabPaneTabs(TableauFrame) line: 110 <br />TabManager.initializeTabs(TableauFrame) line: 87 <br />KeplerGraphFrame._initBasicGraphFrame() line: 377 <br />KeplerGraphFrame(BasicGraphFrame).<init>(NamedObj, Tableau, LibraryAttribute) line: 224 <br />KeplerGraphFrame(ExtendedGraphFrame).<init>(CompositeEntity, Tableau, LibraryAttribute) line: 95 <br />KeplerGraphFrame(ActorGraphFrame).<init>(CompositeEntity, Tableau, LibraryAttribute) line: 135 <br />KeplerGraphFrame.<init>(CompositeEntity, Tableau, LibraryAttribute) line: 180 <br />KeplerGraphTableau.<init>(PtolemyEffigy, String, LibraryAttribute) line: 164 <br />KeplerGraphTableau$Factory.createTableau(Effigy) line: 227 <br />PtolemyTableauFactory.createTableau(Effigy) line: 100 <br />TableauFactory.createTableau(Effigy) line: 127 <br />Configuration.createPrimaryTableau(Effigy) line: 569 <br />TableauFrame$1.actionPerformed(ActionEvent) line: 519</p> Bug #5200 (Resolved): WorkflowRun and Reporting artifacts no longer put into run-karshttps://projects.ecoinformatics.org/ecoinfo/issues/52002010-10-14T23:23:20ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>A run-kar exported from the Workflow Run Manager on trunk no longer contains the workflowRun and roml and rio artifacts. I did some testing of various revisions of trunk reporting, and it looks like the problem began with r25808: "switch to Weak References in singleton classes and add cleanup when a window is closed, which is for bug 5095".</p>
Here's how I tested each revision:<br />------
<ul>
<li>cd kepler.modules/build-area;</li>
<li>rm -rf ~/KeplerData; ant clean-all;</li>
<li>cd ..;</li>
<li>svn update -r [rev] *;</li>
<li>cd build-area; ant run</li>
<li>create a simple sdf workflow and report, execute, export the run from the workflow run manager, and then look inside the run-kar using either the gui or by unzipping the kar from the command line.<br />------</li>
</ul>
<p>Here are the results for different revisions:<br />r26078 - not working - kar only contains wf<br />r25841 - not working - kar only contains wf<br />r25840 - not working - kepler locks up during run export<br />r25808 - not working - kepler locks up during run export<br />r25807 - working - kar contains all items</p> Bug #5196 (Resolved): uploading to remote server error.https://projects.ecoinformatics.org/ecoinfo/issues/51962010-09-29T22:23:55Zjianwu jianwujianwu@sdsc.edu
<p>First of all, I think the popup dialog for workflow run uploading is not quite clear. It is 'To upload to a remote repository, select one from the component search preferences.'. I think a better one is like 'To upload to a remote repository, please first select choose one remote save site at Tools->Preferences->Components.'</p>
<p>I chose library.kepler-project.org, and get exception when uploading a workflow run on my windows machine. I don't know why it tries to access this directory: /var/kepler/temporary/uploads/04-Helloworld-run2.kar</p>
<pre><code>[run] d: SEEK username: kepler password: <strong><b></strong> org: unaffiliated<br /> [run] auth with dn: uid=kepler,o=unaffiliated,dc=ecoinformatics,dc=org<br /> [run] ==============authenticating with url: <a class="external" href="http://library.kepler-project">http://library.kepler-project</a><br />.org/kepler/services/AuthenticationService<br /> [run] Authenticating with user: uid=kepler,o=unaffiliated,dc=ecoinformatic<br />s,dc=org and password: <strong></b></strong>**<br /> [run] using AuthenticationServiceClient to authenticate...<br /> [run] EcogridUtils: The time to create instance is =========== 0<br /> [run] AuthenticationServiceClient.login_action - return string: ACC3D77247<br />5F72B605218C8ABA1ADEEE<br /> [run] Done authenticating with AuthenticationServiceClient.<br /> [run] Time authenticating: 19 seconds.<br /> [run] EcogridUtils: The time to create instance is =========== 0<br /> [run] EcogridUtils: The time to create instance is =========== 0<br /> [run] org.kepler.objectmanager.repository.RepositoryException: java.rmi.Re<br />moteException: <?xml version="1.0"?><br /> [run] &lt;error&gt;<br /> [run] Error: problem reading multipart data: /var/kepler/temporary/uploads<br />/04-Helloworld-run2.kar (Permission denied)<br /> [run] &lt;/error&gt;<br /> [run]<br /> [run] at org.kepler.objectmanager.repository.EcogridRepository.put(Eco<br />gridRepository.java:214)<br /> [run] at org.kepler.kar.UploadToRepository.uploadFile(UploadToReposito<br />ry.java:212)<br /> [run] at org.kepler.gui.kar.ComponentUploader.upload(ComponentUploader<br />.java:99)<br /> [run] at org.kepler.gui.kar.ExportArchiveAction.actionPerformed(Export<br />ArchiveAction.java:476)<br /> [run] at org.kepler.workflowrunmanager.gui.kar.ExportRunsArchiveAction<br />.actionPerformed(ExportRunsArchiveAction.java:108)<br /> [run] at org.kepler.workflowrunmanager.gui.WorkflowRunManagerPanel$5.a<br />ctionPerformed(WorkflowRunManagerPanel.java:1070)<br /> [run] at javax.swing.AbstractButton.fireActionPerformed(AbstractButton<br />.java:1995)<br /> [run] at javax.swing.AbstractButton$Handler.actionPerformed(AbstractBu<br />tton.java:2318)<br /> [run] at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultBut<br />tonModel.java:387)<br /> [run] at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.<br />java:242)<br /> [run] at javax.swing.AbstractButton.doClick(AbstractButton.java:357)<br /> [run] at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemU<br />I.java:1223)<br /> [run] at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(<br />BasicMenuItemUI.java:1264)<br /> [run] at java.awt.Component.processMouseEvent(Component.java:6263)<br /> [run] at javax.swing.JComponent.processMouseEvent(JComponent.java:3267<br />)<br /> [run] at java.awt.Component.processEvent(Component.java:6028)<br /> [run] at java.awt.Container.processEvent(Container.java:2041)<br /> [run] at java.awt.Component.dispatchEventImpl(Component.java:4630)<br /> [run] at java.awt.Container.dispatchEventImpl(Container.java:2099)<br /> [run] at java.awt.Component.dispatchEvent(Component.java:4460)<br /> [run] at java.awt.LightweightDispatcher.retargetMouseEvent(Container.j<br />ava:4574)<br /> [run] at java.awt.LightweightDispatcher.processMouseEvent(Container.ja<br />va:4238)<br /> [run] at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4<br />168)<br /> [run] at java.awt.Container.dispatchEventImpl(Container.java:2085)<br /> [run] at java.awt.Window.dispatchEventImpl(Window.java:2478)<br /> [run] at java.awt.Component.dispatchEvent(Component.java:4460)<br /> [run] at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)<br /> [run] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDisp<br />atchThread.java:269)<br /> [run] at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatc<br />hThread.java:184)<br /> [run] at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDisp<br />atchThread.java:174)<br /> [run] at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.j<br />ava:169)<br /> [run] at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.j<br />ava:161)<br /> [run] at java.awt.EventDispatchThread.run(EventDispatchThread.java:122<br />)</code></pre> Bug #5100 (Resolved): Report Layout designed in a composite actor window is losthttps://projects.ecoinformatics.org/ecoinfo/issues/51002010-07-21T19:59:44ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>When you have a workflow with a composite actor, and you open the composite actor, its contents appear in a new kepler window. If you design a report layout in this window, and then close it, the parent workflow report designer does not show this layout. If you open the composite again, the report layout is not there either.</p>
<p>If you leave the composite actor window open with a report layout, no instance is generated for it after execution.</p>
<p>I'm not sure if or what the plan was for this scenario. Maybe switching to the Report Designer view should simply not be allowed when you're in a composite window. I think this would be a good first pass. An alternative is to keep the 2 (or N) report layout guis and objects for parent window and all opened composite actor windows in sync, and this will likely be more work.</p> Bug #5096 (Resolved): Reporting on a RecordToken failshttps://projects.ecoinformatics.org/ecoinfo/issues/50962010-07-15T00:49:16ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>I'm trying to report on a record token. I make a simple workflow with {{data = 1, timestamps = 2}} pasted in a Constant, and add Constant's output to my report design, but on execution get this error:</p>
<p>(Location of error unknown)org.apache.fop.fo.ValidationException: Error(Unknown location): fo:table-body is missing child elements. <br />Required Content Model: marker* (table-row+|table-cell+)</p>
<p>and a popup error.</p>
<p>I found someone w/ a similar error that garnered this response:<br /><a class="external" href="http://marc.info/?l=fop-user&m=120819139826155&w=2">http://marc.info/?l=fop-user&m=120819139826155&w=2</a></p> Bug #5094 (Resolved): reports do not display matrix or xml token datahttps://projects.ecoinformatics.org/ecoinfo/issues/50942010-07-14T18:08:43ZDaniel Crawldanielcrawl@gmail.com
<p>Reports do not display the contents of matrix tokens. I'm attaching an example kar.</p> Bug #5091 (Resolved): Dragging and dropping report layout items NPEshttps://projects.ecoinformatics.org/ecoinfo/issues/50912010-07-10T00:22:14ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Often when you're dragging and dropping a report item in the report designer, you get NPEs spewing on the console. This is a been an issue for a long time and it doesn't cause problems, but it can be annoying.</p>
<p>java.lang.NullPointerException<br /> at javax.swing.plaf.basic.BasicTextUI$TextTransferHandler.getImportFlavor(BasicTextUI.java:2183)<br /> at javax.swing.plaf.basic.BasicTextUI$TextTransferHandler.canImport(BasicTextUI.java:2409)<br /> at javax.swing.TransferHandler$DropHandler.dragEnter(TransferHandler.java:651)<br /> at java.awt.dnd.DropTarget.dragEnter(DropTarget.java:337)<br /> at javax.swing.TransferHandler$SwingDropTarget.dragEnter(TransferHandler.java:573)<br /> at sun.awt.dnd.SunDropTargetContextPeer.processEnterMessage(SunDropTargetContextPeer.java:307)<br /> at sun.awt.dnd.SunDropTargetContextPeer.access$500(SunDropTargetContextPeer.java:54)<br /> at sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEnterEvent(SunDropTargetContextPeer.java:771)<br /> at sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEvent(SunDropTargetContextPeer.java:739)<br /> at sun.awt.dnd.SunDropTargetEvent.dispatch(SunDropTargetEvent.java:29)<br /> at java.awt.Component.dispatchEventImpl(Component.java:3926)<br /> at java.awt.Container.dispatchEventImpl(Container.java:2068)<br /> at java.awt.Component.dispatchEvent(Component.java:3903)<br /> at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)<br /> at java.awt.LightweightDispatcher.trackMouseEnterExit(Container.java:4061)<br /> at java.awt.LightweightDispatcher.processDropTargetEvent(Container.java:3999)<br /> at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3861)<br /> at java.awt.Container.dispatchEventImpl(Container.java:2054)<br /> at java.awt.Window.dispatchEventImpl(Window.java:1801)<br /> at java.awt.Component.dispatchEvent(Component.java:3903)<br /> at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)<br /> at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)<br /> at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)<br /> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)<br /> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)<br /> at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)</p> Bug #5088 (Resolved): Report designer gui difficult to use with greater than about 3-4 itemshttps://projects.ecoinformatics.org/ecoinfo/issues/50882010-07-09T20:30:49ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Report designer becomes difficult to use for reports with greater than about 3-4 items. Since the panel has such a large height, scrolling becomes very difficult -- drag the knob/thumb and it's hard to not wildly overshoot, clicking on the arrows moves you at a snail's pace, clicking in the track is the best option, it moves you a page, but it's a complete page and you're left looking at complete blank space, which is disconcerting...I'd rather get to see a sliver of my last item at the top of my screen for reference.</p>
<p>I'm guessing the ideal solution is to dynamically resize the pane based on how many items are currently there.</p>