-
Notifications
You must be signed in to change notification settings - Fork 91
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
Race condition between operator's watch and e2eutil.WaitForDeployment. #549
Comments
A couple of points to take in consideration when evaluating this information below. Application resources without SBO annotations can't be reconciledCurrently when the application is created after the SBR, even if the GVK of the application is being observed ( This can be seen in the code below, where the incoming resource is evaluated and ignored in the case the relevant annotation is not present:
Updates not retrying on errorThere are some situations SBO doesn't reconcile on error, as captured on the search results shown below:
It might be required to review the |
Taking discussion to the PR |
Closing this issue as we moved to acceptance tests. |
I've noticed that if we create SBR before the application and then the
operator is watching for the application deployment to be ready
and at the same timee2eutil.WaitForDeployment(t, f.KubeClient, ns, appName, 1, retryInterval, timeout) is also watching the same deployment
. So here these two watches are in deadlock or sort of deadlock condition if the operator watch detects the deployment is ready before e2eutil watch then it will redeploy it with the secrets hence the e2eutil watch might miss the first deployment readiness and will still wait for deployment this time deployment will take some more time to reach 1 replica ensuing e2eutil watch timeout. Hence failing the e2e tests.The text was updated successfully, but these errors were encountered: