Я использую Couchbase Single Server 1.2 и пытаюсь использовать функции геопространственной индексации (GeoCouch).
Я следовал всем инструкциям в readme. Мой проектный документ имеет следующую структуру:
{ _id: "_design/main",
_rev: "24-4bfa80ed0a93b7bff3008a64a4b0ff89",
language: "javascript",
spatial: {
points: "function(doc) {
if (doc.loc) {
emit({ \"type\": \"Point\", \"coordinates\": doc.loc }, [doc._id, doc.loc]);
}
};"
}
}
Моя база данных couchdb называется местами. Когда места пусто, если я вызываю ограничивающий прямоугольник запрос,
http://localhost:5984/places/_design/main/_spatial/points?bbox=0,0,180,90
Я получаю следующее:
{
rows: [ ]
}
Выглядит хорошо. Это означает, что URL-адрес запроса работает правильно.
Но когда я добавляю некоторые данные в базу данных мест, например:
{
_id: "berlin",
_rev: "1-204646602c35d80238ad345ca8d3fcef",
loc:
[
-122.270833,
37.804444
]
}
и снова вызывать ограничивающий прямоугольник, я получаю следующую ошибку:
{
error: "{{badmatch,{ok,8497}}, [{vtree_bulk,omt_write_tree,4}, {vtree_bulk,omt_write_tree,2}, {vtree_bulk,bulk_load,4}, {vtree,add_remove,5}, {couch_spatial_updater,'-write_changes/4-fun-2-',5}, {lists,zipwith,3}, {couch_spatial_updater,write_changes,4}, {couch_spatial_updater,update,2}]}",
reason: "{gen_server,call,[<0.22235.0>,{request_group,41},infinity]}"
}
Я использую Couchbase 1.2 на 32-разрядной машине разработки для Windows 7.
Кто-нибудь имеет представление об этой ошибке?
Спасибо.