Skip to content

CXXCBC-461: Do not send ping to nodes that have not completed bootstrap. #540

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

Merged
merged 1 commit into from
Mar 9, 2024

Conversation

thejcfactor
Copy link
Contributor

If doing a ping during a rebalance of a multi-node cluster it is possible that one or more of the nodes are in the process of completing bootstrap. This can cause the ping operation to timeout. Since we know when a node has bootstrapped or not, the SDK should not ping a node that has not bootstrapped. This will allow for the ping operation to complete without the worry of a timeout due to waiting on the bootstrap process to successfully complete.

  • Add a mechanism to keep track of the last error w/in the bootstrap_handler.
  • If ping is called, check if the node has bootstrapped. If the node is not bootstrapped, add the kv node to the ping report with an error indicating either the last error message from the bootstrap_handler or a generic message, but do not execute the ping operation.

If doing a ping during a rebalance of a multi-node cluster it is
possible that one or more of the nodes are in the process of completing
bootstrap.  This can cause the ping operation to timeout.  Since we know
when a node has bootstrapped or not, the SDK should not ping a node that has
not bootstrapped.  This will allow for the ping operation to complete
without the worry of a timeout due to waiting on the bootstrap process to successfully complete.

* Add a mechanism to keep track of the last error w/in the
  `bootstrap_handler`.
* If ping is called, check if the node has bootstrapped.  If the node is
  not bootstrapped, add the kv node to the ping report with an error
indicating either the last error message from the `bootstrap_handler` or
a generic message, but do not execute the ping operation.
@thejcfactor thejcfactor merged commit 6aa2f94 into couchbase:main Mar 9, 2024
@thejcfactor thejcfactor deleted the CXXCBC-461 branch March 9, 2024 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants