Kepler: Issueshttps://projects.ecoinformatics.org/ecoinfo/https://projects.ecoinformatics.org/ecoinfo/ecoinfo/favicon.ico?14691340362014-08-21T20:27:56ZEcoinformatics Redmine
Redmine 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> Feature #6575 (New): reference parameters in R actor's scripthttps://projects.ecoinformatics.org/ecoinfo/issues/65752014-07-09T21:40:18ZDaniel Crawldanielcrawl@gmail.com
<p>It would be nice if the script in the R actor could reference parameters that were added to the R actor. Currently the R actor only converts tokens read on input ports to the R script.</p> Bug #5590 (New): RExpression forces pdf if 'automatically show graphics' is checkedhttps://projects.ecoinformatics.org/ecoinfo/issues/55902012-04-26T01:34:05ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Look into this forced format change side-effect which is confusing to a user. If you select e.g. png, and 'auto show..', you get a pdf.</p> Bug #5030 (New): RExpression2 actor will fail if the libs are not foundhttps://projects.ecoinformatics.org/ecoinfo/issues/50302010-05-26T21:20:31ZDerik Barseghianbarseghian@nceas.ucsb.edu
<p>Creating a new bug from discussion originating in bug#4985, relevant sections posted below:</p>
<p>Jianwu said:<br />I also tried workflows in Kepler-2.0.0-Demos\demos\R\r-2.0.0\demos\JRI<br />directory, the whole Kepler just quit with the following message in the<br />console. It makes sense that the dll doesn't work for 64 bit machine. But just<br />quitting Kepler is too unfriendly.</p>
<pre><code>[null] Cannot find JRI native library!<br /> [null] Please make sure that the JRI native library is in a directory<br />liste<br />d in java.library.path.<br /> [null]<br /> [null] java.lang.UnsatisfiedLinkError: C:\Program<br />Files\Kepler-2.0-RC2\r-2.<br />0.0\lib\jri.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform<br /> [null] at java.lang.ClassLoader$NativeLibrary.load(Native Method)<br /> [null] at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1753)<br /> [null] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1678)<br /> [null] at java.lang.Runtime.loadLibrary0(Runtime.java:822)<br /> [null] at java.lang.System.loadLibrary(System.java:993)<br /> [null] at org.rosuda.JRI.Rengine.&lt;clinit&gt;(Rengine.java:19)<br /> [null] at<br />org.ecoinformatics.seek.R.RExpression2._initializeRengine(REx<br />pression2.java:569)<br /> [null] at<br />org.ecoinformatics.seek.R.RExpression2._fireUsingJRI(RExpress<br />ion2.java:547)<br /> [null] at<br />org.ecoinformatics.seek.R.RExpression2.fire(RExpression2.java<br />:289)<br /> [null] at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:469)<br /> [null] at<br />ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSched<br />ulingDirector.java:188)<br /> [null] at ptolemy.actor.CompositeActor.fire(CompositeActor.java:458)<br /> [null] at ptolemy.actor.Manager.iterate(Manager.java:749)<br /> [null] at ptolemy.actor.Manager.execute(Manager.java:351)<br /> [null] at ptolemy.actor.Manager.run(Manager.java:1162)<br /> [null] at ptolemy.actor.Manager$3.run(Manager.java:1215)<br />Exception in thread "main" Java returned: 1<br /> at org.kepler.build.modules.ModulesTask.execute(ModulesTask.java:105)<br /> at org.kepler.build.runner.Kepler.main(Kepler.java:78)<br />Caused by: Java returned: 1<br /> at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)<br /> at org.kepler.build.Run.runSuite(Run.java:298)<br /> at org.kepler.build.Run.run(Run.java:202)<br /> at org.kepler.build.modules.ModulesTask.execute(ModulesTask.java:101)<br /> ... 1 more<br />--- Nested Exception ---<br />Java returned: 1<br /> at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)<br /> at org.kepler.build.Run.runSuite(Run.java:298)<br /> at org.kepler.build.Run.run(Run.java:202)<br /> at org.kepler.build.modules.ModulesTask.execute(ModulesTask.java:101)<br /> at org.kepler.build.runner.Kepler.main(Kepler.java:78)</code></pre>
<p>and Ben responded:<br />2. The RExpression2 (JRI-based) actor will fail if the libs are not found. This<br />is probably deep in the JRI.jar library when it cannot load the correct native<br />lib for the platform. We could probably try to detect the 32 v. 64 bitness of<br />the system and prevent the actor from attempting to use JRI if it was on a 64<br />bit machine - otherwise it will be the hard failure (system.exit)</p>
<p>and Jianwu:<br /> Matlab actors also have 32 and 64 bit issue when using JNI libraries to<br />communicate with Matlab. It will pop up an exception message when the JNI lib<br />doesn't work with the system. You can find some information at<br /><a class="external" href="https://kepler-project.org/developers/teams/build/matlab-lib-build-instructions-in-kepler-for-matlab-actor">https://kepler-project.org/developers/teams/build/matlab-lib-build-instructions-in-kepler-for-matlab-actor</a>.<br />It may help this bug.</p> Bug #4881 (New): RExpression outputs [false] for any matrix of booleanshttps://projects.ecoinformatics.org/ecoinfo/issues/48812010-03-12T18:53:40ZOliver Soongsoong@nceas.ucsb.edu
<p>In an RExpression, add an output port "out" and use this R script:</p>
<p>out <- matrix(c(TRUE, FALSE, TRUE, FALSE), 2)</p>
<p>I get [false] as the output token, which seems to be because RExpression.java on line 1108 says:</p>
<p>mt = new BooleanMatrixToken();</p>
<p>instead of:</p>
<p>mt = new BooleanMatrixToken(valS);</p>
<p>or something similar. I'm not actually sure such a constructor exists, but it seems like it should given the other constructors in the lines before.</p> Bug #4880 (New): RExpression cannot output matrix of stringshttps://projects.ecoinformatics.org/ecoinfo/issues/48802010-03-12T18:45:03ZOliver Soongsoong@nceas.ucsb.edu
<p>Create an RExpression with the output port "out" and for the script, use:</p>
<p>out <- matrix(letters, 2)</p>
<p>Looking at the code, it seems as if a matrix of strings was never really considered. Commas in the strings would likely cause problems, and I don't actually know if there's a StringMatrixToken.</p> Bug #4879 (New): RExpression replaces ) in string vectors with } when outputting to a porthttps://projects.ecoinformatics.org/ecoinfo/issues/48792010-03-12T18:37:49ZOliver Soongsoong@nceas.ucsb.edu
<p>In an RExpression, create the output port "out" and in the R script, use:</p>
<p>out <- c("(", ")")</p>
<p>Hooking this to a Display actor, I get {"(", "}"}. This is because RExpression.java line 1139 (I think) has:</p>
<p>temp = temp.replace(')', '}');</p>
<p>which replaces all occurrences of ), even within the string.</p> Bug #4876 (New): RExpression - recursively handle arrayshttps://projects.ecoinformatics.org/ecoinfo/issues/48762010-03-11T23:25:19Zben leinfelderleinfelder@nceas.ucsb.edu
<p>Currently you can only have a list of lists - it would be nice to handle the Token->R->Token conversion recursively so that there was no limit to 'n'</p> Bug #4869 (In Progress): changes made to workflows during dialogs before committing (Edit Paramet...https://projects.ecoinformatics.org/ecoinfo/issues/48692010-03-04T19:04:24ZOliver Soongsoong@nceas.ucsb.edu
<p>When I make changes to an actor through the dialog, it seems like the changes are made to the workflow immediately, before the "Commit" button is clicked.</p>
<p>For example, create a workflow with an EML 2 Dataset actor. Make sure Kepler has not already authenticated with KNB. Now edit the EML 2 Dataset actor to reference a data package that requires authentication. The KNB login window will immediately pop up, even though no changes have been committed. Dismiss the window in some way. Now click the Help button and close the help window. The dialog will have disappeared. Open the actor dialog again, and the change will be there.</p>
<p>I should point out that the "Cancel" button does seem to work, but I suspect (based on debugging comments and comments in code) that this acts by reverting the changes already made.</p>
<p>I've seen this for sure on EML 2 Dataset and RExpression, since changes to one trigger visual feedback and I've mucked around in the code of the other. I suspect this is a general problem, though, and it may be a result of the underlying ptolemy design.</p> Bug #4549 (In Progress): String Replace actor "remembers" previous execution valueshttps://projects.ecoinformatics.org/ecoinfo/issues/45492009-11-14T00:56:45ZOliver Soongsoong@nceas.ucsb.edu
<p>1. Build a workflow with an SDF director (set iterations to 1), an RExpression (turn off graphics output), and a Display actor. Hook the RExpression graphicsFileName port to the Display input port.<br />2. Run this workflow. There should be no noticeable output, as no token was passed to the Display actor. An Rplots.pdf file should have been generated in the appropriate subfolder of .kepler.<br />3. Add a String Replace actor. Hook the RExpression graphicsFileName port to the String Replace stringToEdit port, and hook the String Replace output port to the Display input port.<br />4. Run this workflow. Notice now that a Display actor window opens. A blank token of some sort was passed to the Display actor (I it's a "" string token). Again, another Rplots.pdf file should have been generated.<br />5. Turn on graphics output in the RExpression and run the workflow. The expected RExpression-1.png file should have been generated, and the Display actor should open and display the filename. Pay attention to the timestamp on the folder.<br />6. Turn off graphics output in the RExpression and run the workflow. The Display actor should open again and display the png filename from the previous execution. If you browse the .kepler, you should see the correct folder with the expected Rplots.pdf file.</p> Bug #4407 (New): RExpression problems with named non-numeric vectorshttps://projects.ecoinformatics.org/ecoinfo/issues/44072009-09-24T15:12:50ZOliver Soongsoong@nceas.ucsb.edu
<p>RExpression seems to have a problem outputting named non-numeric vectors that is not present with named numeric vectors.</p>
<p>See attached workflow for examples.</p> Bug #4219 (New): "Kepler Repositories" should be retrieved from the registryhttps://projects.ecoinformatics.org/ecoinfo/issues/42192009-07-06T17:37:07Zben leinfelderleinfelder@nceas.ucsb.edu
<p>Currently we use a combination of 2 .properties files to make actor/workflow/run library repositories available for users to upload to. Adding new ones requires editing configuration files - not entirely user friendly. This will probably be different with the new configuration changes.<br />We'll probably need to stick this into the EcogridServicesController stuff.</p> Bug #4010 (New): RExpression2 - tracking for backwards compatibilityhttps://projects.ecoinformatics.org/ecoinfo/issues/40102009-04-21T23:47:07Zben leinfelderleinfelder@nceas.ucsb.edu
<p>This bug is meant to help identify and track differences between the script-based (original) RExpression actor and the JRI-based RExpression2 actor</p> Bug #4002 (New): RExpression2 - handle arbitrary R data structureshttps://projects.ecoinformatics.org/ecoinfo/issues/40022009-04-21T00:06:13Zben leinfelderleinfelder@nceas.ucsb.edu
<p>Not everything in R fits into the Ptolemy types (nor the JRI types, for that matter).<br />The lm() method, for instance, returns something special.<br />It's been proposed (a few times) that there should be an RObjectToken to handle such cases so that at least R actors can communicate between each other with out loss/mutation of data.<br />The RExpression1 actor used file-based serialization to get around this limitation. We could attempt to use a hybrid approach for RExpression2 - mixing JRI with file-based serialization (best of both worlds?).</p> Bug #3931 (New): Get the R actor working with JNIhttps://projects.ecoinformatics.org/ecoinfo/issues/39312009-04-02T16:58:08ZChad Berkleyberkley@nceas.ucsb.edu
<p>We need to get the R actor working with JNI instead of having it make calls to the native executable. This will simplify many aspects of R, including file handling, installation and overall cohesiveness with the rest of the system.</p>
<p>Bug 3809 needs to get fixed first.</p>