Search 未从solr索引中删除未发布的sitecore项
当我取消发布sitecore项目时,它不会从自定义solr索引中删除。我们使用的是<代码> SITECOR.XA.Fase.Vistor Apple。Surviv.SxaItemCrawler <代码>为我们的爬虫类型,并且版本<代码> SITECORE < /代码>是代码> 90.2(Rev 180604) 我已在事件表中确认正在创建deleteitemremote和PublishedRemote事件 更新和添加工作正常,只是删除造成了问题 我们的自定义索引配置:Search 未从solr索引中删除未发布的sitecore项,search,solr,sitecore9,Search,Solr,Sitecore9,当我取消发布sitecore项目时,它不会从自定义solr索引中删除。我们使用的是 SITECOR.XA.Fase.Vistor Apple。Surviv.SxaItemCrawler 为我们的爬虫类型,并且版本 SITECORE < /代码>是代码> 90.2(Rev 180604) 我已在事件表中确认正在创建deleteitemremote和PublishedRemote事件 更新和添加工作正常,只是删除造成了问题 我们的自定义索引配置: <index id="customer_sxa
<index id="customer_sxa_web_index" type="Sitecore.XA.Foundation.Search.Providers.Solr.SolrSearchIndex, Sitecore.XA.Foundation.Search.Providers.Solr" role:require="Standalone or ContentDelivery or ContentManagement" search:require="solr">
<param desc="name">$(id)</param>
<param desc="core">customer_sxa_cpcproducts_web</param>
<param desc="propertyStore" ref="contentSearch/indexConfigurations/databasePropertyStore" param1="$(id)" />
<configuration ref="contentSearch/indexConfigurations/defaultSolrIndexConfiguration" />
<strategies hint="list:AddStrategy">
<strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/onPublishEndAsync" />
</strategies>
<locations hint="list:AddCrawler">
<crawler type="Sitecore.XA.Foundation.VersionSpecific.Search.SxaItemCrawler, Sitecore.XA.Foundation.VersionSpecific">
<Database>web</Database>
<Root>/sitecore/content/customer-Main/customer-Main/Home</Root>
</crawler>
<crawler type="Sitecore.XA.Foundation.VersionSpecific.Search.SxaItemCrawler, Sitecore.XA.Foundation.VersionSpecific">
<Database>web</Database>
<Root>/sitecore/content/customer-Main/customer-Main/Data/Product Content/</Root>
</crawler>
</locations>
<enableItemLanguageFallback>false</enableItemLanguageFallback>
<enableFieldLanguageFallback>false</enableFieldLanguageFallback>
</index>
$(id)
客户\u sxa\u CPC产品\u网站
网状物
/sitecore/content/customer Main/customer Main/Home
网状物
/sitecore/内容/客户主/客户主/数据/产品内容/
假的
假的
我希望从搜索索引中删除已删除(未发布)的项目。但这并没有发生
调查日志会发现以下错误,我假设这是由于该项在取消发布后在web数据库中不可用
Message: Object reference not set to an instance of an object.
Source: Sitecore.XA.Foundation.VersionSpecific
at Sitecore.XA.Foundation.VersionSpecific.Search.SxaItemCrawler.IsExcludedFromIndex(IIndexableUniqueId indexableUniqueId, IndexEntryOperationContext operationContext, Boolean checkLocation)
at Sitecore.ContentSearch.SitecoreItemCrawler.Update(IProviderUpdateContext context, IIndexableUniqueId indexableUniqueId, IndexEntryOperationContext operationContext, IndexingOptions indexingOptions)
at Sitecore.ContentSearch.AbstractSearchIndex.<>c__DisplayClass94_2.<PerformUpdate>b__0(IndexableInfo info, ParallelLoopState parallelLoopState)
at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object )```
消息:对象引用未设置为对象的实例。
资料来源:SITECOR.X.BASIC。
在SITECOR.xa.FraveApdioPosial.Stask.SxaItEng爬行器. IsExcludedFromIndex(InxAxabIuqIdIdxBabLeUnQuiID,索引xCopyOffice上下文操作上下文,布尔检查位置)
在Sitecore.ContentSearch.SitecoreItemCrawler.Update(IProviderUpdateContext,IIIndexableUniqueId indexableUniqueId,IndexEntryOperationContext operationContext,IndexingOptions IndexingOptions)
在Sitecore.ContentSearch.AbstractSearchIndex.c__显示Class94_2.b__0(IndexableInfo信息,ParallelLoopState ParallelLoopState)
在System.Threading.Tasks.Parallel.c__uDisplayClass17_0`1.b__u1()中
位于System.Threading.Tasks.Task.InnerInvokeWitchArg(任务子任务)
在System.Threading.Tasks.Task.c\u显示器上显示Class176\u 0.b\u 0(对象)```