我已经定义了我的'Products_index'来使用SwitchOnRebuildLuceneIndex类型来重建自己。我看到索引生成了2个文件夹:'Products_index'和'Products_index_sec'。但是,当我手动重建索引(sitecore控制面板)并同时尝试从索引中获取结果时,重建辅助索引时不会返回结果。
所以情景:
索引配置如下所示:
<index id="Products_index" type="Sitecore.ContentSearch.LuceneProvider.SwitchOnRebuildLuceneIndex, Sitecore.ContentSearch.LuceneProvider">
...
<locations hint="list:AddCrawler">
<crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
<Database>master</Database>
<Root>/sitecore</Root>
</crawler>
</locations>
</index>
我使用以下代码(通过网络API调用)获得结果
using (var searchContext = ContentSearchManager.GetIndex(MediqBusiness.Constants.Search.ProductIndex).CreateSearchContext())
{
var query = searchContext.GetQueryable<ProductSearchResultItem>().Where(searchItem => searchItem.Name != "__Standard Values"
&& searchItem.TemplateName == "Product" && searchItem.Language == Sitecore.Context.Language.Name);
//additional query fields here..
var results = query.GetResults();
return results;
}
Sitecore版本:Sitecore.NET 7.2(修订版141226)
有什么想法吗?
答案 0 :(得分:2)
当我们使用Sitecore SwitchOnRebuildLuceneIndex时,我们遇到了以下问题。我们联系了Sitecore,他们提供了一个补丁#457624 。
SwitchOnRebuildLuceneIndex通常做的是在重建Sitecore索引时,它将在目录之间切换。目前,主目录是 Products_index ,您启动重建索引。现在您将点击 Products_index_sec 。当第二次重建索引时,目录将再次切换到 Products_index 。
我们观察到您需要重建索引两次。我们已经在Sitecore支持门户网站上记录了一张票,他们向我们提供了补丁#457624
由于