Дельта-импорт Solr с кешированием сущностей не работает
Я пытаюсь запланировать Delta-import с Entity Caching в Solr DIH. Полный импорт работает нормально, но delta-import ничего не обновляет. Я не могу понять, что здесь пошло не так:
Мой data-config.xml выглядит следующим образом:
<document name="import">
<!-- if query="" then it imports everything -->
<entity name="header" pk="ID"
query="SELECT * FROM HEADER"
deltaImportQuery="SELECT * FROM HEADER WHERE USER_DOC_ID='${dataimporter.delta.USER_DOC_ID}'"
deltaQuery="SELECT ID,USER_DOC_ID FROM HEADER WHERE CREATED_TS > '${dataimporter.last_index_time}'">
<field column="ID" name="header.ID"/>
<field column="USER_DOC_ID" name="ID"/>
<field column="USER_DOC_ID" name="header.USER_DOC_ID"/>
<field column="TEMPLATE_NAME" name="header.TEMPLATE_NAME"/>
<!-- if child="true" then it creates child documents -->
<entity name="detail" pk="ID"
query="SELECT * FROM AO_PO_DETAIL WHERE USER_DOC_ID='${header.USER_DOC_ID}'"
deltaQuery="SELECT ID,USER_DOC_ID FROM AO_PO_DETAIL WHERE CREATED_TS > '${dataimporter.last_index_time}'"
parentDeltaQuery="SELECT ID,USER_DOC_ID FROM HEADER WHERE USER_DOC_ID='${detail.USER_DOC_ID}'"
cacheKey="USER_DOC_ID" cacheLookup="header.USER_DOC_ID" cacheImpl="SortedMapBackedCache">
<field column="ID" name="detail.ID"/>
<field column="USER_DOC_ID" name="detail.USER_DOC_ID"/>
<field column="TEMPLATE_NAME" name="detail.TEMPLATE_NAME"/>
</entity>
</entity>
</document>
У меня есть процесс, который обновляет строку таблицы DETAIL, выполняя запрос:
update detail set TEMPLATE_NAME='TMP', CREATED_TS=sysdate where USER_DOC_ID='DT000021';
если я удалю ниже параметры кеширования, то все будет нормально.. Кто-нибудь может мне помочь с этим..
cacheKey="USER_DOC_ID" cacheLookup="header.USER_DOC_ID" cacheImpl="SortedMapBackedCache"