【发布时间】:2015-03-02 18:07:54
【问题描述】:
我的 schema.xml 中有 _version_ 字段的默认声明:
<field name="_version_" type="long" indexed="true" stored="true"
multiValued="false"/>
我读到这个字段仅由 Solr 内部管理以进行并发管理,但是当我搜索“002219”作为回报时,我得到:
"docs": [
{
"person_street_t": [
"<streetName>",
],
"id": "123",
"person_abbr_t": [
"<sb>"
],
"person_name_t": [
"<sb>"
],
"person_city_t": [
"<city>"
],
"person_zipcode_s": "<zipcode>",
"type_s": "PERSON",
"person_house_number_s": "<hn>",
"_version_": 1494523490022195200
//****** <- matched by Solr
}
]
但我不希望 Solr 搜索该字段。
这是正常行为吗?难道我做错了什么?或者有没有其他方法可以禁用_version_ 字段中的搜索?
更新:
好的,我看了一点,发现这个字段(_text)是defaultSearchField。所以我现在所做的是更改默认值:
<copyField source="*" dest="_text"/>
到:
<copyField source="*_t" dest="_text"/>
<copyField source="*_s" dest="_text"/>
<copyField source="*_ts" dest="_text"/>
<copyField source="*_ss" dest="_text"/>
这些是我唯一索引的字段类型(*_ts 是我添加的)。够吗?
【问题讨论】:
-
什么是默认搜索字段,它的类型和类型定义?您的确切查询网址是什么?
-
我没有设置任何默认搜索字段,所以必须设置为 Solr 默认。我在工作中这样做,所以我明天可以提供更多细节。附:感谢关注:)
-
您的搜索处理程序是如何配置的?您的 solrconfig.xml 中确实有一个。
-
如何索引?您的导入例程中可能有一个包罗万象的字段。
-
架构的其余部分如何?应该是最后一个问题:)
标签: java solr lucene full-text-search