Дельта-импорт 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 &gt; '${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 &gt; '${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"

0 ответов

Другие вопросы по тегам