[
https://issues.apache.org/jira/browse/CASSANDRA-14705?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16613475#comment-16613475
]
Ariel Weisberg commented on CASSANDRA-14705:
--------------------------------------------
+1 unless you want to do more changes as part of this.
> 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.
> * Transient->Full movements mishandled consistency level upgrade
> ** While we need to treat a transitioning node as ‘full’ for writes, so that
> it can safely begin serving full data requests once it has finished, we
> cannot maintain it in the ‘pending’ collection else we will also increase our
> consistency requirements by a node that doesn’t exist.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]