- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的 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 是我添加的)。够了吗?
最佳答案
如果您使用示例架构,您很可能定义了 copyField,将所有内容复制到单个 文本 字段(在 schema.xml 中定义)并搜索该字段(在 solrconfig.xml 中定义)。
这对开发很有好处,但所有内容都只是以文本形式搜索,可能不是您想要做的事情。
您可以考虑切换到 eDisMax 之类的东西。或者,如果您还没有完全准备好,您可以定义更严格的 copyField 规则以仅聚合您想要的字段。
关于java - 强制 Solr 在搜索期间不使用 _version_ 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28816557/
我对 Solr 还很陌生,在设置我的第一个示例核心时遇到错误。我正在尝试在管理仪表板下添加新核心,但收到有关 version 字段的错误。 有什么解决办法吗? 背景: 操作系统:Windows Sol
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
作为我的 DSpace 实例的一部分,我有一个 SOLR 存储库,其中包含 1200 万条使用统计记录。某些记录已通过多次 SOLR 升级进行迁移,不符合当前架构。其中 500 万条记录缺少我的架构中
我的 schema.xml 中有一个 _version_ 字段的默认声明: 我读到该字段仅由 Solr 内部管理以进行并发管理,但是当我搜索“002219”作为返回时,我得到: "docs": [
我是一名优秀的程序员,十分优秀!