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

Brandon Williams commented on CASSANDRA-3118:
---------------------------------------------

bq. Why does the decommission node automatically join the cluster when it 
restarts?

Because doing so is operator error.  We don't delete data unless the operator 
says to, so that is normal, it can rejoin if needed.

> nodetool  can not  decommission a node
> --------------------------------------
>
>                 Key: CASSANDRA-3118
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3118
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>    Affects Versions: 0.8.4
>         Environment: Cassandra0.84
>            Reporter: deng
>         Attachments: 3118-debug.txt
>
>
> when i use nodetool ring and get the result ,and than i want to decommission 
> 100.86.17.90  node ,but i get the error:
> [root@ip bin]# ./nodetool -h10.86.12.225 ring
> Address         DC          Rack        Status State   Load            Owns   
>  Token                                       
>                                                                               
>  154562542458917734942660802527609328132     
> 100.86.17.90      datacenter1 rack1       Up     Leaving 1.08 MB         
> 11.21%  3493450320433654773610109291263389161       
> 100.86.12.225    datacenter1 rack1       Up     Normal  558.25 MB       
> 14.25%  27742979166206700793970535921354744095      
> 100.86.12.224    datacenter1 rack1       Up     Normal  5.01 GB         6.58% 
>   38945137636148605752956920077679425910      
> ERROR:
> root@ip bin]# ./nodetool -h100.86.17.90 decommission
> Exception in thread "main" java.lang.UnsupportedOperationException
>         at java.util.AbstractList.remove(AbstractList.java:144)
>         at java.util.AbstractList$Itr.remove(AbstractList.java:360)
>         at java.util.AbstractCollection.removeAll(AbstractCollection.java:337)
>         at 
> org.apache.cassandra.service.StorageService.calculatePendingRanges(StorageService.java:1041)
>         at 
> org.apache.cassandra.service.StorageService.calculatePendingRanges(StorageService.java:1006)
>         at 
> org.apache.cassandra.service.StorageService.handleStateLeaving(StorageService.java:877)
>         at 
> org.apache.cassandra.service.StorageService.onChange(StorageService.java:732)
>         at 
> org.apache.cassandra.gms.Gossiper.doNotifications(Gossiper.java:839)
>         at 
> org.apache.cassandra.gms.Gossiper.addLocalApplicationState(Gossiper.java:986)
>         at 
> org.apache.cassandra.service.StorageService.startLeaving(StorageService.java:1836)
>         at 
> org.apache.cassandra.service.StorageService.decommission(StorageService.java:1855)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:93)
>         at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:27)
>         at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
>         at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
>         at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
>         at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
>         at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
>         at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
>         at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
>         at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
>         at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1359)
>         at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         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)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to