-
Notifications
You must be signed in to change notification settings - Fork 7
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
[DPE-4173] Miscellaneous improvements to continue stabilizing exporter integration tests #254
Conversation
…ps bind-address-in-use error
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.
Interesting approach!
It is by no means a call to surrender! Plan on continuing investigating the connection in TIME_WAIT with upstream: rluisr/mysqlrouter_exporter#67 |
RETRY_TIMEOUT = 3 * 60 | ||
|
||
if juju_.is_3_or_higher: | ||
TLS_APP_NAME = "self-signed-certificates" |
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.
nit: can you use lower_case since these technically aren't constants?
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.
why are they not constants? i believe they are as their values are not changing
also, all such variables are constants in tests, so for now, for consistency, i would prefer to leave as is
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.
the value changes based on if juju_.is_3_or_higher:
, so by definition it's not constant
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.
i think that this is open to interpretation. the value is assigned based on whether juju >=3, but does not change during the course of the variable's lifecycle. i dont believe, either way, that this would be a blocker for the PR - i am not adding the variable, just relocating it
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.
color of the buttons, as someone like to says. let's move forward
RETRY_TIMEOUT = 3 * 60 | ||
|
||
if juju_.is_3_or_higher: | ||
TLS_APP_NAME = "self-signed-certificates" |
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.
color of the buttons, as someone like to says. let's move forward
…ssues (#154) Counterpart of canonical/mysql-router-k8s-operator#254 ## Summary 1. Use `requests.get(stream=False)` to avoid open connections on the router exporter 2. Split the two exporter tests into different files so that they end up in different integration test groups 3. Use a much larger timeout (7mins) that the TIME_WAIT timeout (60s/1min) to see if the snap daemon (mysql-router-exporter) will restart successfully
Issue
TIME_WAIT
for a period of time when it shuts down. Immediately starting the server (in consecutive tests) results inbind-address in use
errorSolution
requests.get(stream=False)
instead of using connection poolsNotes
Tests passed in 1 retry compared to usually higher retries