2011-11-02 44 views
1

我有0.8.2的单节点cassandra安装。我已创建了卡桑德拉-CLI一些列族就像无法使用cassandra更新架构0.8.2

create column family demo; 

现在我必须使用在此列family.For二级指标,我需要升级我schema.When尝试用卡桑德拉-CLI喜欢这个升级

update column family demo with comparator=BytesType and column_metadata=[{column_name: col1, validation_class: UTF8Type, index_type: KEYS}]; 

我得到以下错误消息

org.apache.cassandra.db.marshal.MarshalException:无法解析 'COL1'

我试过使用字节('col1'),假设关键字,ascii和utf8都不起作用。

为十六进制字节

而同样的事情的作品与卡桑德拉0.8.4

+0

你是否尝试过使用十六进制值,例如: “column_name:636f6c31”,因为比较器是BytesType,我相信它是期待字节。不知道为什么从版本的变化... – libjack

+0

我以为相同的,并试图用十六进制值,它的工作原理,但当我尝试获取值使用哪里col1 ='一些价值'它返回零行。 – samarth

+0

当你做cassandra-cli'describe demo'时,你的专栏看起来像什么? –

回答

1

完美的罚款你回答了你自己的问题。这是0.8.2中的一个bug,你应该升级。 (到目前最新的0.8版本,即0.8.7版本)。

+0

甚至0.8.7不支持此 – samarth

+0

我可以通过提供我们必须索引的列的十六进制字节来更新相同的模式。 – samarth