通过REST API更新Couchbase FTS索引

时间:2018-12-06 10:30:10

标签: couchbase

从最新的Couchbase文档中,可以看到可以使用以下方法创建/更新FTS索引 PUT / api / index / {indexName} 创建/更新索引定义。

我已创建名称为fts-idx的索引并成功创建。 但是,REST API似乎无法更新索引。

响应: responseMessage:,{“ error”:“ rest_create_index:创建索引时出错:fts-idx,err:manager_api:无法创建索引,因为已经存在具有相同名称的索引:fts-idx”

我在这里错过的一切。

1 个答案:

答案 0 :(得分:1)

我能够复制此问题,并且我认为已经解决了。这不是错误,但是应该对其进行更好的记录。

您需要在PUT中传递索引的UUID(我认为这是并发检查)。您可以通过GET /api/index/fts-index(位于indexDef-> uuid中)获取索引的当前uuid

一旦有了它,就将其作为更新PUT正文的一部分:

{
    "name": "fts-index",
    "type": "fulltext-index",
    "params": {
        // ... etc ...
    },
    "sourceType": "couchbase",
    "sourceName": "travel-sample",
    "sourceUUID": "307a1042c094b7314697980312f4b66b",
    "sourceParams": {},
    "planParams": {
        // ... etc ...
    },
    "uuid": "89a125824b012319"    // <--- right here
}

一旦我这样做,更新PUT就可以顺利进行。