[kepler-dev] [Kepler - Bug #6481] (New) strange issue with MultipleTabDisplay actor and with Display like actors in general (missing output port in non-gui mode)

noreply at nceas.ucsb.edu noreply at nceas.ucsb.edu
Tue Mar 25 01:02:43 PDT 2014


Issue #6481 has been reported by Owsiak Michal.

----------------------------------------
Bug #6481: strange issue with MultipleTabDisplay actor and with Display like actors in general (missing output port in non-gui mode)
https://projects.ecoinformatics.org/ecoinfo/issues/6481

* Author: Owsiak Michal
* Status: New
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* Bugzilla-Id: 
----------------------------------------
Hi there,

I will paste here description that already went to Jianwu via e-mail, but I think it describes the issue in details:

Some time ago we have published our patches to MultipleTabDisplay actor so it is consistent with new way of redirecting output.

The issue here is, that we have problem with running Kepler workflows in non-gui mode.

The issue lays in missing "output" port inside Multiple Tab Display actor.

The problem is that in GUI mode, everything works just fine (see the screen shoot).

In non-gui mode, we are getting an exception (see the attachment - exception.txt).

Command line used for starting workflow is:

./kepler.sh -runwf -nogui -nocache ~/Desktop/testMTD.xml

Problematic workflow was reduced, and now, we have smallest case that triggers exception.

The workflow is inside: testMTD.xml.

The problem occurs in case Multiple Tab Display actor is inside Composite actor. If the MTD is placed on main workflow, everything is just fine.

If we start testMTD workflow in GUI mode - everything is OK.
If we start it following way:

./kepler.sh -runwf -nogui -nocache testMTD.xml

We are getting exception.

I have done some initial debugging, and it looks like issue lies in reading output port from the actor. It is not reported in the code.

Entity.java class has method: getPort. In this method, if I take a look at the code, I can see that variable "_portList" doesn't contain "output" port.

This is what I can see while running Kepler in Eclipse (non-gui mode of Kepler)

[
 ptolemy.actor.TypedIOPort
  {.testMTD.CompositeActor.MultipleTabDisplay.input},
 ptolemy.actor.TypedIOPort
  {.testMTD.CompositeActor.MultipleTabDisplay.trigger}
]

This is the code, that should return "output" port.

 public Port getPort(String name) {
        try {
            _workspace.getReadAccess();
            return (Port) _portList.get(name);
        } finally {
            _workspace.doneReading();
        }
    }

"_portList" doesn't contain output port, even though, this port is visible in GUI mode, and - in fact - works fine (take a look at screen shot).

The question here is. Where should we look for the bug? Do you have any suggestions? 


-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: https://projects.ecoinformatics.org/ecoinfo/my/account

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.nceas.ucsb.edu/kepler/pipermail/kepler-dev/attachments/20140325/a3666879/attachment.html>


More information about the Kepler-dev mailing list