populate_io_cache_on_flush不是此元数据中定义的列

时间:2013-08-29 08:17:56

标签: cassandra cql3 datastax-java-driver

使用Data-stax Java驱动程序版本1.0.2连接到Cassandra 1.2.1时,我收到错误:

Exception in thread "main" java.lang.IllegalArgumentException: populate_io_cache_on_flush is not a column defined in this metadata
at com.datastax.driver.core.ColumnDefinitions.getIdx(ColumnDefinitions.java:268)
at com.datastax.driver.core.Row.isNull(Row.java:84)
at com.datastax.driver.core.TableMetadata$Options.<init>(TableMetadata.java:440)
at com.datastax.driver.core.TableMetadata.build(TableMetadata.java:107)
at com.datastax.driver.core.Metadata.buildTableMetadata(Metadata.java:124)
at com.datastax.driver.core.Metadata.rebuildSchema(Metadata.java:88)
at com.datastax.driver.core.ControlConnection.refreshSchema(ControlConnection.java:265)
at com.datastax.driver.core.ControlConnection.tryConnect(ControlConnection.java:220)

在以下行:

            cluster = Cluster.builder().addContactPoint("localhost").build(); 

我尝试删除了文件夹\ var \ lib \ cassandra,然后重新启动了cassandra服务器,这意味着没有以前的数据。服务器启动没有任何错误,但我在尝试连接时仍然遇到上述错误。

1 个答案:

答案 0 :(得分:2)

OHK。刚刚发现当我使用最新版本的Cassandra(1.2.8)时它就消失了。所以可能是因为版本不兼容。