添加列后不会刷新元数据

时间:2016-11-21 22:06:36

标签: cassandra datastax-java-driver

当我将列添加到现有表(使用cqlsh)时,很多时候我的datastax-java-driver客户端似乎没有收到更改架构的通知。当按名称读取列时,它实际上正在读取另一列。此列似乎总是与其“相邻”的列。

例如,如果表最初会有列a,c和d,然后我会将列b添加到其中,那么读取列d会给出列c的值。

我唯一能做的就是重启客户端应用程序,解决了这个问题,但非常不方便。 The manual声称第三方架构更改会导致刷新元数据,但在我的情况下似乎不会发生。

我正在使用2.1.9 Java驱动程序和Cassandra 2.2.5。

1 个答案:

答案 0 :(得分:1)

这似乎是由https://datastax-oss.atlassian.net/browse/JAVA-420引起的,目前尚未解决。幸运的是,有一个相当简单的解决方法。