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
service/test: Fix waiting in testSessionAffinity and regroup affinity match map updates #11519
Conversation
Please set the appropriate release note label. |
2 similar comments
Please set the appropriate release note label. |
Please set the appropriate release note label. |
test-me-please |
5a5a9ad
to
bf44f71
Compare
test-me-please |
test-focus K8sService* |
bf44f71
to
22a69a5
Compare
test-focus .sessionAffinity. |
test-focus K8sService* |
22a69a5
to
b0d0838
Compare
test-focus K8sService* |
test-me-please |
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.
[Ignore this comment - I forgot to add inline comment before submitting the review, sorry for the noise]
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.
Looks good, and nice catch! One question.
b0d0838
to
d5520c2
Compare
test-focus K8sService* |
Previously, the waiting for the cilium endpoint was broken in testSessionAffinity helper: jq didn't return error after the endpoint has been removed, which lead to the long duration times. Fixing the jq issue revealed, that it's not enough to wait until the endpoint has disappeared from "cilium endpoints list". Further debugging has shown, that the first request from outside after the pod removal was failing because the IPCache entry was missing for the new pod at the time the request was sent which lead to the packet drop (see the comment in the test helper for more details). Signed-off-by: Martynas Pumputis <m@lambda.lt>
Add matches for new backends after the backends have been inserted into the BPF maps. Otherwise, if an affinity for the svc existed before and its backend ID == the new backend ID, then the new backend will be selected which is missing for a short period of time in the map (until it's inserted). Signed-off-by: Martynas Pumputis <m@lambda.lt>
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.
Thanks for the change, looks all good to me now.
See commit msgs.
Fix #11296
Partially_fix #11442