Skip to content

v1.3.0

Compare
Choose a tag to compare
@efonsell efonsell released this 15 Apr 06:01
· 2341 commits to master since this release

Highlights

  • Introduced workflow instance status, which indicates the execution state (created, inProgress, executing, paused, stopped, finished, manual) of workflow instance
  • Added REST API services for pausing, resuming and stopping workflow instances
  • Restructured workflow definition statistics to return workflow instance status counts for workflow instance states

Details

  • nflow-engine:
    • Use more optimal SQL when polling workflows when database supports update returning syntax
    • Only rollback poll operation when no workflows could be allocated for executing (when multiple pollers compete for same workflows)
    • Allow configuring executor queue length with nflow.dispatcher.executor.queue.size
    • nflow.transition.delay.waiterror.ms parameter was splitted to nflow.transition.delay.error.min.ms and nflow.transition.delay.error.max.ms
    • Add field nflow_instance_action.type that contains type of action:
      • stateExecution - for actions created with normal execution. This is also set for old actions created before this feature.
      • stateExecutionFailed - for actions where execution failed due thrown exception or retry count was exceeded.
      • externalChange - for changes created externally via API.
      • recovery - to indicate that the workflow instance was recovered after some executor died.
    • Use more optimal SQL when updating workflows when database supports updateable cte syntax
    • Automatically abbreviate state text for workflow instance and workflow instance action based on field size in database
    • Added WorkflowInstance.status (created, in_progress, executing, manual, finished, paused, stopped) for workflow instances
    • Removed WorkflowInstance.processing which is now replaced by WorkflowInstance.status
    • Workflow instance state text is now always set to a meaningful value when the instance is updated
    • Make most configuration properties required and remove the default values from the source code
    • Added missing default values to the configuration files
    • Improved workflow definition statistics query performance and results
    • Retry processing of a workflow instance that has unknown state after some delay (one hour by default, configurable)
    • Move workflow instance to error state when a state processing method returns an invalid next state
  • nflow-rest-api:
    • Added support for user-provided action description when updating a workflow instance
    • Added missing configuration options with default values
    • Added support for Action.type
    • Added service to pause, resume and stop the execution of the workflow instance
    • Make most configuration properties required and remove the default values from the source code
    • Added missing default values to the configuration files
    • Moved workflow definitions statistics to /statistics/workflow/{workflow-definition-type} and return statistics per workflow state and status
  • nflow-jetty:
    • added missing configuration options with default values
    • Make most configuration properties required and remove the default values from the source code
    • Added missing default values to the configuration files
    • Use nFlow Explorer version 0.0.7