修复:"算术溢出错误将标识转换为 int 数据类型"错误消息时生成的项目中 Team Foundation Server 2010

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 2704778
症状
当尝试生成项目中 Microsoft Visual Studio Team Foundation Server (TFS) 2010 年,则生成过程将失败,并且您会收到以下错误消息:
异常消息: 算术溢出错误将标识转换为数据类型 int。
发生算术溢出。(sqlexception: 类型)
此外,还会生成类似于以下的未处理的异常消息:
在 Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.MapException (sqlexception: (例如,QueryExecutionState queryState)

在 Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.HandleException (sqlexception: ex)

在 Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.Execute (ExecuteType executeType、 CommandBehavior 行为)

在 Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.ExecuteReader()

在 Microsoft.TeamFoundation.Build.Server.BuildComponent.UpdateBuildInformation (字符串 buildUri、 IEnumerable'1 更改字符串 requestedBy)

在 Microsoft.TeamFoundation.Build.Server.TeamFoundationBuildService.UpdateBuildInformation TeamFoundationRequestContext requestContext、 IList'1 更改 IdentityDescriptor requestedFor)

在 Microsoft.TeamFoundation.Build.Server.BuildWebService.UpdateBuildInformation (InformationChangeRequest [] 更改)
注意TFS 生成服务器数据库中存储大型生成日志时,通常会发生此问题。
原因
因为 MSBuild 记录器节点向tbl_BuildInformation表中添加每个生成过程中,会出现此问题。因此,节点标识列已达到其最大整数值。
解决方案
若要解决此问题,请将应用以下修补程序。

这是一个预防性的修复程序。此修补程序不能解决此问题,如果已经出现。我们建议您与 Microsoft 客户支持服务,如果您遇到此问题。

应用此修补程序后, LogProjectNodesLogWarnings属性添加到 TFS 2010 年的 MSBuild 活动。

注意若要将新的属性设置在 MSBuild 活动中,TFS 生成服务器和用于编辑生成工作流的 Microsoft Visual Studio 客户端上,您必须应用此修补程序。

修补程序信息

现在可以从 Microsoft 获得支持的修补程序。但是,它被用于解决本文中描述的问题。它只应用于出现这一特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修补程序的下一个软件更新。

要立即解决此问题,请联系 Microsoft 客户支持服务,以获取此修复程序。Microsoft 客户支持服务的电话号码和关于支持费用的信息的完整列表,请访问以下 Microsoft 网站:注意在特殊情况下,如果 Microsoft 支持专业人员确定某个特定的更新将解决您的问题,可能会取消通常会导致支持电话的费用。其他支持问题和事项,不适合特定的更新将正常收取支持费用。

系统必备组件

若要应用此修补程序,您必须具有 Microsoft Visual Studio 团队基础 2010 Service Pack 1 (SP1) 安装。

重新启动要求

您必须重新启动计算机后,如果受影响的文件正在使用在安装过程中应用此修补程序。我们建议您在安装此修补程序之前关闭 Visual Studio 的所有实例。

修补程序替换信息

此修补程序不替代以前发布的修补程序。

文件信息

此修补程序的全球版具有的文件属性 (或更新的文件属性) 下表中列出。日期和时间,这些文件列出了以协调通用时间 (UTC)。当您查看文件信息时,将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用 时区 在选项卡 日期和时间 在控制面板中的项。
文件名称文件版本文件大小日期时间平台
Microsoft.teamfoundation.build.server.logger.dll10.0.40219.41349,2808 年 8 月 12 日14: 55x86
Microsoft.teamfoundation.build.workflow.dll10.0.40219.413660,6168 年 8 月 12 日14: 55x86
Tfsbuildservicehost.exe10.0.40219.413192,6088 年 8 月 12 日14: 55x86
状态
Microsoft 已经确认这是"适用于"一节中列出的 Microsoft 产品中的问题。
更多信息
若要防止此问题,请使用下列方法之一:
  • 使用文本编辑器来打开您的生成过程模板到 MSBuild 活动中,添加LogProjectNodesLogWarnings属性,然后将这些属性的值设置为false
  • 在 Visual Studio 中使用工作流设计器中打开您的生成过程模板,浏览到 MSBuild 活动中,然后将两个属性的值更改为false
备注
  • 在默认生成流程模板中有两个 MSBuild 活动。
  • 两个属性的默认值为true

警告:本文已自动翻译

Thuộc tính

ID Bài viết: 2704778 - Xem lại Lần cuối: 09/12/2012 11:42:00 - Bản sửa đổi: 1.0

Microsoft Visual Studio Team Foundation Server 2010 Service Pack 1, Microsoft Visual Studio Team Foundation Server 2010, Microsoft Visual Studio 2010 Service Pack 1, Microsoft Visual Studio 2010 Ultimate, Microsoft Visual Studio 2010 Professional, Microsoft Visual Studio 2010 Premium with MSDN, Microsoft Visual Studio Test Professional 2010

  • kbqfe kbhotfixserver kbfix kbsurveynew kbexpertiseadvanced kbmt KB2704778 KbMtzh
Phản hồi