[
https://issues.apache.org/jira/browse/CASSANDRA-16673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marcus Eriksson updated CASSANDRA-16673:
----------------------------------------
Test and Documentation Plan: new test, cci run
Status: Patch Available (was: Open)
patch makes sure we don't overwrite endpoints calculated with an older ring
version and that we don't return endpoints calculated with a newer ringversion
after having calculated TokenMetadata.firstToken with an older TMD
https://github.com/krummas/cassandra/commits/marcuse/16673
https://app.circleci.com/pipelines/github/krummas/cassandra?branch=marcuse%2F16673
> Avoid race in AbstractReplicationStrategy endpoint caching
> ----------------------------------------------------------
>
> Key: CASSANDRA-16673
> URL: https://issues.apache.org/jira/browse/CASSANDRA-16673
> Project: Cassandra
> Issue Type: Bug
> Components: Cluster/Membership
> Reporter: Marcus Eriksson
> Assignee: Marcus Eriksson
> Priority: Normal
>
> We should make sure we track which ringVersion we are caching in
> AbstractReplicationStrategy to avoid a race where we might return the wrong
> EndpointsForRange.
> {code}
> Caused by: java.lang.IllegalArgumentException: 9010454139840013625 is not
> contained within (9223372036854775801,-4611686018427387905]
> at
> org.apache.cassandra.locator.EndpointsForRange.forToken(EndpointsForRange.java:59)
> at
> org.apache.cassandra.locator.AbstractReplicationStrategy.getNaturalReplicasForToken(AbstractReplicationStrategy.java:104)
> at
> org.apache.cassandra.locator.ReplicaLayout.forTokenReadLiveSorted(ReplicaLayout.java:330)
> at
> org.apache.cassandra.locator.ReplicaPlans.forRead(ReplicaPlans.java:594)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]