Dynamics crm 2011 MS CRM MaxDepth工作流设置
MS CRM 2011,具体而言。这实际上是一个4个问题: A.为什么选择8作为默认限制?(它是任意的,原始深度计数器是3位整数(虽然执行上下文的深度是32位的),开发人员只是认为2的幂,9是一个不神圣的数字…) B.将其增加到16有什么危险?(除了以某种方式通过测试的错误递归设置在出错之前将下降16次,而不是8次,而且根据情况的严重程度,我可能仍然会出现一些无限循环错误) C.改变这一点的脚本必须在每台CRM服务器上运行,还是只在其中一台服务器上运行?(或者我猜,这是存储在本地配置中还是共享的) 这是问这类问题的最佳论坛吗?(我觉得这对于开发人员的问题来说有点边缘化。)Dynamics crm 2011 MS CRM MaxDepth工作流设置,dynamics-crm-2011,dynamics-crm,Dynamics Crm 2011,Dynamics Crm,MS CRM 2011,具体而言。这实际上是一个4个问题: A.为什么选择8作为默认限制?(它是任意的,原始深度计数器是3位整数(虽然执行上下文的深度是32位的),开发人员只是认为2的幂,9是一个不神圣的数字…) B.将其增加到16有什么危险?(除了以某种方式通过测试的错误递归设置在出错之前将下降16次,而不是8次,而且根据情况的严重程度,我可能仍然会出现一些无限循环错误) C.改变这一点的脚本必须在每台CRM服务器上运行,还是只在其中一台服务器上运行?(或者我猜,这是存储在本地配置中还是共享的
请注意,我已经有了这样做的脚本,我了解执行上下文深度是什么,并且我知道如何降低过度深度的可能性。这些不是我的问题,或者至少不是我能解决的问题。谢谢。您在上一段中已经涵盖了大部分答案,因此我将从回答问题D开始—这可能不是提出这些问题的最佳论坛。有些人会发现它们过于宽泛或基于观点 至于其他问题:
- 我不知道为什么选择这个值
- B.最好避免导致问题的情况,而不是增加阈值。我相信您的系统可以在高于8的设置下工作,但您可能隐藏了错误的设计或其他问题。您提到这超出了您的控制范围,但对于阅读本文的其他人,请尝试解决问题或提出更好的设计
- C.您不需要更改每台服务器上的设置。您提到您知道如何更改它,但我将在这里为阅读此答案的其他人提供一个脚本 下面是将值设置为n的PowerShell脚本:
- 我不知道为什么选择这个值
- B.最好避免导致问题的情况,而不是增加阈值。我相信您的系统可以在高于8的设置下工作,但您可能隐藏了错误的设计或其他问题。您提到这超出了您的控制范围,但对于阅读本文的其他人,请尝试解决问题或提出更好的设计
- C.您不需要更改每台服务器上的设置。您提到您知道如何更改它,但我将在这里为阅读此答案的其他人提供一个脚本 下面是将值设置为n的PowerShell脚本:
Add-PSSnapin Microsoft.Crm.PowerShell
$setting = Get-CrmSetting WorkflowSettings
$setting.MaxDepth=n
Set-CrmSetting $setting