Обновление индекса просмотра Couchbase зависает после добавления файла более ~ 1,4 МБ

Я использую последнюю версию Couchbase .Net SDK, и у меня возникают проблемы с большими JSON-документами (более 1,4 МБ) в представлениях.

В случае, если эти документы были там, когда был добавлен проектный документ, большие файлы просто не отображаются в результатах просмотра (количество документов, предоставленное просмотром, меньше фактического количества). Если я добавлю эти большие файлы (используя клиент .Net) позже, после того, как проектный документ будет создан в корзине, и получу представление с stale=false, обновление индекса никогда не завершится, и вызов метода не вернется. Я вижу из веб-интерфейса, что индекс обновляется, но никогда не заканчивается. В конце концов вызов GetView в .Net даст тайм-аут. Перезапуск сервера Couchbase не помог. Сразу же, когда я удаляю большой документ, GetView снова работает.

У меня есть следующий простой вид:

function (doc, meta) {
  emit(doc._id, [doc.name, doc.version, doc.type, doc.date]);
}

Добавление документов размером до 1,2 МБ работает нормально, но документы размером более 1,45 МБ — нет. Я не смог найти никакой документации или каких-либо онлайн-представлений и документов большего размера. Есть ли какое-то ограничение на то, как можно обрабатывать большие представления документов? Я знаю, что Couchbase не может обрабатывать документы размером более 20 МБ, но те, которые я использую здесь, значительно меньше этого размера.


person the_jov    schedule 07.07.2014    source источник


Ответы (1)


В индексаторе есть ограничение в 1 МБ на документ; большие документы пропускаются (и сообщение регистрируется).

По общему признанию, в настоящее время это не очень хорошо задокументировано, см. открытую ошибку MB-11668 чтобы решить эту проблему.

person DaveR    schedule 08.07.2014