Sam Tunnicliffe created CASSANDRA-21002:
-------------------------------------------
Summary: Retry without time limit calculates wait time incorrectly
Key: CASSANDRA-21002
URL: https://issues.apache.org/jira/browse/CASSANDRA-21002
Project: Apache Cassandra
Issue Type: Bug
Components: Transactional Cluster Metadata
Reporter: Sam Tunnicliffe
Assignee: Sam Tunnicliffe
The Retry instances returned by {{Retry::withNoTimeLimit}} don't properly
convert from the wait time obtained from their delegate in nanos to the
timeunit requested by the caller. For callers which request a wait time not in
nanos such as {{Retry::maybeSleep}} which is used, for instance, when running
Paxos repair during CMS reconfiguration, the sleep time is inflated by orders
of magnitude.
Compounding this issue, when a node starts up and detects that either its
broadcast address or release version has changed, it submits a STARTUP
transformation to the CMS with the updated details. For this one submission, a
custom retry strategy is used which is intended to keep on trying to commit
indefinitely rather than stopping after a maximum number of attempts. There are
issues with the implementation of this strategy which causes the default sleep
time between retries to be approximately 198 weeks.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]