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)

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: VSTS,Team Foundation Server
Comparte este post: