-
Notifications
You must be signed in to change notification settings - Fork 9
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
lower library interface timeout for remote config tests #2805
Conversation
I'm not sure what this is actually waiting for. It seems that waiting for 20s doesn't work with a poll interval of 2s, but it works with a polling interval of 1s, and the previous values were timeout of 100s with a polling interval of 5s. Does the timeout need to be 20x the polling interval? Is this checking for 20 remote config requests? It's very unclear to me why it needs to wait for so long given that we can configure the polling interval all the way down to 1ms if needed. cc @cbeauchesne |
Failures are on tests that are not affected by this change. |
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.
Could you compute the time gain with the change of DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS
?
Because it's far away from what we have in real condition, and the purpose of end-to-end is to be as close as possible from real conditions. We can deviate a little bit from this ideal line, but it must be worthy.
I've updated your branch to fix failures
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.
So far, the CI seems happy.
But I'd really like to know what is the gain of DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS=0.25
before approving.
The change on library_interface_timeout
is totally legit IMO.
Time gain is pretty easy to calculate as it's literally the timeout, so it goes from 100 seconds to 5 seconds.
It's still real condition, just faster. The fact that we're waiting 5 seconds every time in real environments is only so that we don't overload the backend, but in an isolated test there is no reason not to do this faster. |
I was speaking about |
Oh, well without lowering the poll interval, the remote config won't have been fetched before the timeout. As to why it needs to be ~20x lower than the timeout, I have no idea and the commit history was lost for that file so I don't know who could answer it. At the end of the day, the ratio is the same as before and everything is passing 🤷♂️ |
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.
LGTM but not I'm not part of system-tests-core team
Charles has been mostly OK with this change and Simon approved it. |
I'm not ok with this merge. I've explicitly asked here and here a vision of the time gained with this change.
So it's not the real condition. As explained many times, being as close as possible from real conditions is a golden rules. We can slighlty deviate from it, but only with a good reason. Faster CI time is definitly a good reason, but iif the gain is consequent. So far, we don't know if the gain in consequent. => I'm rverting the change on |
Fix interaction between interface timeout and RC POLL INTERVAL + Partial revert #2805
Motivation
Waiting 100 seconds seems like a lot, especially since it should be possible to get the remote config from client libraries in milliseconds.
Changes
Lower library interface timeout for remote config tests.
Workflow
codeowners
file quickly.🚀 Once your PR is reviewed, you can merge it!
🛟 #apm-shared-testing 🛟
Reviewer checklist
[<language>]
, double-check that only<language>
is impacted by the changebuild-XXX-image
label is present