-
Notifications
You must be signed in to change notification settings - Fork 113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add outcome and event for retrying postprocessing steps #4384
Conversation
Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes. |
@@ -153,6 +155,22 @@ func (PostprocessingFinished) Unmarshal(v []byte) (interface{}, error) { | |||
return e, err | |||
} | |||
|
|||
// PostprocessingRetry is emitted by *some* service which can decide that | |||
type PostprocessingRetry struct { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not extend (and maybe rename) already existing ResumePostprocessing
event?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kobergj PostprocessingRetry
is an informational event, emitted so that other services can learn about retries happening in the system. It is not used for control flow.
Instead the postprocessing service will, when it detects a retry
outcome, emit the PostprocessingRetry
right away and then emit a StartPostprocessingStep
event after the according backoff period to actually run the failed postprocessing step again.
Does that make sense to you? If yes I'll try to adjust the event documentation to make that more clear.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah I see. Who is listening to this event at the moment?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's currently not being received by anyone :)
The
retry
outcome can be used by postprocessing steps to reschedule themselves, e.g. after a temporary failures.