Hi @tihomir, thanks for clarification. being a new bee in the temporal world, I have a similar question on determinism. Say I have the below activitis,
- authenticate request (deterministic activity)
- check balance (non-deterministic activity)
- debit amount (non-deterministic activity)
Now the “balance check” activity invokes some third-party API to fetch the balance and my workflow crashes during “debit amount” step. Now since this “balance check” step was completed, so will that be executed again during default retry operation? If no, then how to ensure that during retry, both “balance check” and “debit amount” steps get executed?
Also, what is meant by “operations which write to the workflow event history”? Does it mean, that only below 2 type of invocations writes to the event history,
- static methods of “Workflow” class (like sleep, await etc.), when invoked explicitely
- our custom @WorkflowMethod, activity method, @SignalMethod
but not the java statements/lines in the body of the activity method that does not belong to above two types?