2

我有一个 CQL 3 CF

CREATE TABLE entries (
  id text,
  va text,
  ts bigint,
  idxc blob,
  PRIMARY KEY (id, va, ts)
);

有了 pelops,我得到一个 Bytes( [0, 4, 0, 0, 0, 4, 0, 0, 8, 0, 0, 1, 55, -56, -41, 6, 14, 0, 0, 16, 65, 50, 82, 97, 84, 85, 95, 82, 72, 71, 115, 69, 89, 115, 100, 49, 0, 0, 8, 0, 4, -63, - 24, -121, -16, 35, -80, 0, 0, 2, 105, 103, 0]) 这个例外:

org.scale7.cassandra.pelops.exceptions.InvalidRequestException: (String didn't validate.)[ks][entries][aKey:1339104364078000:idxc] failed validation
    at org.scale7.cassandra.pelops.exceptions.IExceptionTranslator$ExceptionTranslator.translate(IExceptionTranslator.java:47)

我可以用同样的方法插入其他字节数组。

4

3 回答 3

0

Pelops 可能还不支持 cql3 样式的复合主键。(实际上,列元数据应该只与复合列名称的最后一个组成部分匹配。)我建议与 Pelops 开发人员联系。

于 2012-06-23T04:44:53.477 回答
0

让我们结束这一点: 结论:CQL 3 仍处于测试阶段,不要指望它不会出现故障。

我现在使用旧式模式定义没有问题。

于 2012-06-23T19:06:41.153 回答
0

我没有与 Pelops 合作过,所以这是在黑暗中拍摄,但请确认您正在向您的 mutator 传递一个 byte[] (我注意到您的 OP 中有一个大写 B),如果没有,请尝试转换为 byte [] 在通话中。如果您传递的内容没有方法签名,则它可能正在接受它的 toString() 版本并继续前进。

于 2012-06-23T14:08:57.387 回答