Uploaded image for project: 'Apache Cassandra'
  1. Apache Cassandra
  2. CASSANDRA-16673

Avoid race in AbstractReplicationStrategy endpoint caching

    XMLWordPrintableJSON

Details

    Description

      We should make sure we track which ringVersion we are caching in AbstractReplicationStrategy to avoid a race where we might return the wrong EndpointsForRange.

      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)
      

      Attachments

        Activity

          People

            marcuse Marcus Eriksson
            marcuse Marcus Eriksson
            Marcus Eriksson
            Alex Petrov, Jon Meredith
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: