Benedict created CASSANDRA-14777:
------------------------------------

             Summary: ReadExecutor cannot upgrade digest to data request
                 Key: CASSANDRA-14777
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14777
             Project: Cassandra
          Issue Type: Improvement
          Components: Coordination
            Reporter: Benedict


ReadExecutor cannot send a request to any node it has already contacted, as the 
accounting cannot handle multiple responses from the same host.  In fact, any 
bug wherein a host somehow responded twice anyway would lead to a consistency 
level breakage.

The main problem incurred here is that if we receive no data response, we may 
not be able to speculate to obtain another one, particularly if only transient 
replicas remain to be contacted.  We might also be able to avoid speculating 
two data requests in ‘always’ speculating, also, as presumably this was to 
ensure the same problem was not encountered (wherein by ‘always’ speculating 
upfront, we could not recover from our only data response not arriving).

Ideally, we would maintain a map of endpoint->responses, and simply use the 
‘best’ response we have for each endpoint, and only count the first response 
towards our consistency counter.




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to