Search 一个复杂的通配符查询引导解决方案

Search 一个复杂的通配符查询引导解决方案,search,solr,lucene,Search,Solr,Lucene,我们正在使用Solr作为搜索引擎,最近注意到一些用户输入的通配符查询可能会导致Solr死循环 org.apache.lucene.util.automaton.Operations.determinize() 它也会消耗记忆,最后会发出声音 通配符查询看起来像是*??-???????o·o???* 虽然我们可以验证输入参数,但我还想知道是否有任何配置可以禁用这样的复杂通配符查询,这会导致性能问题。是否希望能够执行通配符查询?否则,您可以正确地转义输入。您好,是的,转义输入解决了此问题,但问题是

我们正在使用Solr作为搜索引擎,最近注意到一些用户输入的通配符查询可能会导致Solr死循环

org.apache.lucene.util.automaton.Operations.determinize()
它也会消耗记忆,最后会发出声音

通配符查询看起来像是
*??-???????o·o???*


虽然我们可以验证输入参数,但我还想知道是否有任何配置可以禁用这样的复杂通配符查询,这会导致性能问题。

是否希望能够执行通配符查询?否则,您可以正确地转义输入。您好,是的,转义输入解决了此问题,但问题是“是否有一些配置可以限制查询的复杂程度”。据我所知,否-但您可以为查询添加最大运行时间(
timeAllowed
)。