I'm trying to use the CachedSqlEntityProcessor on a child entity that also
has a delta query.
Full imports and delta imports of the parent entity work fine however delta
imports for the child entity have no effect. If I remove the
processor="CachedSqlEntityProcessor" attribute from the child entity, the
delta import works flawlessly but the full import is very slow.
Here's my data-config.xml:
<dataConfig>
<xi:include href="db-connection.xml"
xmlns:xi="http://www.w3.org/2001/XInclude"/>
<document>
<entity name="story_sentences"
pk="story_sentences_id"
query="select story_sentences_id || '_ss' as id, 'ss' as
field_type, * from story_sentences"
deltaImportQuery="select story_sentences_id || '_ss' as id,
'ss' as field_type, * from story_sentences where story_sentences_id=${
dataimporter.delta.id}"
deltaQuery="SELECT story_sentences_id as id, story_sentences_id
from story_sentences where db_row_last_updated >
'${dih.last_index_time}' ">
<entity name="media_tags_map"
pk="media_tags_map_id"
query="select tags_id as tags_id_media, * from media_tags_map"
cacheKey="media_id"
cacheLookup="story_sentences.media_id"
processor="CachedSqlEntityProcessor"
deltaQuery="select media_tags_map_id, media_id::varchar from
media_tags_map where db_row_last_updated > '${dih.last_index_time}' "
parentDeltaQuery="select story_sentences_id as id from
story_sentences where media_id = ${media_tags_map.media_id}"
>
</entity>
</entity>
</document>
</dataConfig>
I need to be able to run delta imports based on the media_tags_map table in
addition to the story_sentences table.
Any idea why delta imports for media_tags_map won't work when the
CachedSqlEntityProcessor is used?
I've searched extensively but can't find an example that uses both
CachedSqlEntityProcessor and deltaQuery on the sub-entity or any
explanation of why the above configuration won't work as expected.
--
Thanks,
David