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

Dispatcher can issue a migration request that comes back as failed even though it succeeded #24

Open
marusshi opened this issue Jul 26, 2018 · 1 comment
Assignees

Comments

@marusshi
Copy link
Collaborator

Let's say we want to migrate Foo from Pi0 to Pi1, using Dispatcher.

The current protocol is then:

  1. Dispatcher sends pubsub message to Pi0 (migrate Foo)
  2. Pi0 sends pubsub message to Pi1 (run my snapshot of Foo)
  3. Foo successfully migrated to Pi1
  4. Pi1 sends an ACK back to Pi0
  5. Pi0 sends ACK back to Dispatcher (your request was successful)

If Pi0 dies after step 3 but before step 5, Dispatcher will never receive an ACK, the migrate request will timeout and the user will think the migration failed even though it succeeded.
Maybe instead of listening for an ACK from Pi0, should Dispatcher listen for ACK from Pi1?

@marusshi
Copy link
Collaborator Author

  • Reason this came up is because I'm trying to handle some cases of a schedule failing to apply right now.
    Generally if Foo fails to migrate from Pi0 to Pi1, then we can usually assume Foo is not running on Pi0 or Pi, but then I ran into this issue.

@jungkumseok jungkumseok self-assigned this Jul 31, 2018
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

No branches or pull requests

2 participants