2014-08-27 3 views
0

데이터를 Cassandra 1.1.3에서 1.2.13으로 마이그레이션 중입니다. 필자는 열 패밀리의 스냅 샷을 작성하고 그 안에있는 모든 데이터를 새 노드의 각 열 패밀리 디렉토리로 이동했습니다.Nodetool에서 NPE 새로 고침

그런 다음 nodetool의 upgradesstables -a 명령을 실행하십시오. 그런 다음 refresh <KS> <CF> 명령을 실행 한 다음 오류가 발생합니다.

Exception in thread "main" java.lang.NullPointerException 
    at org.apache.cassandra.db.Table.createReplicationStrategy(Table.java:278) 
    at org.apache.cassandra.db.Table.<init>(Table.java:263) 
    at org.apache.cassandra.db.Table.open(Table.java:109) 
    at org.apache.cassandra.db.Table.open(Table.java:87) 
    at org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:468) 
    at org.apache.cassandra.service.StorageService.loadNewSSTables(StorageService.java:3861) 
    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:264) 
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) 
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:762) 
    at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1454) 
    at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:74) 
    at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1295) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1394) 
    at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:818) 
    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:895) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 
    at java.lang.Thread.run(Thread.java:662) 

무엇이 잘못 되었나요?

감사합니다,

답변

0

나는 카산드라와 nodetool 사이 버전 호환성 때문이었다.