solr не импортирует поля, отличные от id
Я использую модуль Solr DataImportHandler. Вот мой конфиг;
<dataConfig>
<dataSource type="JdbcDataSource"
name="sql"
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost;databaseName=AdventureWorks2008;integratedSecurity=true;"/>
<document>
<entity name="Person" dataSource="sql"
pk="BusinessEntityID"
query="select BusinessEntityID,FirstName,LastName FROM [Person].[Person]"
deltaImportQuery="select BusinessEntityID,FirstName,LastName FROM [Person].[Person] WHERE id='${dih.delta.id}'"
deltaQuery="SELECT BusinessEntityID FROM [Person].[Person] WHERE ModifiedDate > '${dih.last_index_time}'">
<field column="BusinessEntityID" name="id"/>
<field column="FirstName" name="firstname"/>
<field column="LastName" name="lastname"/>
</entity>
</document>
</dataConfig>
по какой-то причине импортируется только поле id, но не все остальные.
В чем будет причина? Я что-то пропустил?
2 ответа
Решение
Возможно, вы пропустили следующие записи в schema.xml
файл
<field name="id" type="string" indexed="true" stored="true" required="true"/>
<field name="firstname" type="string" indexed="true" stored="true"/>
<field name="lastname" type="string" indexed="true" stored="true"/>
Здесь введите для id
может быть int
, Просто проверьте, что вы хотите.
<field name="id" type="int" indexed="true" stored="true" required="true"/>
Убедитесь, что ваш идентификатор и уникальное поле правильные. Я столкнулся с той же проблемой, изменить Pk и уникальное имя поля, и это работает нормально.