REVISIÓN: mensaje de error "error de desbordamiento aritmético convertir IDENTIDAD al tipo de datos int" cuando se compila un proyecto en Team Foundation Server 2010

Síntomas

Cuando intenta generar un proyecto en Microsoft Visual Studio Team Foundation Server (TFS) 2010, el proceso de compilación se produce un error, y recibirá el siguiente mensaje de error:
Mensaje de excepción: Error de desbordamiento aritmético conversión de IDENTIDAD a tipo de datos int.
Se produjo un desbordamiento aritmético. (tipo SqlException)
Además, se genera un mensaje de excepción no controlada que se parece al siguiente:
en Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.MapException (SqlException ex QueryExecutionState queryState)

en Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.HandleException (SqlException ex)

en Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.Execute (ExecuteType executeType, CommandBehavior comportamiento)

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

en Microsoft.TeamFoundation.Build.Server.BuildComponent.UpdateBuildInformation (String buildUri, cambios de IEnumerable'1, cadena requestedBy)

en Microsoft.TeamFoundation.Build.Server.TeamFoundationBuildService.UpdateBuildInformation (requestContext TeamFoundationRequestContext, cambios de IList'1, IdentityDescriptor requestedFor)

en Microsoft.TeamFoundation.Build.Server.BuildWebService.UpdateBuildInformation (InformationChangeRequest [] cambios)
Nota: Este problema normalmente se produce cuando los registros de generación grandes se almacenan en la base de datos del servidor de compilación TFS.

Causa

Este problema se produce porque el registrador de MSBuild agrega nodos a la tabla tbl_BuildInformation durante cada proceso de generación. Por lo tanto, la columna NodeId alcanza su valor máximo entero.

Por ejemplo, si todas las generaciones se ejecuta en modo de diagnóstico o detallado, un lote de mensajes se escriben en la base de datos. Este comportamiento hace que el valor crecer. Además, si dispone de las actividades que se están escribiendo los mensajes, pueden sumar estos valores con el tiempo.

Al ejecutar la siguiente instrucción SQL contra la base de datos de la colección, el valor devuelto es cercano al valor máximo de 2.147 millones:
Seleccione IDENT_CURRENT('tbl_buildInformation')

Solución

Para resolver este problema, aplique la revisión siguiente.

Se trata de una revisión preventiva. Esta revisión no resuelve este problema si ya ha ocurrido. Se recomienda ponerse en contacto con Microsoft Customer Support Services si se produce el problema.

Después de aplicar este hotfix, las propiedades LogProjectNodes y LogWarnings se agregan a las actividades de MSBuild en TFS 2010.

Nota: Para establecer las nuevas propiedades de actividades de MSBuild,debe aplicar esta revisión en el servidor de compilación TFS y en los clientes de Microsoft Visual Studio que se utilizan para modificar el flujo de trabajo de compilación.

Información de la revisión

Ahora hay una revisión compatible de Microsoft. Sin embargo, se pretende corregir el problema que se describe en este artículo. Aplíquela sólo a sistemas que experimenten este problema específico. Esta revisión puede ser sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la próxima actualización de software que contenga este hotfix.

Para resolver este problema inmediatamente, póngase en contacto con los servicios de soporte técnico de Microsoft para obtener la revisión. Para obtener una lista completa de números de teléfono de los servicios de soporte al cliente de Microsoft e información acerca de los costos de soporte técnico, visite el siguiente sitio Web de Microsoft:Nota: En casos especiales, los costos derivados normalmente de las llamadas al soporte técnico pueden cancelarse si un profesional de soporte técnico de Microsoft determina que una actualización específica resolverá el problema. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con la actualización en cuestión.

Requisitos previos

Para aplicar este hotfix, debe tener Microsoft Visual Studio Team Foundation 2010 Service Pack 1 (SP1) instalado.

Requisito de reinicio

Tendrá que reiniciar el equipo después de aplicar esta revisión si los archivos afectados se utilizan durante la instalación. Se recomienda que cierre todas las instancias de Visual Studio antes de instalar este hotfix.

Información de reemplazo de revisión

Esta revisión no sustituye a ninguna revisión publicada previamente.

Información de archivo

La versión global de esta revisión tiene los atributos de archivo (o atributos de último archivo) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataforma
Microsoft.teamfoundation.build.server.logger.dll10.0.40219.41349,2808-Aug-1214:55x86
Microsoft.teamfoundation.build.workflow.dll10.0.40219.413660,6168-Aug-1214:55x86
Tfsbuildservicehost.exe10.0.40219.413192,6088-Aug-1214:55x86

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Más información

Para evitar este problema, utilice uno de los métodos siguientes:
  • Abra la plantilla de proceso de compilación utilizando un editor de texto, agregar las propiedades LogProjectNodes y LogWarnings a la actividad de MSBuild y, a continuación, establezca los valores de las propiedades en false.
  • Abra la plantilla de proceso de compilación mediante el Diseñador de flujo de trabajo en Visual Studio, vaya a la actividad de MSBuild y, a continuación, cambie los valores de las dos propiedades en false.
Notas:
  • Hay dos actividades de MSBuild en la plantilla de proceso de compilación predeterminado.
  • El valor predeterminado de las dos propiedades es true.
Se recomienda reducir el nivel de detalle de las compilaciones si utilizas el nivel detallado o de diagnóstico. Utilice estas opciones sólo cuando sea necesario.

En TFS2012, estos mensajes no se escriben en la base de datos. En su lugar, se escriben en un archivo que le ayudarán a este problema.

Para obtener más información acerca de cómo mantener TFS construir tablas, consulte los siguientes sitios Web de Microsoft:

Propiedades

Id. de artículo: 2704778 - Última revisión: 9 ene. 2017 - Revisión: 1

Comentarios