-
Notifications
You must be signed in to change notification settings - Fork 48
Fix metadata request timeout #539
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 metadata request timeout #539
Conversation
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.
control_connection_timeout is 2s by default. Should we maybe increase it?
100%, let's address it separately, read - https://github.com/scylladb/scylla-drivers/issues/106 |
Actually wait - maybe default for server-side should not be exactly the same as client side, but slightly bigger? If it's the same, then server-side will never be shown to useelr due to network latency (client side will trigger first). |
Yes, it should be slightly bigger to make up for network and processing delays. |
metadata_request_timeout and control_connection_timeout are going hand by hand, control_connection_timeout is client side timeout, while metadata_request_timeout is server side. In general case they always have to be eual.
….metadata_request_timeout PR scylladb#361 that have introduced `metadata_request_timeout` intentionally pulled actual `metadata_request_timeout` from `control_connection_timeout`, because both `metadata_request_timeout` and `control_connection_timeout` has to be inline. Since this PR brings `Cluster.metadata_request_timeout` back, we need to pull it from `Cluster.metadata_request_timeout`
New behavior needs to be tested: 1. metadata_request_timeout can be borrowed from control_connection_timeout 2. metadata_request_timeout can be set to 0, to disable it. 3. metadata_request_timeout can be set to some value to override default. 4. When both metadata_request_timeout and control_connection_timeou it should be disabled
f147330
to
c6e127a
Compare
@Lorak-mmk , can you please re-review again and reaprove if everything is fine. |
When I was testing e4a000f, I have figure that out there is another option that controls system queries timeout -
Cluster.control_connection_timeout
, switch to use that it instead ofCluster.metadata_request_timeout
, but did not removeCluster.metadata_request_timeout
.Effectively
Cluster.metadata_request_timeout
is not working, what is working isCluster.control_connection_timeout
.This PR addresses it the following way:
Cluster.metadata_request_timeout
actually workCluster.metadata_request_timeout
fromCluster.control_connection_timeout
Pre-review checklist
I added relevant tests for new features and bug fixes.I have adjusted the documentation in./docs/source/
.I added appropriateFixes:
annotations to PR description.