- My Application does create, update and delete of (say Cars). A user can create a car once, update the car multiple times and delete the car once.
- We create a new workflow instance for every create car request.
- When an update or delete car is requested for a car, we create a new workflow instance but use the same wfid as that was used for create car.
- Right before update/delete workflow instance is triggered, we invoke a query method on the previous workflow instance of the same wfid and extract some data (using temporal service lib) and feed it as input to the workflow to be triggered.
- We don’t know the duration between create car and update/delete car. After a car is created, some customers may want their car to be updated in a couple of days, some want it after a couple of weeks and some never.
- With these things in mind, we want to archive our workflows.
- How should the archival frequency be decided for the above usecase? What are the side effects of a very short archival frequency (say every day)?
- Is there a difference in the way query methods are invoked for an archieved workflow (code wise)? or what ever the code currently used to query a non archieved workflow, same can be used?
- What could be the order of latency introduced for
- For invoking a query method on archieved workflow
- For creating a new instance of a workflow using the wfid of an archived workflow. Will there be any?
Or does it depened on the underlying infrastructure that holds the data?
- Is there something like unarchiving?