【发布时间】:2015-10-21 13:41:15
【问题描述】:
目前我已经为所有三个数据库(master、web 和 core)配置了IntervalAsynchronousStrategy,它们在指定的时间间隔后重建索引,但我想更改索引策略,以便只在发布后而不是在每个指定时间后进行索引间隔。我尝试通过在配置文件中仅为主数据库定义以下配置来更改策略:
<onPublishEndAsync type="Sitecore.ContentSearch.Maintenance.Strategies.OnPublishEndAsynchronousStrategy, Sitecore.ContentSearch">
<param desc="database">master</param>
<CheckForThreshold>true</CheckForThreshold>
</onPublishEndAsync>
将此策略与索引相结合:
<indexes hint="list:AddIndex">
<index id="sitecore_master_media_index" type="Sitecore.ContentSearch.LuceneProvider.LuceneIndex, Sitecore.ContentSearch.LuceneProvider">
<param desc="name">$(id)</param>
<param desc="folder">$(id)</param>
<param desc="propertyStore" ref="contentSearch/indexConfigurations/databasePropertyStore" param1="$(id)" />
<configuration ref="contentSearch/indexConfigurations/defaultLuceneIndexConfiguration" />
<strategies hint="list:AddStrategy">
<strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/onPublishEndAsync" />
</strategies>
<commitPolicyExecutor type="Sitecore.ContentSearch.CommitPolicyExecutor, Sitecore.ContentSearch">
<policies hint="list:AddCommitPolicy">
<policy type="Sitecore.ContentSearch.TimeIntervalCommitPolicy, Sitecore.ContentSearch" />
</policies>
</commitPolicyExecutor>
<locations hint="list:AddCrawler">
<crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
<Database>master</Database>
<Root>{9076FDC8-33B3-4B97-AC32-640F3481C37F}</Root>
</crawler>
</locations>
</index>
在发布编辑的项目之前,我从/AppData/indexes中删除了“sitecore_master_media_index”的索引文件夹。然后发布了该项目,但发布后未创建索引文件夹。
我是否缺少任何配置?
【问题讨论】:
-
Marek 的回答对您有用吗?如果是,请将其标记为已接受。
标签: indexing sitecore sitecore7.2 sitecore8