You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benedict (JIRA)" <ji...@apache.org> on 2018/09/21 16:33:00 UTC

[jira] [Created] (CASSANDRA-14777) ReadExecutor cannot upgrade digest to data request

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-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org