У меня возникают проблемы с созданием UUID с помощью dataImportHandler в Solr4. Я пытаюсь импортировать из существующей базы данных MySQL.
Мой schema.xml содержит:
<fields>
<field name="uuid" type="uuid" indexed="true" stored="true" required="true" />
<field name="id" type="string" indexed="true" stored="true" required="true"/>
<field name="address" type="text_general" indexed="true" stored="true"/>
<field name="city" type="text_general" indexed="true" stored="true" />
<field name="county" type="string" indexed="true" stored="true" />
<field name="lat" type="text_general" indexed="true" stored="true" />
<field name="lng" type="text_general" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true" />
<field name="price" type="float" indexed="true" stored="true"/>
<field name="bedrooms" type="float" indexed="true" stored="true" />
<field name="image" type="string" indexed="true" stored="true"/>
<field name="region" type="location_rpt" indexed="true" stored="true" />
<defaultSearchField>address</defaultSearchField>
<field name="_version_" type="long" indexed="true" stored="true"/>
<field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/>
</fields>
<uniqueKey>uuid</uniqueKey>
А затем в <types>
<fieldType name="uuid" class="solr.UUIDField" indexed="true" />
Мой Solrconfig.xml содержит:
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<updateRequestProcessorChain name="uuid">
<processor class="solr.UUIDUpdateProcessorFactory">
<str name="fieldName">uuid</str>
</processor>
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
Всякий раз, когда я запускаю обновление, некоторые документы вставляются нормально, купите много, верните с:
org.apache.solr.common.SolrException: [doc=204] missing required field: uuid
6
Kikimac
4 Июн 2013 в 13:32
1 ответ
Лучший ответ
Следуя примеру на ссылке, это должно быть
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
.........
<lst name="defaults">
<str name="config">data-config.xml</str>
<str name="update.chain">uuid</str>
</lst>
</requestHandler>
<updateRequestProcessorChain name="uuid">
<processor class="solr.UUIDUpdateProcessorFactory">
<str name="fieldName">uuid</str>
</processor>
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
8
Jayendra
4 Июн 2013 в 13:43
3
Идеально. Только ли я борюсь с форматированием документов Solr и тем, где должен быть размещен каждый пример? :)
– Kikimac
4 Июн 2013 в 13:49
Я попытался внести предложенные вами изменения, но все же это дает мне исключение, например: org.apache.solr.common.SolrException: org.apache.solr.common.SolrException: Ошибка инициализации QueryElevationComponent. Пожалуйста, попробуйте мне помочь.
– Sanket Thakkar
6 Окт 2014 в 16:42
Похожие вопросы
Связанные вопросы
Новые вопросы
apache
Используйте этот тег (вместе с соответствующим тегом языка программирования) для вопросов программирования, касающихся HTTP-сервера Apache. Не используйте этот тег для вопросов о других продуктах Apache Foundation. Обратите внимание, что вопросы конфигурации сервера обычно лучше подходят на https://serverfault.com