надеясь, что вы можете мне помочь. У меня проблема с приложением, которое я только начал поддерживать. Приложение использует SOLR для индексации и должно заполнять два ядра данными из базы данных.
Я продолжаю получать следующую ошибку при переиндексации:
22 августа 2013 г., 10:09:49 org.apache.solr.common.SolrException log
СЕРЬЕЗНЫЙ: org.apache.solr.common.SolrException: неопределенное поле: «editor_id»
at org.apache.solr.schema.IndexSchema.getField(IndexSchema.java:965)
[... Трассировки стека ...]
at java.lang.Thread.run(Thread.java:679)
Мой schema.xml для этого ядра:
<solrQueryParser defaultOperator="AND" />
<fields>
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false"/>
<field name="name" type="text_nl" indexed="true" stored="false"/>
<field name="platform" type="string" indexed="true" stored="false" multiValued="false"/>
<field name="date" type="date" indexed="true" stored="false" multiValued="false"/>
<field name="content" type="text_nl" indexed="true" stored="false"/>
<field name="division_id" type="long" indexed="true" stored="false" multiValued="false"/>
<field name="division" type="text_nl" indexed="true" stored="false" multiValued="false"/>
<field name="subdivision_id" type="long" indexed="true" stored="false" multiValued="false"/>
<field name="subdivision" type="text_nl" indexed="true" stored="false" multiValued="false"/>
<field name="editor_id" type="long" indexed="true" stored="false" multiValued="false"/>
<field name="editor" type="text_nl" indexed="true" stored="false" multiValued="false"/>
<field name="status" type="text_nl" indexed="true" stored="false" multiValued="false"/>
<field name="status_id" type="long" indexed="true" stored="false" multiValued="false"/>
<field name="lines" type="text_nl" indexed="true" stored="false" multiValued="true"/>
<field name="text" type="text_nl" indexed="true" stored="false" multiValued="true"/>
<field name="_version_" type="long" indexed="true" stored="true"/>
<field name="suggest_nl" type="text_nl_suggest" indexed="true" stored="true" multiValued="true"/>
<copyField source="*" dest="suggest_nl"/>
</fields>
<uniqueKey>id</uniqueKey>
As you can see editor_id exists in the schema. In the database we're getting data from the table name's been renamed to editor_user_id. When I rename the schema.xml rule for editor_id to editor_user_id it still comes back with the above error, as if the schema.xml is irrelevant.
Я что-то упустил в том, как обновить схему, чтобы она соответствовала таблице базы данных?
Любые предложения о том, как избавиться от этой ошибки, будут высоко оценены, так как я немного нуб, когда дело доходит до настроек SOLR/LUCENE/TOMCAT.
Спасибо.
Редактировать:
Вот полная трассировка стека:
Вам необходимо перезапустить сервер solr (Tomcat/jetty), чтобы отразить любые изменения в файлах конфигурации solr (schema.xml, solrconfig.xml).