検索インデックスの増分更新を実行する場合、Sitecoreが、インデックスに存在しないはずのコンテンツ アイテムを含めてしまう場合があります。
具体的には、Sitecoreが特定のインデックスに対するクローラー ルートの構成値を無視する場合があります。
例えば、sitecore_master_indexの構成が次の場合、/sitecore/contentツリーの外部にあるアイテムがインデックスに現れる可能性があります:
<index id="sitecore_master_index" type="Sitecore.ContentSearch.LuceneProvider.LuceneIndex, Sitecore.ContentSearch.LuceneProvider">
...
<locations hint="list:AddCrawler">
<crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
<Database>master</Database>
<Root>/sitecore/content</Root>
</crawler>
</locations>
</index>
この問題の原因は、インデックスに指定されたクローラー ルート アイテムがインデックス更新中に無視されることです。
この問題は、完全な検索インデックスの再構築が実行された場合には発生しないことに注意してください。
この問題を解決するには、次の手順を実行します:
Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch次の文字列に置き換えます:
Sitecore.Support.ContentSearch.SitecoreItemCrawler, Sitecore.Support.406670
<index id="sitecore_master_index" type="Sitecore.ContentSearch.LuceneProvider.LuceneIndex, Sitecore.ContentSearch.LuceneProvider">
...
<locations hint="list:AddCrawler">
<crawler type="Sitecore.Support.ContentSearch.SitecoreItemCrawler, Sitecore.Support.406670">
<Database>master</Database>
<Root>/sitecore/content</Root>
</crawler>
</locations>
</index>