You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2011/01/20 21:12:44 UTC
[jira] Commented: (CASSANDRA-1934) Update token metadata for NORMAL
state
[ https://issues.apache.org/jira/browse/CASSANDRA-1934?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12984368#action_12984368 ]
Jonathan Ellis commented on CASSANDRA-1934:
-------------------------------------------
How does updating when endpoint.equals(currentNode) solve the problem?
It looks to me like the relevant path is
{code}
logger_.info(String.format("Nodes %s and %s have the same token %s. %s is the new owner",
endpoint, currentNode, token, endpoint));
tokenMetadata_.updateNormalToken(token, endpoint);
{code}
which is already doing The Right Thing.
> Update token metadata for NORMAL state
> --------------------------------------
>
> Key: CASSANDRA-1934
> URL: https://issues.apache.org/jira/browse/CASSANDRA-1934
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.7.0 rc 3
> Reporter: Nick Bailey
> Assignee: Brandon Williams
> Priority: Minor
> Fix For: 0.7.1
>
> Attachments: 1934.txt
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> The handleStateNormal() method in StorageService.java doesn't update the tokenmetadata. This means if you try to decommission a node but for some reason it fails, and then you bring the node back up, all other nodes will see it in a 'Leaving' state. When the state jumps back to normal they should update the token metadata to reflect that.
> This also means you won't be able to call 'removetoken' on that node, unless you restart another node in the cluster in order to put it back in a 'normal' state.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.