我需要在使用dataimporter.request.clean == false
完全导入时删除一些文档。这限制了对我开放的选项,似乎使用$deleteDocById
将是我的最佳选择。但是,我找不到如何实现这一目标的好例子。
我正在使用以下几行:
<document>
<entity query="select id, text
IF(yadda.dateyyy <= NOW(),yadda.id,NULL) AS $deleteDocById,
IF(yadda.dateyyy <= NOW(),yadda.id,NULL) AS $skipDoc,
from yadda">
</entity>
</document>
GET参数?command=full-import&clean=false
似乎正确地触发了包含Indexing completed. Added/Updated: 72 documents. Deleted 4 documents.
的最终报告,但是当查询所谓的已删除文档时仍然在索引中。
答案 0 :(得分:2)
$skipDoc
需要设置为字符串值"true"
才能生效。
<document>
<entity query="select id, text
IF(yadda.dateyyy <= NOW(),yadda.id,NULL) AS $deleteDocById,
IF(yadda.dateyyy <= NOW(),"true",NULL) AS $skipDoc,
from yadda">
</entity>
</document>