[ 
https://issues.apache.org/jira/browse/CASSANDRA-14705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benedict updated CASSANDRA-14705:
---------------------------------
    Description: 
Clarify the new {{ReplicaLayout}} code, separating it into ReplicaPlan (for 
what we want to do) and {{ReplicaLayout}} (for what we know about the cluster), 
with well defined semantics (and comments in the rare cases those semantics are 
weird)

Found and fixed some bugs:
        - {{commitPaxos}} was using only live nodes, when needed to include down
        - We were not writing to pending transient replicas
        - On write, we were not hinting to full nodes with transient 
replication enabled (since we filtered to {{liveOnly}}, in order to include our 
transient replicas above {{blockFor}})
        - If we speculated, in {{maybeSendAdditionalReads}} (in read repair) we 
would only consult the same node we had speculated too.  This also applied to 
{{maybeSendAdditionalWrites}} - and this issue was also true pre-TR.

  was:
Clarify the new ReplicaLayout code, separating it into ReplicaPlan (for what we 
want to do) and ReplicaLayout (for what we know about the cluster), with well 
defined semantics (and comments in the rare cases those semantics are weird)

Found and fixed bugs:
        - commitPaxos was using live, when needed all included
        - We were not writing to pending transient replicas
        - On write, we were not hinting to full nodes with transient 
replication enabled (since we filtered to liveOnly, in order to include our 
transient replicas above blockFor)



> ReplicaLayout follow-up
> -----------------------
>
>                 Key: CASSANDRA-14705
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14705
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Benedict
>            Assignee: Benedict
>            Priority: Major
>
> Clarify the new {{ReplicaLayout}} code, separating it into ReplicaPlan (for 
> what we want to do) and {{ReplicaLayout}} (for what we know about the 
> cluster), with well defined semantics (and comments in the rare cases those 
> semantics are weird)
> Found and fixed some bugs:
>       - {{commitPaxos}} was using only live nodes, when needed to include down
>       - We were not writing to pending transient replicas
>       - On write, we were not hinting to full nodes with transient 
> replication enabled (since we filtered to {{liveOnly}}, in order to include 
> our transient replicas above {{blockFor}})
>         - If we speculated, in {{maybeSendAdditionalReads}} (in read repair) 
> we would only consult the same node we had speculated too.  This also applied 
> to {{maybeSendAdditionalWrites}} - and this issue was also true pre-TR.



--
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