Error "Failed to find a cluster group that owned shared disk: E:" cuando E: es un disco local

En un entorno cluster de 2 nodos, tenemos una instancia cluster de SQL Server 2005 X64 en versión RTM, y una instancia de Analysis Services 2005 cluster.

Queremos actualizar la instancia de SQL Server 2005 al Service Pack 2. Sin embargo, la instalación falla con el error siguiente: "Product: Microsoft SQL Server 2005 (64-bit) -- Configuration failed."

 Los logs de instalación del Service Pack para SQL Server 2005 se encuentran por defecto en: C:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Hotfix.

En este caso, el fichero hotfix.log muestra::

MSP Error: 29527 The setup has encountered an unexpected error in datastore. The action is SetInstanceProperty. The error is : Source File Name: datastore\cachedpropertycollection.cpp
Compiler Timestamp: Sat Oct 7 09:43:48 2006
Function Name: CachedPropertyCollection::findProperty
Source Line Number: 130
----------------------------------------------------------
Failed to find property "ComputerList" {"SqlComputers", "", ""} in cache
Source File Name: datastore\clusterinfocollector.cpp
Compiler Timestamp: Sat Oct 7 09:43:48 2006
Function Name: ClusterInfoCollector::collectClusterVSInfo
Source Line Number: 888
----------------------------------------------------------
Failed to detect VS info due to datastore exception.
Source File Name: datastore\clustergroupsproperties.cpp
Compiler Timestamp: Sat Oct 7 09:43:48 2006
Function Name: ClusterGroupScope.SharedDisks
Source Line Number: 56
----------------------------------------------------------
Failed to find a cluster g

El error no se muestra completo. Sin embargo, al ir al log de aplicación del nodo en el que ejecutamos el setup podemos ver registrado el error completo:

Event Type: Error
Event Source: MsiInstaller
Event Category: None
Event ID: 10005
Date:
Time:
User:
Computer:
Description:
Product: Microsoft SQL Server 2005 (64-bit) -- Error 29527. The setup has encountered an unexpected error in datastore. The action is RestoreSetupParams. The error is : Source File Name: datastore\cachedpropertycollection.cpp
Compiler Timestamp: Sat Oct 7 09:43:48 2006
Function Name: CachedPropertyCollection::findProperty
Source Line Number: 130
----------------------------------------------------------
Failed to find property "OwningGroup" {"VirtualServerInfo", "", "SQLVSPRD03"} in cache
Source File Name: datastore\clusterinfocollector.cpp
Compiler Timestamp: Sat Oct 7 09:43:48 2006
Function Name: ClusterInfoCollector::collectClusterVSInfo
Source Line Number: 888
----------------------------------------------------------
Failed to detect VS info due to datastore exception.
Source File Name: datastore\clustergroupsproperties.cpp
Compiler Timestamp: Sat Oct 7 09:43:48 2006
Function Name: ClusterGroupScope.SharedDisks
Source Line Number: 56
----------------------------------------------------------
Failed to find a cluster group that owned shared disk: E:

El Setup del Service Pack 2 falla porque dice que no puede encontrar el disco compartido E:.

Pero E: en cada uno de los nodos es un disco local, y no compartido.

 

El problema esdebido a que en el registro, la instancia cluster de Analysis Services apunta al disco E:\, lo que evidentemente es erróneo porque el grupo de SSAS en el cluster no puede contener un disco local:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.2\Setup
Version REG_SZ 9.00.1399.06
ASGroup REG_SZ S-1-5-21-1963925522-1830819238-1060643463-27841
Language REG_DWORD 0x409
ProductCode REG_SZ {2D8F2A31-E409-43B5-91AF-2FAF678A0052}
SqlCluster REG_DWORD 0x1
FeatureList REG_SZ Analysis_Server=3 AnalysisDataFiles=3 AnalysisSharedTools=3
SQLBinRoot REG_SZ E:\NODO2\MSSQL.2\OLAP\Bin
PatchLevel REG_SZ 9.00.1399.06
SQLPath REG_SZ E:\NODO2\MSSQL.2\OLAP DataDir REG_SZ E:\NODO2(…)

Actualizando las entradas de registro para que apunten al disco compartido que contiene las bases de datos de la instancia de Analysis Services, la instalación del Service Pack 2 para la instancia de SQL Server 2005 finaliza correctamente.

 

Marcos Celada

Ingeniero de Soporte de SQL Server