我有一个sitecore 7.2站点,它从6.6升级,任何想法会导致以下错误在日志文件中多次出现:
ManagedPoolThread #3 2015:07:14 10:03:48 ERROR Exception occurred in retryer scope :
at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
at System.Environment.get_StackTrace()
at Sitecore.Data.DataProviders.Retryer.ExecuteNoResult(Action action, Action recover)
at Sitecore.Analytics.Automation.Data.Sql.SqlAutomationProvider.GetDueStates(AutomationStatesDataTable dataTable, Int32 maxEntries)
at Sitecore.Analytics.Automation.AutomationWorker.GetDueStates(AutomationStatesDataTable dataTable)
at Sitecore.Analytics.Automation.AutomationWorker.Process()
at Sitecore.Analytics.Automation.AutomationWorker.<Wakeup>b__4(Object state)
at Sitecore.Threading.ManagedThreadPool.ProcessQueuedItems()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
答案 0 :(得分:5)
您多次看到相同错误的原因是由于重试程序将重试失败的数据库请求的次数等于尝试次数param中设置的次数。
以下是从web.config v7.2中获取的重试程序部分:
<!-- RETRYER
When enabled, the Retryer resends failed database requests a specified number of times.
For example, this is useful if you configure a Sitecore instance to support hot failover for database calls.
Default value: disabled="true"
-->
<retryer disabled="true" type="Sitecore.Data.DataProviders.Retryer, Sitecore.Kernel">
<param desc="Number of tries">6</param>
<param desc="Interval between tries">00:00:00.500</param>
<param desc="Log each exception (should be used for debug only)">true</param>
</retryer>
答案 1 :(得分:4)
当Analytics
数据库连接字符串不正确时,会看到您看到的异常。
尝试使用来自此连接字符串的凭据使用SQL Server Management Studio连接到数据库。
由于Retryer尝试在失败后重新执行查询,因此会多次显示(有关重试程序的详细说明,请参阅Jason Home answer。)