OODT
  1. OODT
  2. OODT-215 Workflow2 Architecture
  3. OODT-205

WorkflowInstances should have pre-conditions as well

    Details

    • Type: Sub-task Sub-task
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.4
    • Component/s: workflow manager
    • Labels:
      None
    • Environment:

      From JPL's old internal JIRA, before apache move

      Description

      WorkflowInstances, like WorkflowTasks, are just a specialized data-flow execution sequence. In many cases, you want a set of global (pre-)conditions to all be true in order to execute an entire sequence of WorkflowTasks. In this case, it would make a lot of sense to have WorkflowInstance-level conditions.

        Activity

        Chris A. Mattmann created issue -
        Chris A. Mattmann made changes -
        Field Original Value New Value
        Parent OODT-215 [ 12510793 ]
        Issue Type Improvement [ 4 ] Sub-task [ 7 ]
        Chris A. Mattmann made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Hide
        Chris A. Mattmann added a comment -
        • made a ton of progress towards this in r1157470. In fact, I've done everything but implement the engine part of it. To implement this in the current workflow engine, I'm tempted to "fake it" by firing off the workflow instance, but immediately putting it into paused state by adding a "virtual first task" with the workflow's conditions attached to it. The task would be a No-Op, so as soon as the conditions are true, the workflow would enter its "real" first task, and then be on with it.
        Show
        Chris A. Mattmann added a comment - made a ton of progress towards this in r1157470. In fact, I've done everything but implement the engine part of it. To implement this in the current workflow engine, I'm tempted to "fake it" by firing off the workflow instance, but immediately putting it into paused state by adding a "virtual first task" with the workflow's conditions attached to it. The task would be a No-Op, so as soon as the conditions are true, the workflow would enter its "real" first task, and then be on with it.
        Hide
        Chris A. Mattmann added a comment -
        • I implemented my suggestion in r1157478, and simply add a virtual task to the head of the workflow called "global-conditions-workflow name" and seed it with the workflow global conditions. Works perfectly. Unit tests updated to check for this in all 3 repos too for coverage.
        Show
        Chris A. Mattmann added a comment - I implemented my suggestion in r1157478, and simply add a virtual task to the head of the workflow called "global-conditions-workflow name" and seed it with the workflow global conditions. Works perfectly. Unit tests updated to check for this in all 3 repos too for coverage.
        Chris A. Mattmann made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Chris A. Mattmann
            Reporter:
            Chris A. Mattmann
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development