a decommissioned node (ip) joining ring again
---------------------------------------------

                 Key: CASSANDRA-543
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-543
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.5
            Reporter: Jaakko Laine
             Fix For: 0.5


Don't know the exact cause yet (will continue to test tomorrow), but seems 
there's something wrong with maintaining tokenMetadata under certain 
circumnstances:

(1) 8-node cluster all nodes have some data
(2) decommission one of them
(3) stop the decommissioned node, clear its data, restart node

When the 3rd step is repeated, I usually get the following exception on the 
second or third restart on other nodes in the cluster

java.lang.IllegalArgumentException: value already present: /192.168.0.108
        at 
com.google.common.base.Preconditions.checkArgument(Preconditions.java:116)
        at 
com.google.common.collect.StandardBiMap.putInBothMaps(StandardBiMap.java:106)
        at com.google.common.collect.StandardBiMap.put(StandardBiMap.java:91)
        at com.google.common.collect.HashBiMap.put(HashBiMap.java:82)
        at 
org.apache.cassandra.locator.TokenMetadata.update(TokenMetadata.java:91)
        at 
org.apache.cassandra.service.StorageService.updateForeignToken(StorageService.java:188)
        at 
org.apache.cassandra.service.StorageService.onChange(StorageService.java:444)
        at 
org.apache.cassandra.service.StorageService.onJoin(StorageService.java:536)
        at org.apache.cassandra.gms.Gossiper.handleNewJoin(Gossiper.java:558)
        at 
org.apache.cassandra.gms.Gossiper.applyStateLocally(Gossiper.java:591)
        at 
org.apache.cassandra.gms.GossipDigestAckVerbHandler.doVerb(Gossiper.java:972)
        at 
org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:38)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)

The exact sequence leading to this exception might not have anything to do with 
decommission and/or restarts, but no time to test more today.


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