1

我正在尝试在 couchbase 分析节点上创建索引:

CREATE INDEX `index_analytics_user_id` 
ON `requests`(userId:string)

当我在沙发底座上运行它时,我在本地运行它工作正常。但是,当我在更大规模的开发环境(具有多个数据和索引节点以及一个单独的分析节点)上运行它时,我得到一个错误。我在本地运行 Couchbase 6.5.0。开发环境运行 Couchbase 6.0.2:

[
  {
    "code": 24001,
    "msg": "Compilation error: Dataset Default.requests is currently being fed into by the following active entities.\nDefault.Local.data(CouchbaseMetadataExtension)\n (in line 1, at column 1)",
    "query_from_user": "CREATE INDEX `index_analytics_user_id` \nON `requests`(userId:string)"
  }
]

我该如何解决?谢谢!

4

1 回答 1

3

在 Couchbase Analytics 6.0.x 中,您需要在发出 CREATE INDEX 语句之前手动停止数据摄取(断开链接):

DISCONNECT LINK Local;
CREATE INDEX ...
CONNECT LINK Local;

有关更多信息,请参阅 https://docs.couchbase.com/server/6.0/analytics/5_ddl.html#Connecting_and_disconnecting

在 6.5.0 中,不再需要此步骤。系统在处理 CREATE INDEX 时自动断开链接,建立索引后重新连接。

于 2020-02-11T17:00:46.283 回答