Javascript Riak:2i查询未返回密钥
我只是在测试里亚克。我已经将后端设置为内存,最大2GB,并启用了搜索 我正在使用nodejs和。我插入了100个测试对象,代码如下:Javascript Riak:2i查询未返回密钥,javascript,riak,Javascript,Riak,我只是在测试里亚克。我已经将后端设置为内存,最大2GB,并启用了搜索 我正在使用nodejs和。我插入了100个测试对象,代码如下: for ( var i = 0; i < 100; i++ ) { //add riak.put({ bucket: 'testy', key: String(i), index: { a_bin: 'A' + i }, index: { b_bin: 'B' + i },
for ( var i = 0; i < 100; i++ ) {
//add
riak.put({
bucket: 'testy',
key: String(i),
index: { a_bin: 'A' + i },
index: { b_bin: 'B' + i },
data: {
A: "A" + i,
B: "B" + i,
C: "C" + i
}
}, function (err, reply) {
console.log(err, reply);
});
};
for(变量i=0;i<100;i++){
//加
里亚克普特酒店({
桶:“暴躁”,
键:字符串(i),
索引:{a_bin:'a'+i},
索引:{b_bin:'b'+i},
数据:{
A:“A”+i,
B:“B”+i,
C:“C”+i
}
},函数(错误,回复){
console.log(err,reply);
});
};
现在,我可以使用以下命令行通过键成功获取对象:
$curl-vhttp://localhost:8098/buckets/testy/keys/1
但是,我无法使用我的2i检索对象:
$curl-vhttp://localhost:8098/buckets/testy/index/a_bin/A1
返回
{“键”:[]}
想法?谢谢 对于任何遇到此问题的人来说,SimpleRik驱动程序似乎存在问题。我只是从命令行通过http api添加了一个对象,然后用索引成功地调用了它。我认为JSON不允许在对象中使用重复的键名,所以
index:{a_-bin:'a'+I},index:{b_-bin:'b'+I},
无效,并且可能被解释为索引的第二个值取代了第一个值。这是有道理的,但文档中明确指出:“您可以指定任意多个索引,属性名称将是索引,其值将是键。”是否尝试将它们作为单个索引对象的单独属性而不是冲突索引对象添加?