启动Cassandra AssertionError

时间:2016-06-30 04:09:55

标签: cassandra

当我尝试启动Cassandra时,我收到了一个关于“durable_wrıtes”的AssertionError。我尝试安装不同的Cassandra版本,但没有任何改变。操作系统是Ubuntu 16.04

Exception (java.lang.AssertionError) encountered during startup: Cannot find column durable_wrıtes
java.lang.AssertionError: Cannot find column durable_wrıtes
    at org.apache.cassandra.db.RowUpdateBuilder.add(RowUpdateBuilder.java:273)
    at org.apache.cassandra.schema.SchemaKeyspace.makeCreateKeyspaceMutation(SchemaKeyspace.java:394)
    at org.apache.cassandra.schema.SchemaKeyspace.makeCreateKeyspaceMutation(SchemaKeyspace.java:401)
    at org.apache.cassandra.schema.SchemaKeyspace.saveSystemKeyspacesSchema(SchemaKeyspace.java:267)
    at org.apache.cassandra.db.SystemKeyspace.finishStartup(SystemKeyspace.java:468)
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:333)
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:557)
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:685)
ERROR 04:04:55 Exception encountered during startup
java.lang.AssertionError: Cannot find column durable_wrıtes
    at org.apache.cassandra.db.RowUpdateBuilder.add(RowUpdateBuilder.java:273) ~[apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.schema.SchemaKeyspace.makeCreateKeyspaceMutation(SchemaKeyspace.java:394) ~[apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.schema.SchemaKeyspace.makeCreateKeyspaceMutation(SchemaKeyspace.java:401) ~[apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.schema.SchemaKeyspace.saveSystemKeyspacesSchema(SchemaKeyspace.java:267) ~[apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.db.SystemKeyspace.finishStartup(SystemKeyspace.java:468) ~[apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:333) [apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:557) [apache-cassandra-3.0.7.jar:3.0.7]
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:685) [apache-cassandra-3.0.7.jar:3.0.7]

3 个答案:

答案 0 :(得分:3)

我想问题是从大写字母转换为土耳其语中的小写

在土耳其本地转换为ı,因此 DURABLE_WRITES 变为durable_wrıtes。由于Cassandra希望找到一个列.row,它无法找到它,因此会引发异常。

答案 1 :(得分:1)

我在Windows 10上遇到了同样的问题。我的解决方法是将user.languageuser.country JVM optiions添加到cassandra.ps1文件。由cassandra.bat

执行

我添加了这一行:

$env:JVM_OPTS = "$env:JVM_OPTS " + "-Duser.language=en -Duser.country=US"

之前:

    # Other command line params
    if ($H)
    {
        $env:JVM_OPTS = $env:JVM_OPTS + " -XX:HeapDumpPath=$H"
    }

cassandra.ps1的主要功能中。

注意: 如果由于某种原因没有执行power shell脚本(在Windows 7上它没有)将这些JVM选项添加到cassandra.bat中的旧启动选项。

REM JVM Opts we'll use in legacy run or installation
set JAVA_OPTS=-ea^
 -Duser.language=en^
 -Duser.country=US^
 .
 .
 .

答案 2 :(得分:1)

在CentOS上,我添加了

awk -F, 'NR == 1 { next } $3 > 0 { match($2,/[[:digit:]]+/);map[$2]=substr($2,RSTART) } END { PROCINFO["sorted_in"]="@val_num_asc";for (i in map) { print i } }' user-list.txt > login.txt

在/etc/cassandra/conf/cassandra-env.sh的217行中。

已修复!