[ https://issues.apache.org/jira/browse/CASSANDRA-7082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brandon Williams updated CASSANDRA-7082: ---------------------------------------- Reviewer: Brandon Williams > Nodetool status always display only the first token > --------------------------------------------------- > > Key: CASSANDRA-7082 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7082 > Project: Cassandra > Issue Type: Bug > Components: Tools > Reporter: Jivko Donev > Assignee: Vijay > Priority: Minor > Labels: nodetool > > nodetool status command always displays the first token for a node even if > using vnodes. The defect is only reproduced on version 2.0.7. > With the same configuration 2.0.7 displays: > Datacenter: DC1 > =============== > Status=Up/Down > |/ State=Normal/Leaving/Joining/Moving > -- Address Load Owns (effective) Host ID > Token Rack > UN 127.0.0.1 156.34 KB 100.0% > d6629553-d6e9-434d-bf01-54c257b20ea9 -9134643033027010921 > Rack1 > But 2.0.6 displays: > Datacenter: DC1 > =============== > Status=Up/Down > |/ State=Normal/Leaving/Joining/Moving > -- Address Load Tokens Owns Host ID > UN 127.0.0.1 210.32 KB 256 100.0% 08208ec9-8976-4ad0-b6bb-ee5dcf0109e > The problem seems to be in NodeCmd.java the check for vnodes. > In the print() method there is a check > // More tokens then nodes (aka vnodes)? > if (tokensToEndpoints.values().size() < > tokensToEndpoints.keySet().size()) > isTokenPerNode = false; > while in 2.0.6 the same code was: > // More tokens then nodes (aka vnodes)? > if (new HashSet<String>(tokensToEndpoints.values()).size() < > tokensToEndpoints.keySet().size()) > isTokenPerNode = false; > In 2.0.7 this check is never true as values collection is always equal by > size with key set size. -- This message was sent by Atlassian JIRA (v6.2#6252)