Я использую Couchbase версии 2.0.1 - Enterprise Edition (build-170) и Java-клиент версии 1.2.2
У меня есть настраиваемая функция сокращения для получения последней активности пользователя
Ответ от java клиент непоследовательный Время от времени я получаю правильный ответ, и большую часть времени я получаю нулевое значение против действительных ключей. Даже Stale.FALSE не помогает!!
Количество отображаемых записей составляет около 1 миллиона, а набор результатов для запроса составляет около 1000 пар ключ-значение. Я не уверен, в чем здесь может быть проблема. Было бы здорово, если бы кто-нибудь помог.
Функция уменьшения показана ниже:
function (key, values, rereduce) {
var currDate = 0;
var activity = "";
for(var idx in values){
if(currDate < values[idx][0]){
currDate = values[idx][0];
activity = values[idx][1];
}
}
return [currDate, activity];
}
Просмотреть запрос:
CouchbaseClient cbc = Couchbase.getConnection();
Query query = new Query();
query.setIncludeDocs(false);
query.setSkip(0);
query.setLimit(10000);
query.setReduce(true);
query.setGroupLevel(4);
query.setRange(startKey,endKey);
View view = cbc.getView(document, view);
ViewResponse response = cbc.query(view, query);