require operator does not honor past session's success/failure when retrying
See original GitHub issueI am using require operator to check the status of the previous session of the same workflow. The workflow should -
- continue if the last session was successful,
- fail if the last session failed,
- start last session if the last session does not exist, and,
- wait for the last session’s completion if it’s pending.
The above four conditions work perfectly when the session is started by the scheduler or is started using digdag start
command without the --retry
option.
But when I retry a session (either successful or failed) using digdag retry
or digdag start --retry
or digdag backfill
, the require operator starts the last session (condition 3 above) regardless of the status of the last session. In other words, last session is started again even if its status is successful or failed.
Issue Analytics
- State:
- Created 6 years ago
- Comments:11 (4 by maintainers)
Top Results From Across the Web
Messages - IBM
Operator response: View the earlier error message to see why the directory server did not start. If no previous error message was printed, ......
Read more >Automate Desktop and Automate Plus/Ultimate - Fortra
The Terminal action now automatically attempts to disconnect once task execution (Success, Failure, Aborted, or Stopped) is complete. The Web Browser (Click) ...
Read more >Configuration Options - OpenStack Docs
The duration between two successive keepalive retransmissions, if acknowledgement to the previous keepalive transmission is not received.
Read more >Diameter Issues - IETF
Issue #312, No Discussion, Diameter CMS Security - Require AAA-Node-Cert in DSAR and DSAA, Don Zick ... Issue #10, Base 05, Sessions that...
Read more >Dell EMC NetWorker Command Reference Guide
bsf SCSI command. If the –t option is not specified, the default method is to use the OS tape driver SCSI passthrough functions....
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
We are developing to enhance require> operator for internal requirements. As described in above comments, retry CLI command generates unique retryAttemptName and it is derived to required WF. As result, the required WF is alway executed. We will change this behavior as stop retryAttemptName derivation. In addition, add option to require> operator to force to run the required WF regardless of attempt exists or not.
Hi all,
I have encountered this issue recently. Just as @amogh09 said,
require
operator will check session attempt by bothretryAttemptName
andsessionTime
. That will cause the problem that when I usedretry
command those related workflows will be executed indeed.What I expected was
retry
would only check the latest attempts ofrequire
operators and always retry forcall
operators.This commit (571cd452c) is a workaround to me. I’m not sure if it is a good solution.
If it looks good to you, I can create a PR for it. What do you think.
Also, cc @frsyuki. Would really appreciate it if you can give me some feedback. Thank you.