[ 
https://issues.apache.org/jira/browse/CASSANDRA-833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12840438#action_12840438
 ] 

Jonathan Ellis commented on CASSANDRA-833:
------------------------------------------

To clarify: the #722 fix breaks the design because a bootstrapping node that 
goes "down" temporarily but completes bootstrap will not actually have all the 
writes that happened during bootstrap on it.

> fix consistencylevel during bootstrap
> -------------------------------------
>
>                 Key: CASSANDRA-833
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-833
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.5
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>             Fix For: 0.6
>
>
> As originally designed, bootstrap nodes should *always* get *all* writes 
> under any consistencylevel, so when bootstrap finishes the operator can run 
> cleanup on the old nodes w/o fear that he might lose data.
> but if a bootstrap operation fails or is aborted, that means all writes will 
> fail until the ex-bootstrapping node is decommissioned.  so starting in 
> CASSANDRA-722, we just ignore dead nodes in consistencylevel calculations.
> but this breaks the original design.  CASSANDRA-822 adds a partial fix for 
> this (just adding bootstrap targets into the RF targets and hinting 
> normally), but this is still broken under certain conditions.  The real fix 
> is to consider consistencylevel for two sets of nodes:
>   1. the RF targets as currently existing (no pending ranges)
>   2.  the RF targets as they will exist after all movement ops are done
> If we satisfy CL for both sets then we will always be in good shape.
> I'm not sure if we can easily calculate 2. from the current TokenMetadata, 
> though.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to