2013-03-18 95 views
1

當我運行nodetool命令時,它給了我Cassandra中的以下例外。我正在使用cassandra版本1.2.1。Cassandra:沒有密鑰空間的環

我已將我的密鑰空間中的數據從舊的Cassandra集羣複製到新的Cassandra集羣,並在我的新集羣中創建了一個模式。我能夠得到一些信息,但是當我試圖創建一些它確實創建了一個新的密鑰,但我也得到以下異常。​​3210也是如此。

請問任何人,請讓我知道哪裏出了問題,在哪裏?

nodetool describering system_auth 

Schema Version:67158f43-3871-3496-9ab4-4f73d0450575 
TokenRange: 
There is no ring for the keyspace: system_auth 
java.io.IOException: There is no ring for the keyspace: system_auth 
    at org.apache.cassandra.service.StorageService.describeRingJMX(StorageService.java:1017) 
    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:1454) 
    at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:74) 
    at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1295) 
    at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1387) 
    at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:818) 
    at sun.reflect.GeneratedMethodAccessor45.invoke(Unknown Source) 
    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) 

回答

1

在1.2.1版本,system_auth是一個普通的系統密鑰空間,因此它沒有與它(並且由此沒有環)相關聯的任何複製。系統密鑰空間也沒有與之關聯的環。

在版本1.2.2中,system_auth成爲一個可以更改複製策略和複製因子的密鑰空間,所以如果升級它會有所作爲,但這不是真正的問題。最後,你可能想要做的是描述你的擁有的密鑰空間之一的環,因爲這就是你的集羣中的複製對你最重要的地方。

相關問題