The first thing I would check is if nodetool is using the right jar. I sounds a lot like if the server has been correctly updated but nodetool haven't and still use the old classes. Check the nodetool executable, it's a shell script, and try echoing the CLASSPATH in there and check it correctly point to what it should.
-- Sylvain On Thu, Nov 1, 2012 at 9:10 AM, Brian Fleming <bigbrianflem...@gmail.com> wrote: > Hi, > > > > I was testing upgrading from Cassandra v.1.0.7 to v.1.1.5 yesterday on a > single node dev cluster with ~6.5GB of data & it went smoothly in that no > errors were thrown, the data was migrated to the new directory structure, I > can still read/write data as expected, etc. However nodetool commands are > behaving strangely – full details below. > > > > I couldn’t find anything relevant online relating to these exceptions – any > help/pointers would be greatly appreciated. > > > > Thanks & Regards, > > > > Brian > > > > > > > > > > ‘nodetool cleanup’ runs successfully > > > > ‘nodetool info’ produces : > > > > Token : 82358484304664259547357526550084691083 > > Gossip active : true > > Load : 7.69 GB > > Generation No : 1351697611 > > Uptime (seconds) : 58387 > > Heap Memory (MB) : 936.91 / 1928.00 > > Exception in thread "main" java.lang.ClassCastException: java.lang.String > cannot be cast to org.apache.cassandra.dht.Token > > at > org.apache.cassandra.tools.NodeProbe.getEndpoint(NodeProbe.java:546) > > at > org.apache.cassandra.tools.NodeProbe.getDataCenter(NodeProbe.java:559) > > at org.apache.cassandra.tools.NodeCmd.printInfo(NodeCmd.java:313) > > at org.apache.cassandra.tools.NodeCmd.main(NodeCmd.java:651) > > > > ‘nodetool repair’ produces : > > Exception in thread "main" java.lang.reflect.UndeclaredThrowableException > > at $Proxy0.forceTableRepair(Unknown Source) > > at > org.apache.cassandra.tools.NodeProbe.forceTableRepair(NodeProbe.java:203) > > at > org.apache.cassandra.tools.NodeCmd.optionalKSandCFs(NodeCmd.java:880) > > at org.apache.cassandra.tools.NodeCmd.main(NodeCmd.java:719) > > Caused by: javax.management.ReflectionException: Signature mismatch for > operation forceTableRepair: (java.lang.String, [Ljava.lang.String;) should > be (java.lang.String, boolean, [Ljava.lang.String;) > > at > com.sun.jmx.mbeanserver.PerInterface.noSuchMethod(PerInterface.java:152) > > at > com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:117) > > 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:1427) > > at > javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72) > > at > javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1265) > > at > javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1360) > > 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:303) > > 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:662) > > at > sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255) > > at > sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233) > > at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:142) > > at com.sun.jmx.remote.internal.PRef.invoke(Unknown Source) > > at javax.management.remote.rmi.RMIConnectionImpl_Stub.invoke(Unknown > Source) > > at > javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection.invoke(RMIConnector.java:993) > > at > javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:288) > > ... 4 more > > Caused by: java.lang.NoSuchMethodException: > forceTableRepair(java.lang.String, [Ljava.lang.String;) > > at > com.sun.jmx.mbeanserver.PerInterface.noSuchMethod(PerInterface.java:150) > > at > com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:117) > > 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:1427) > > at > javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72) > > at > javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1265) > > at > javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1360) > > 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:303) > > 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:662)