Couchbase 如何增加N1QL索引扫描超时?

Couchbase 如何增加N1QL索引扫描超时?,couchbase,n1ql,couchbase-java-api,Couchbase,N1ql,Couchbase Java Api,作为ETL过程的一部分,我尝试从Couchbase bucket(Couchbase Enterprise 4.5)读取所有文档密钥ID。这个桶可能有数千万个文档。为了测试这一点(在这一阶段,我只是想看看这种方法是否能够满足我们的需要),我使用如下代码设置了一个较大的serverSideTimeout值: final N1qlParams n1qlParams = N1qlParams.build().serverSideTimeout(1L, TimeUnit.DAYS); aBucket.q

作为ETL过程的一部分,我尝试从Couchbase bucket(Couchbase Enterprise 4.5)读取所有文档密钥ID。这个桶可能有数千万个文档。为了测试这一点(在这一阶段,我只是想看看这种方法是否能够满足我们的需要),我使用如下代码设置了一个较大的serverSideTimeout值:

final N1qlParams n1qlParams = N1qlParams.build().serverSideTimeout(1L, TimeUnit.DAYS);
aBucket.query(N1qlQuery.simple("select meta(b).id from `my_bucket` as b", n1qlParams))
这将开始执行,我的订阅者开始从查询中获取ID,但随后我收到以下错误:

{"msg":"Index scan timed out - cause: Index scan timed out","code":12015}
它需要进行索引扫描,我并不感到惊讶,因为事实上我正在尝试读取主索引中的所有内容。评论中提到有一个设置可以调整索引扫描超时值,但我找不到这个设置在哪里。我查看了N1qlParams对象、CouchbaseEnvironment以及Couchbase管理UI中集群设置的索引设置部分,但在任何地方都找不到此设置对于我希望进行完整索引扫描的查询,如何将索引扫描超时设置为更长的值?

如a中所示,需要向
HTTP://:9102/settings
发送一篇HTTP文章,内容
{“indexer.settings.scan\u timeout:}

似乎可以使用此
/settings
页面配置许多此类低级索引服务设置;发送
GET
将检索它们的当前值