1

我正在尝试配置 SOLR 4.7.1 单实例、单核设置,并且在启动时 SOLR 会引发错误:

Schema Parsing Failed: unknown field 'INVENTORY_ITEM_ID'. 
Schema file is /var/solr/cores/intota-inventory/schema.xml

我相信 SOLR 抱怨<uniqueKey>没有在 schema.xml 中定义。我这样说是因为我使用的任何字段名称<uniqueKey>都会显示在错误消息中。但是,<uniqueKey>似乎已正确定义。这是来自我的 schema.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<schema name="intota-inventory" version="1.5">
<field name="INVENTORY_ITEM_ID" type="int" indexed="true" stored="true" required="true" multiValued="false" />
<field name="LIBRARY_ID" type="int" indexed="true" stored="true" required="true" multiValued="false" />
<field name="TITLE" type="text_title" indexed="true" stored="true" multiValued="false"/>
<field name="KB_AUTHORS" type="text_simple" indexed="true" stored="true" omitNorms="false"/>
<field name="KB_STANDARD_IDENTIFIER" type="string" indexed="true" stored="true" multiValued="false"/>
<field name="KB_STANDARD_IDENTIFIER_TYPE" type="string" indexed="true" stored="true" multiValued="false"/>
<field name="CALL_NUMBER" type="string" indexed="true" stored="true" multiValued="false"/>
<field name="INVENTORY_ITEM_TYPE_DESCRIPTION" type="string" indexed="true" stored="true" multiValued="false"/>
<field name="INVENTORY_ITEM_STATUS_TYPE_DESCRIPTION" type="string" indexed="true" stored="true" multiValued="false"/>

<uniqueKey>INVENTORY_ITEM_ID</uniqueKey>

我已经用 Google 搜索并调整了一天的 schema.xml,但无法解决这个看似简单的错误。有谁知道如何解决这个问题?

谢谢

4

1 回答 1

2

在 Solr 4.8 之前,字段必须包含在fields标记中,而类型则包含在types标记中。你的例子没有这些。

如果您必须使用 Solr 4.7,请查看该特定发行版附带的示例,您将看到正确的定义范围。

实际上,您的字段定义只是被忽略了。但是,如果您进行升级,它们应该可以工作。

于 2015-02-23T05:14:18.293 回答