org.apache.cassandra.serializers.MarshalException exception



我们正在研究MySQL到Cassandra数据迁移。我们将MySQL数据转储为CSV格式,并将其转换为Cassandra CSV,并使用编码UTF-8。当我们导入Cassandra CSV时,它适用于一个集群。但是对于相同的 CSV 文件,它会在同一个 Cassandra 版本 (2.2.4( 的另一个集群中抛出以下异常

message="org.apache.cassandra.serializers.MarshalException: 无效的 UTF-8 字节 56bc71d9">在记录 #5 处中止导入。以前插入的记录仍然存在,之后的某些记录也可能存在。

它始终显示不同记录的异常。记录编号和字节值不一致。

我们使用以下命令导入CSV文件

copy <TABLE> FROM <FILE> with DELIMITER = 't' AND NULL = 'NULL' AND QUOTE = '"' AND ESCAPE = '\';

我们检查了一些解决方案,但其中大多数都建议使用"假设"命令。由于我们使用的是Cassandra 2.2.4,因此我们没有Cassandra-Cli来检查该命令。

是否有任何建议检查问题或此问题可能发生的任何可能情况。

在我提交的Cassandra lucene索引2.2.4.1中有一个关于它的问题。
他们已经解决了。
只需更新您的 lucene 索引代码
班级com.stratio.cassandra.lucene.service.RegularCellsMapper
在方法Columns columns(ColumnFamily columnFamily)
for (Cell cell : columnFamily) {后添加以下代码

if (!cell.isLive()) {
    continue;
}

相关内容

  • 没有找到相关文章

最新更新