我正在尝试在一个基于长沙发的分析节点上创建索引:
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)"
}
]
我该如何解决?谢谢!
在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时,系统会自动断开链接,并在建立索引后重新连接。