Skip to content
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

Clarify in the docs that load balancing policies do not influence to which nodes connections are being opened #636

Closed
piodul opened this issue Jan 27, 2023 · 2 comments
Labels
area/documentation Improvements or additions to documentation

Comments

@piodul
Copy link
Collaborator

piodul commented Jan 27, 2023

In some of the other drivers (Java, CPP) load balancing policies are able to influence to which nodes connections are being opened. For example, a LBP may be configured to only consider nodes from the local datacenter, so the session won't open connections to nodes from other DCs.

The scylla-rust-driver's architecture does not (currently?) allow for something like this. Instead, we have introduced the HostFilter abstraction which can allow users to explicitly choose to which nodes connections are being opened, independently of the LBPs used. However, this is not explicitly stated anywhere - users coming from other drivers may be confused and think that e.g. DcAwareRoundRobinPolicy::set_include_remote_nodes will have an effect on the set of nodes with open connections.

We should adjust the docs to clearly state this difference:

  • In the main documentation page for load balancing policies,
  • in the docstrings of methods that prevent the load balancing policy from considering all nodes in the cluster (e.g. aforementioned set_include_remote_nodes).
@mykaul mykaul added the area/documentation Improvements or additions to documentation label Jan 31, 2023
@havaker
Copy link
Contributor

havaker commented Mar 17, 2023

In the main documentation page for load balancing policies

It was clarified in #612

Load balancing policies do not influence to which nodes connections are
being opened. For a node connection blacklist configuration refer to
`scylla::transport::host_filter::HostFilter`, which can be set session-wide
using `SessionBuilder::host_filter` method.

in the docstrings of methods that prevent the load balancing policy from considering all nodes in the cluster (e.g. aforementioned set_include_remote_nodes).

Those methods were removed in #612 too.

I guess this can be closed now.

@piodul
Copy link
Collaborator Author

piodul commented Mar 20, 2023

I guess this can be closed now.

Right, thanks.

@piodul piodul closed this as completed Mar 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

3 participants