Kepler: Issueshttps://projects.ecoinformatics.org/ecoinfo/https://projects.ecoinformatics.org/ecoinfo/ecoinfo/favicon.ico?14691340362017-05-18T20:10:09ZEcoinformatics Redmine
Redmine Bug #7191 (Resolved): memory leak in CompositeActor for actor firing listenershttps://projects.ecoinformatics.org/ecoinfo/issues/71912017-05-18T20:10:09ZDaniel Crawldanielcrawl@gmail.com
<p>List of actor firing listeners needs to be null before cloning. I'm attaching a patch.</p> Bug #7190 (Resolved): memory leak due to hierarchy listeners when cloninghttps://projects.ecoinformatics.org/ecoinfo/issues/71902017-05-12T00:09:00ZDaniel Crawldanielcrawl@gmail.com
<p>When a model is cloned, some NamedObjs in the new model have hierarchy listeners from the original model, which prevents the new model from being garbage collected.</p>
<p>In the usecase I'm debugging, the toplevel Composites in both the original and new models are added as hierarchy listeners to PortParameters, but only the toplevel in the new model should be added. The original toplevel is added since clone() and setContainer() are called for the PortParameter before its container actor has been moved to the new toplevel.</p>
<p>I don't know the best approach to fix this. Making the listeners weak references would fix the memory leaks, but wrong listeners would still receive hierarchy change events.</p> Bug #7189 (New): memory leak in Managerhttps://projects.ecoinformatics.org/ecoinfo/issues/71892017-05-11T23:38:59ZDaniel Crawldanielcrawl@gmail.com
<p>The Manager registers a shutdown thread with the JVM, but does not unregister it after execute() is finished, which prevents the Manager from being garbage collected. run() does unregister it.</p>
<p>It also seems odd that the thread is registered only once (in the constructors), but never registered again after it is unregistered. The purpose of the thread is to "gracefully stop the execution of a model if the JVM is shut down (by control-C, the user logging out, etc.)", so I would expect the thread to be registered every time execution takes place.</p> Bug #7019 (Resolved): cloning problems in NamedObj and AtomicActorhttps://projects.ecoinformatics.org/ecoinfo/issues/70192016-05-03T18:57:04ZDaniel Crawldanielcrawl@gmail.com
<p>I'm attaching a patch to fix cloning issues in NamedObj.java:</p>
<p>// Since _debugListeners is null, _debugging should be<br />// false to avoid error message in _debug()</p>
<p>and AtomicActor.java:</p>
<p>// When super.clone() is called below, attributes that are<br />// contained in this actor are also cloned, which includes<br />// calling methods on these attributes such as setContainer().<br />// These methods may add themselves to the firing listeners<br />// or initializables lists in the newObject clone, so we do<br />// not want to clear these lists in newObject after super.clone().<br />// Instead, save this instance's lists here and restore them after<br />// call super.clone().</p> Bug #6893 (New): DateToken value inconsistenthttps://projects.ecoinformatics.org/ecoinfo/issues/68932015-12-03T00:33:05ZDaniel Crawldanielcrawl@gmail.com
<p>DateToken stores the date internally in _value and _calendar, but these fields are not kept consistent. For example, if you use ModifyDate to add 2 seconds, _value is not updated. See the attached test workflow.</p>
<p>Also, ModifyDate changes the state of the input token instead of creating a new one - I thought this was not allowed in actors.</p> Bug #6834 (Resolved): kepler data can icon displayed incorrectlyhttps://projects.ecoinformatics.org/ecoinfo/issues/68342015-08-25T22:56:03ZDaniel Crawldanielcrawl@gmail.com
<p>The "data can" icon used by DataTurbine and several other Kepler actors is displayed incorrectly. This appears to have been started with Ptolemy r73168 (r73163-73167 do not compile).</p> Feature #6833 (Resolved): syntax highlighting for language actorshttps://projects.ecoinformatics.org/ecoinfo/issues/68332015-08-23T21:35:26ZDaniel Crawldanielcrawl@gmail.com
<p>It would be nice if the Kepler language actors had syntax highlighting. Attached is an updated TextEditorConfigureFactory.</p> Bug #6831 (Closed): saving/loading window properties for multiple graphs/models in BasicGraphFramehttps://projects.ecoinformatics.org/ecoinfo/issues/68312015-08-16T22:50:16ZDaniel Crawldanielcrawl@gmail.com
<p>BasicGraphFrame saves properties such as center, zoom, size, etc., for the open frame. However, it assumes the frame only contains a single JGraph and model. Attached is an updated BasicGraphFrame that allows derived classes to save/load window properties for multiple JGraphs and models.</p> Bug #6681 (Resolved): unnecessary warnings when removing parametershttps://projects.ecoinformatics.org/ecoinfo/issues/66812015-03-02T22:03:52ZDaniel Crawldanielcrawl@gmail.com
<p>When a parameter is removed that is referenced by something else, a warning is displayed to the user (in Variable.setContainer()). However, there are situations where the reference should be ignored. For example, the Kepler provenance recorder has a reference to all the parameters in the workflow. Another example is PtolemyQuery in attachParameter().</p>
<p>Attached is a patch to avoid these unnecessary warnings.</p> Bug #6676 (Resolved): External Execution actors generates exception for empty directoryhttps://projects.ecoinformatics.org/ecoinfo/issues/66762015-02-27T21:36:46ZDaniel Crawldanielcrawl@gmail.com
<p>If the directory parameter is empty for the External Execution actor, a NullPointerException is generated:</p>
<p>java.lang.NullPointerException<br /> at ptolemy.actor.lib.Exec._exec(Exec.java:516)<br /> at ptolemy.actor.lib.Exec.fire(Exec.java:337)<br /> at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:496)</p>
<p>It would be better to default to user.dir or throw an exception saying directory must be specified.</p> Bug #6629 (Closed): type resolution problem when using RecordAssemblerhttps://projects.ecoinformatics.org/ecoinfo/issues/66292014-12-02T00:04:25ZDaniel Crawldanielcrawl@gmail.com
<p>Using RecordAssembler can cause type resolution to fail. Attached are two models that demonstrate the problem.</p>
<p>In rec-assembler-1.xml, a type resolution error will usually, but not always, occur when you run it.</p>
<p>In rec-assembler-2.xml, the second RecordAssembler actor is replaced with an Expression actor that constructs the same record, and no type resolution error occurs.</p> Bug #6615 (Resolved): apple-extensions does not compile with java 8https://projects.ecoinformatics.org/ecoinfo/issues/66152014-11-02T21:28:46ZDaniel Crawldanielcrawl@gmail.com
<p>The apple-extensions module does not compile with java 8 because the package com.apple.eawt is no longer on the default classpath. Prior to java 8, these classes were in ui.jar, but are now in rt.jar, which is not used by javac. I tried explicitly adding rt.jar to the classpath, but javac still fails.</p>
<p>A workaround is to comment out this module from the Kepler suite.</p> Bug #6614 (New): parameter editor background color different on Linuxhttps://projects.ecoinformatics.org/ecoinfo/issues/66142014-11-02T20:02:55ZDaniel Crawldanielcrawl@gmail.com
<p>In the actor parameter editor dialog, the background color is blue for values if the string mode is true. If the parameter has choices and string mode is true, the background should also be blue, but on Linux it is white. An example is the Array Peak Search actor's scale parameter. The color is white on Linux in Kepler and Vergil, but blue on Mac in Kepler and Vergil. I also confirmed this behavior has changed since Kepler 2.0.</p> Feature #6594 (New): cannot download from a taghttps://projects.ecoinformatics.org/ecoinfo/issues/65942014-09-12T17:03:26ZDaniel Crawldanielcrawl@gmail.com
<p>"ant change-to" downloads either from the trunk or branches. It'd be nice to also work with tags.</p> Bug #6588 (New): R actor does not have error for missing outputhttps://projects.ecoinformatics.org/ecoinfo/issues/65882014-08-21T20:27:56ZDaniel Crawldanielcrawl@gmail.com
<p>If the R actor has an output port "x", but the script does not assign a value to a variable "x", then the actor should report an error. Currently, the actor successfully runs but does not write a token to the output port.</p>