22/1/2009 23:41 El Bruno

[TFS2008] Error 32000 en la actualización de TFS 2005 a TFS 2008 (un codigo de error que sirve para todo)

El Bruno Visual Studio Team System

Buenas,

últimamente he abandonado un poco a Team Foundation Server, pero hoy da la casualidad que me he encontrado con uno de esos errores feos de TFS que vale la pena mencionar. En un servidor con TFS 2005, después de ejecutar todos los pasos previos para la actualización a TFS 2008, durante la misma me encontré con el siguiente error:

   1: ---------------------------
   2: Microsoft Visual Studio 2008 Team Foundation Server Setup
   3: ---------------------------
   4: Error 32000.The Commandline 
   5: '"D:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\TfsDb.exe"  returned non-zero value: 100.
   6: upgrade /server:"Server" 
   7: /property:"TFS_SERVICE_ACCOUNT=NT AUTHORITY\NETWORK SERVICE;
   8: TFS_REPORTING_ACCOUNT=Server\TFSREPORTS;
   9: LCID=1033;VSTF_AS_INSTANCE=Server;VSTF_AS_DATABASE=TFSWarehouse;VSTF_AS_ACCOUNT=" 
  10: /showui:65974'
  11: ---------------------------
  12: Retry   Cancel   
  13: ---------------------------

Lo interesante de este error es que da aproximadamente al final del proceso de actualización de las bases de datos y del cubo de SQL Server a la versión de TFS 2008, y siempre da el Error 32000. Los siguientes pasos pueden ayudar a solventar el error o a comprender un poco más sobre el mismo.

Tutorial

1. Para poder analizar y verificar que sucede, es necesario leer el log de instalación. Este es un archivo de texto plano que se almacena en el directorio temporal del usuario que ejecuta la instalación o upgrade de TFS.

2. Para acceder al directorio temporal, debemos acceder a Start // Run e introducir %temp%. Esto nos abrirá un nuevo Windows Explorer dentro de nuestro directorio temporal.

3. Dentro de este directorio, si ordenamos los archivos por fecha de modificación, podremos ver que el log de instalación es uno de los primeros.

Por lo general el nombre del archivo es VSMsiLog*****.log; donde los **** representan un número con el que se identifica el archivo de log.

4. Abriendo el archivo podemos ver en el mismo, el paso a paso de la instalación y el detalle de la acción que disparó el error. En este caso la ejecución de la sentencia

   1: '"D:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\TfsDb.exe" upgrade /server:"Server" /property:"TFS_SERVICE_ACCOUNT=NT AUTHORITY\NETWORK SERVICE;TFS_REPORTING_ACCOUNT=Server\TFSREPORTS;LCID=1033;VSTF_AS_INSTANCE=Server;VSTF_AS_DATABASE=TFSWarehouse;VSTF_AS_ACCOUNT="

Dispara un error, pero no tenemos mucha más información sobre el mismo.

5. Para obtener más información, desde una ventana de comandos ejecutaremos la sentencia que nos dió el error y podremos ver en la misma, los pasos que sigue el proceso de actualización, con el detalle del error inclusive.

   1: [05:06:46.166] .
   2: [05:06:46.166] Errors in the metadata manager. An error occurred when instantiating a metadata object from the file, '\\?\D:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\Data\TFSWarehouse.0.db\Team System.2226.cub.xml'.
   3: [05:06:46.385] 5
   4: [05:06:46.385] D:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\SetupWarehouse.exe 5 8875
   5: [05:06:46.416] Microsoft.TeamFoundation.DatabaseInstaller.DatabaseException: D:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\SetupWarehouse.exe 5 8875 
   6:   at Microsoft.TeamFoundation.DatabaseInstaller.ProcessDeployer.ExecuteCommand(
   7: String filePath, String arguments, Boolean continueOnError)
   8: Microsoft.TeamFoundation.DatabaseInstaller.DatabaseException: 
   9: D:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\SetupWarehouse.exe 5 8875 
  10:  at Microsoft.TeamFoundation.DatabaseInstaller.ProcessDeployer.ExecuteCommand(
  11: String filePath, String arguments, Boolean continueOnError) 
  12:  at Microsoft.TeamFoundation.DatabaseInstaller.Installer.RunDbActions(InstallerMode mode, String server, Boolean preview)
  13:  at Microsoft.TeamFoundation.DatabaseInstaller.Installer.RunSteps(InstallerMode mode, String server, IPropertyCollection properties, Boolean preview)
  14:    at Microsoft.TeamFoundation.DatabaseInstaller.Installer.Upgrade(String server
  15: , IPropertyCollection properties, Boolean preview)
  16:    at Microsoft.TeamFoundation.DatabaseInstaller.CommandLine.Commands.CommandUpgrade.OnRun()
  17:    at Microsoft.TeamFoundation.DatabaseInstaller.CommandLine.Commands.InstallerCommand.Run()
  18:    at Microsoft.TeamFoundation.DatabaseInstaller.CommandLine.CommandLine.RunCommand(String[] args)
  19:  
  20: D:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\Setup
  21: Warehouse.exe 5 8875

6. En este caso el error se dispara en la actualización de la base de datos de DataWarehouse ya que en la misma el archivo 

[\\?\D:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\Data\TFSWarehouse.0.db\Team System.2226.cub.xml] posee un error de formado de xml.

7. Esto lo puedo comprobar abriendo el archivo y verificando el mismo con Internet Explorer o con otra herramienta para validar documentos Xml.

8. No es parte de este pequeño paso a paso explicar como funcionan los catálogos de Análysis Services, pero para este caso he eliminado este archivo ya que el catálogo estaba mal configurado.

9. Desde la línea de comandos he ejecutado nuevamente la sentencia y afortunadamente todo funciona correctamente

10. Pues bien, en este momento ya podemos repetir el proceso de actualización con este error solucionado.

 

Saludos @ Home

El Bruno

Crossposting from ElBruno.com

Archivado en: ,
Comparte este post:

# [TFS2008] Posts y HowTos sobre Team Foundation Server 2008 y 2005 (VI)

Wednesday, September 23, 2009 7:54 PM by El Bruno

Buenas, actualización con los posts, HowTos, posts sobre informes, builds, etc. sobre Team Foundation

# [Spanish] Visual Studio 2010 ALM y Team Foundation Server 2010, 2008 y 2005

Sunday, August 28, 2011 1:05 PM by El Bruno

13 marzo Buenas, Team Foundation Server 2010 WorkItem Tracking [#TFS2010] HowTo: Agregar un estado en