Skip to content
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

feat(pause): pausing immidiately instead of polling #1660

Closed
wants to merge 2 commits into from

Conversation

emjburns
Copy link
Contributor

@emjburns emjburns commented Oct 2, 2017

Pushing pause messages instead of updating the context then pausing on next poll of tasks.
Cascading pause message from execution -> running stages -> running tasks, instead of previous organization (update execution -> next time a task is run & execution paused, pause task -> pause stage tasks belongs to).

@robfletcher PTAL

@robfletcher
Copy link
Contributor

This all looks very good and soundly implemented.

My only concern is whether there's a possibility of a race condition between the PauseTaskHandler and activity going on in RunTaskHandler. Consider, if RunTaskHandler has started doing something and got past the check for PAUSED status but concurrently another Orca instance processes a PauseTask message, the PAUSED status may subsequently get overwritten when the RunTaskHandler completes and sends a CompleteTask message.

It would not be an issue if RunTaskHandler re-queued its message, only if it pushes a CompleteTask message.

I'm not sure what the best solution is, though.

@emjburns
Copy link
Contributor Author

emjburns commented Oct 6, 2017

Closing because of the possibility of race conditions. Instead, opening #1676 to implement this desired behavior.

@emjburns emjburns closed this Oct 6, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants