DNN索引器失败,带有2sxc内容模块

时间:2018-05-02 20:24:24

标签: dotnetnuke 2sxc

在最近的DNN / 2sxc安装中,DNN索引函数失败并显示GeneralException:"字典中没有给定的键。"

堆栈错误是:

  

消息:搜索:在选项卡50,门户1上索引模块458时出错

     

堆栈跟踪:

     

     
    

ToSic.SexyContent.Environment.Dnn7.DnnBusinessController.GetModifiedSearchDocuments(ModuleInfo     moduleInfo,DateTime beginDate)in     C:\项目\ 2sxc-dnn742 \网站\ DesktopModules \ ToSIC_SexyContent \ 2sxc     Dnn \ Environment \ Dnn7 \ DnnBusinessController.cs:第89行at     DotNetNuke.Services.Search.ModuleIndexer.IndexSearchDocuments(的Int32     portalId,ScheduleHistoryItem schedule,DateTime startDateLocal,     Action`1 indexer)

  
     

InnerMessage:给定的密钥不存在于   字典。

     

InnerStackTrace:

     
    

在System.ThrowHelper.ThrowKeyNotFoundException()处     System.Collections.Generic.Dictionary' 2.get_Item(TKey key)at     ToSic.SexyContent.ContentGroup.get_Template()in     C:\项目\ 2sxc-dnn742 \网站\ DesktopModules \ ToSIC_SexyContent \ ToSic.Sxc \ SexyContent \ ContentGroup.cs:行     70点到     ToSic.SexyContent.ContentBlocks.ModuleContentBlock..ctor(IInstanceInfo     instanceInfo,Log parentLog,ITenant tenant,IEnumerable`1     overrideParams)in     C:\项目\ 2sxc-dnn742 \网站\ DesktopModules \ ToSIC_SexyContent \ ToSic.Sxc \ SexyContent \ ContentBlocks \ ModuleContentBlock.cs:行     82点     ToSic.SexyContent.Environment.Dnn7.Search.SearchController.GetModifiedSearchDocuments(IInstanceInfo     实例,DateTime beginDate)in     C:\项目\ 2sxc-dnn742 \网站\ DesktopModules \ ToSIC_SexyContent \ 2sxc     Dnn \ Search \ SearchController.cs:第55行     ToSic.SexyContent.Environment.Dnn7.DnnBusinessController.GetModifiedSearchDocuments(ModuleInfo     moduleInfo,DateTime beginDate)in     C:\项目\ 2sxc-dnn742 \网站\ DesktopModules \ ToSIC_SexyContent \ 2sxc     Dnn \ Environment \ Dnn7 \ DnnBusinessController.cs:第85行     来源:ToSic.Sxc.Dnn

  

回收应用程序池会重新启动应用程序,但问题会一次又一次地发生。

我找到了这些解决方案:

Delete the DNN index files and reindex    
Remove and give back rights to the application pool to the index files    
Convert the site in English then set it back in French

但没有任何作用。问题只发生在2sxc模块(基本内容)而不是其他模块(例如HTML)。

有什么想法解决这个问题吗?

环境:DNN 9.1.1 2SXC 9.23

3 个答案:

答案 0 :(得分:2)

只是fyi:这似乎是一个问题 - 我们正在研究它,看看我猜这与https://github.com/2sic/2sxc/issues/1564https://github.com/2sic/2sxc/issues/1561

有关

请注意,这已在9.31中修复,我们将发布9.32以及更多修复。

答案 1 :(得分:0)

好消息是我不再有问题了...... 坏消息是我不知道为什么......

作为一名真正的基础科学家,我同时做了几个动作,其中一个(或结合)解决了这个问题。我做了什么:

  • 升级到2sxc版本9.30
  • 将应用程序池的回收时间设置为10080分钟(7天)
  • 取消选中IIS中的静态和动态缓存
  • 安装了Windows Server更新(并重新启动了服务器)

另外,我正在使用RDP连接到服务器。当我开始连接时,我现在取消选中使用本地打印机,剪贴板和本地驱动器(实际上,我没有将任何本地资源绑定到远程服务器)。我意识到有错误,因为我的本地打印机的驱动程序没有安装在远程服务器上。不确定它与它有什么关系,但由于我不再需要这些绑定,我将它们停用。

下一步是尝试设置缓存并设置更短的时间来回收应用程序池。

如果我发现了什么,我会更新这篇文章。

答案 2 :(得分:-1)

我想这与引用服务器上不存在的路径有关。在我们每晚的备份运行后,我们每晚都会遇到这种情况。骑自行车AppPool会把它带回来(如你所说),但我们计划升级到9.30(今天刚刚发布 - https://github.com/2sic/2sxc/releases)。愿第四个与你同在!

顺便说一下,我们注意到9.23被标记为" Pre-Release",所以使用这个版本可能不是那么聪明? :)