indeedeng / iwf

iWF is a WorkflowAsCode microservice orchestration platform offering an orchestration coding framework and service for building resilient, fault-tolerant, scalable long-running processes
MIT License
531 stars 55 forks source link

Provide API to override/set data objects and search attributes directly #211

Open longquanzheng opened 1 year ago

longquanzheng commented 1 year ago

This will be more flexible to use for operations. This can be used to change workflow input with reset(resetting to beginning will preserve the signals and reapply to the beginning of the workflow).

E.g. the client experience will be like for data attributes:

iwfClient.setDataAttribute(workflowId, key, value);
iwfClient.setDataAttributes(workflowId,  list.Of(key,value, key, value ...);

Similar to Search attributes.

Implementation Idea:

longquanzheng commented 1 year ago

Also need to build the versioning by default internally, so that it can provide locking mechanism.

Maybe use temporal update api instead of signal