Couchbase:使用视图查询多个原子计数器文档

时间:2014-08-22 10:56:36

标签: c# couchbase

我的Couchbase存储桶中有很多文档。其中一些文档用作具有原子操作的计数器,因此它们只存储一个数字。所有这些计数器文档在密钥中都有共同的前缀(例如,' SomePrefix _ ')。我怎样才能访问所有这些"前缀"文件?它们不会出现在视图中。

2 个答案:

答案 0 :(得分:0)

默认情况下,计数器不会从视图结果中排除。可能你是在你的映射器中无意中这样做的。这里,例如,mapper考虑了计数器。

function (doc, meta) {
  if (meta.type == 'base64') {
    emit(meta.id, {counter: decodeBase64(doc)});
  } else {
    emit(meta.id, doc);
  }
}

我猜您正在尝试使用doc作为JSON对象,这会导致映射器过滤掉计数器。

答案 1 :(得分:0)

问题在于使用startsWith函数。 使用indexOf(...) === 0来定义密钥是否以子字符串开头。