FIX: A cluster upgrade to Service Pack 1 does not succeed if SQL Server services are running under a non-administrator account (308829)



The information in this article applies to:

  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Evaluation Edition
  • Microsoft SQL Server 2000 Developer Edition

This article was previously published under Q308829
BUG#: 354353 (SHILOH_BUGS)

SYMPTOMS

If you start SQL Server-related services with a Non-Administrator account on a cluster, Service Pack 1 (SP1) Setup for a SQL Server instance (default or named) is not successful and you receive the following error message:
Setup

The Cluster Resource Failed to come online. If extended information was reported by the clustering service it can be obtained from the event log.
In addition to the error message, the following errors are recorded:

Sqlclstr.log
~~~ ClusterResourceStart... tick=0, state=129
~~~ ClusterResourceStart... tick=1, state=2
ClusterGroupEnum(4): enter
ClusterGroupEnum(4): [SQL Server Agent]
~~~ XXX OnlineClusterResource starts for SQL Server Agent
~~~ ClusterResourceStart... tick=0, state=129
~~~ ClusterResourceStart... tick=1, state=4
~~~ XXX OnlineClusterResource failed
[sqlclusterSetup.cpp:1851] : 1008 (0x3f0): An attempt was made to reference a token that does not exist. 
[sqlclusterSetup.cpp:1544] : 50049 (0xc381): <<<FormatMessage failed: 317>>>
~~~  DoClusterSetupWork
					
Sqlsp.log
CRemoteProcess::RunUntilComplete [0x8c] exit code: 3010
Remote process exit code was '3010' (STPCPQHCLN2).

CThreadPool::RunUntilCompleteHlpr WaitForMultipleObjects returned: 0
CThreadPool::RunUntilCompleteHlpr signaled thread [0x8c]
Thread [0x8c] exit code: [0xbc2]
CProcess::RunUntilComplete [0x88] exit code: 3010
Remote process exit code was '3010' (STPCPQHCLN1).

CThreadPool::RunUntilCompleteHlpr WaitForMultipleObjects returned: 3010
CThreadPool::RunUntilCompleteHlpr signaled thread [0x88]
Thread [0x88] exit code: [0xbc2]
CThreadPool::RunUntilComplete returned 3010
CThreadPool::RunUntilComplete execution level=1, need execution: 0
Disconnecting from remote machine (STPCPQHCLN1)...
					
The Sqlclstr.log and Sqlsp.log are located in the Windows folders.

After such a failure, you may not be able to successfully start SQL Server services or Cluster Resources.

CAUSE

Setup cannot complete successfully because the Access Control Lists (ACLs) on the SQL Server-related registry key are reset. Because of this, Setup does not preserve the previous registry key settings and it removes the necessary access permissions from the registry keys for non-Administrator accounts.

RESOLUTION

To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack

WORKAROUND

To work around this behavior, start SQL Server-related services with an account that has administrative privileges on all nodes of the cluster. You can give an account administrator-level privileges by making it part of the local Administrators group on the nodes of the cluster either directly or through group membership.

After a failed Setup attempt, you might not be able to bring the SQL Server resources online. If this is the case, set the SQL Server-related services to start by using a Domain account.

STATUS

Microsoft has confirmed that this is a problem in Microsoft SQL Server 2000 SP1.

This problem was first corrected in Microsoft SQL Server 2000 Service Pack 2.

Modification Type:MinorLast Reviewed:3/18/2006
Keywords:kbbug kbfix KB308829 kbAudITPRO kbAudDeveloper