Solr Query不解析正斜杠

Aku*_*ete 10 lucene solr

正斜杠"/"是solr字段名称中的保留字符吗?

我在编写solr排序查询时遇到问题,该查询将解析包含正斜杠"/"的字段

在对我的solr服务器进行http查询时:

q=*&sort=normal+desc
Run Code Online (Sandbox Code Playgroud)

会工作但是

q=*&sort=with/slash+desc
q=*&sort=with%2Fslash+desc
Run Code Online (Sandbox Code Playgroud)

两个都失败说"不能在多值字段上使用FieldCache:with"

每个solr文档包含两个int字段"normal"和"with/slash".使用我的solr架构索引字段

...
<field name="normal" type="int"   indexed="true" stored="true" required="false" />
<field name="with/slash" type="int"   indexed="true" stored="true" required="false" />
...
Run Code Online (Sandbox Code Playgroud)

有什么特殊的方法我需要在solr中编码正斜杠吗?或者我可以使用其他任何分隔符吗?我已经在使用' - '和"." 用于其他目的.

小智 6

我刚刚遇到了同样的问题,经过一些实验发现如果你在字段名中有一个正斜杠,你必须在Solr查询中用反斜杠转义它(但请注意,你不必在字段列表参数,因此/my/field/name在"q"字段中输入搜索包含my_value 的搜索:

\/my\/field\/name:my_value

我没有尝试过排序字段,但尝试这个让我们知道:)

这是在Solr 4.0.0 alpha上.