-
Notifications
You must be signed in to change notification settings - Fork 8
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
fix: rolling deployments race #2790
Conversation
If we delete the deployments/runners straight away it may still be in some controllers route tables. By adding a small delay we make sure that all the controllers will have updated their table. This is a pretty nasty hack, but will likely be temporary. fixes: #2789
68230d9
to
1b8e856
Compare
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.
Should we open an issue to track undoing of this, or no need since you already have a longer running plan to fix?
I will open an issue, I realized that it is bigger than just this case, it also affects things like subscriptions where one controller can decide the deployment is ready and activate message delivery, and another controller can then start processing messages before it's route table is updated. |
I think this will all get resolved by the provisioner. eg. the provisioner won't provision subscriptions until routing tables are provisioned |
Currently I don't start subscriptions until route tables are provisioned, however it is local to a single controller, so we don't have a way of knowing that all route tables in all controllers are updated. |
Right, but I think as part of this provisioning change we'll need to ensure that routing tables are actually propagated. |
What I mean is, each thing created by the provisioner will need to guarantee that it's fully propagated before it's counted as provisioned. |
If we delete the deployments/runners straight away it may still be in some controllers route tables. By adding a small delay we make sure that all the controllers will have updated their table.
This is a pretty nasty hack, but will likely be temporary.
fixes: #2789