You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2015/03/13 19:40:28 UTC

[1/2] airavata git commit: Show error message when there is no compute resources found.

Repository: airavata
Updated Branches:
  refs/heads/new-workflow-design-rabbitmq 774b092d3 -> 970045939


Show error message when there is no compute resources found.


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/ad8e4826
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/ad8e4826
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/ad8e4826

Branch: refs/heads/new-workflow-design-rabbitmq
Commit: ad8e482674b7c3523eed16b99b5d448dfb83f63c
Parents: 774b092
Author: shamrath <sh...@gmail.com>
Authored: Mon Mar 9 20:44:35 2015 -0400
Committer: shamrath <sh...@gmail.com>
Committed: Mon Mar 9 20:44:35 2015 -0400

----------------------------------------------------------------------
 .../xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java  | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/ad8e4826/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java
index c0c6b45..3425a4f 100644
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java
+++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java
@@ -151,6 +151,13 @@ public class WorkflowInterpreterLaunchWindow {
 
         try {
             hosts = airavataClient.getAllComputeResourceNames();
+            if (hosts.isEmpty()) {
+                JOptionPane.showMessageDialog(engine.getGUI().getFrame(),
+                        "No Compute Resources found",
+                        "Compute Resources",
+                        JOptionPane.ERROR_MESSAGE);
+                return;
+            }
         } catch (InvalidRequestException e2) {
             // TODO Auto-generated catch block
             e2.printStackTrace();


[2/2] airavata git commit: Fixed new workflow interpreter termination issue.

Posted by sh...@apache.org.
Fixed new workflow interpreter termination issue.


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/97004593
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/97004593
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/97004593

Branch: refs/heads/new-workflow-design-rabbitmq
Commit: 970045939852e228bd7059eac8c7df30acad0c0e
Parents: ad8e482
Author: shamrath <sh...@gmail.com>
Authored: Fri Mar 13 14:40:32 2015 -0400
Committer: shamrath <sh...@gmail.com>
Committed: Fri Mar 13 14:40:32 2015 -0400

----------------------------------------------------------------------
 .../workflow/engine/SimpleWorkflowInterpreter.java   | 15 ++++++++++++++-
 .../workflow/engine/dag/port/InputPortIml.java       |  3 ++-
 2 files changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/97004593/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/SimpleWorkflowInterpreter.java
----------------------------------------------------------------------
diff --git a/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/SimpleWorkflowInterpreter.java b/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/SimpleWorkflowInterpreter.java
index ee7ff6b..5504f84 100644
--- a/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/SimpleWorkflowInterpreter.java
+++ b/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/SimpleWorkflowInterpreter.java
@@ -115,6 +115,16 @@ class SimpleWorkflowInterpreter{
         log.debug("Parsed the workflow and got the workflow input nodes");
         // process workflow input nodes
         processWorkflowInputNodes(getWorkflowInputNodes());
+        if (readyList.isEmpty()) {
+            StringBuilder sb = new StringBuilder();
+            for (WorkflowInputNode workflowInputNode : workflowInputNodes) {
+                sb.append(", ");
+                sb.append(workflowInputNode.getInputObject().getName());
+                sb.append("=");
+                sb.append(workflowInputNode.getInputObject().getValue());
+            }
+            throw new AiravataException("No workflow application node in ready state to run with experiment inputs" + sb.toString());
+        }
         processReadyList();
     }
 
@@ -125,6 +135,9 @@ class SimpleWorkflowInterpreter{
      * @throws AiravataException
      */
     void processReadyList() throws RegistryException, AiravataException {
+        if (readyList.isEmpty() && processingQueue.isEmpty() && !waitingList.isEmpty()) {
+            throw new AiravataException("No workflow application node in ready state to run");
+        }
         for (WorkflowNode readyNode : readyList.values()) {
             if (readyNode instanceof WorkflowOutputNode) {
                 WorkflowOutputNode wfOutputNode = (WorkflowOutputNode) readyNode;
@@ -272,7 +285,7 @@ class SimpleWorkflowInterpreter{
     }
 
     boolean isAllDone() {
-        return !continueWorkflow || (waitingList.isEmpty() && readyList.isEmpty());
+        return !continueWorkflow || (waitingList.isEmpty() && readyList.isEmpty() && processingQueue.isEmpty());
     }
 
     private void setExperiment(String experimentId) throws RegistryException {

http://git-wip-us.apache.org/repos/asf/airavata/blob/97004593/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/dag/port/InputPortIml.java
----------------------------------------------------------------------
diff --git a/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/dag/port/InputPortIml.java b/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/dag/port/InputPortIml.java
index c78dc86..076f5b6 100644
--- a/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/dag/port/InputPortIml.java
+++ b/modules/simple-workflow/src/main/java/org/apache/airavata/simple/workflow/engine/dag/port/InputPortIml.java
@@ -69,7 +69,8 @@ public class InputPortIml implements InPort {
 
     @Override
     public boolean isReady() {
-        return getInputObject() != null && inputDataObjectType.getValue() != null && !inputDataObjectType.getValue().equals("");
+        return getInputObject() != null && (!inputDataObjectType.isIsRequired() ||
+                (inputDataObjectType.getValue() != null && !inputDataObjectType.getValue().equals("")));
     }
 
     @Override