Cloudant全文搜索“太多布尔”请求“

时间:2017-12-08 07:01:01

标签: cloudant

有人能告诉我Cloudant全文搜索中布尔请求的限制是什么?

我有206个OR,看起来太多了。

这基本上是我的查询:

( this:"that" AND ping:pong AND (yes:a1 OR yes:b1 OR yes:c1 OR ...x50 ) ) OR
( this:"that" AND ping:pong AND (yes:a2 OR yes:b2 OR yes:c2 OR ...x50 ) ) OR
( this:"that" AND ping:pong AND (yes:a3 OR yes:b3 OR yes:c3 OR ...x50 ) ) OR
( this:"that" AND ping:pong AND (yes:a4 OR yes:b4 OR yes:c4 OR ...x50 ) ) 

1 个答案:

答案 0 :(得分:1)

Cloudant全文搜索是Apache Lucene的前端,其默认限制为1024的布尔子句。

https://lucene.apache.org/core/6_5_0/core/org/apache/lucene/search/BooleanQuery.html#getMaxClauseCount--

你的每个OR条款都包含大约六个子条款,这意味着你违反了这个限制。

如果您真的发现自己编写的查询超出了这个限制,那么您是否可以调查一下您的文档是否值得调查。