ShiningRush / fastflow

A lightweight, high-performance distributed workflow framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

is fastflow support rollback?

qiankunli opened this issue · comments

in my case, i want to use goflow to create some resources on a public cloud. like creating a cloud vm with public ip.

  1. create a vm using cloud openapi
  2. wait the status of vm is running
  3. create a public ip using cloud openapi
  4. wait the status of public ip is available
  5. bind the public ip with vm
  6. other steps

i want

  1. if I cancel the workflow(like run flow.cancel()), workflow can free the created resources(vm,public ip etc)
  2. if one step failed, workflow can free the created resources(vm,public ip etc)

if I cancel the workflow(like run flow.cancel()), workflow can free the created resources(vm,public ip etc)

Fastflow support cancel command, you can free resource when dag instance cancel(you can get a signal from context).

if one step failed, workflow can free the created resources(vm,public ip etc)

Backward recovery(or call it rollback) is expensive, it would be better to recover forward, this is fastflow recommend way.
Fastflow now is not yet support rollback command, but you could start a rollback dag to make it.
(You can refer #7 to get more detail.)