FIX: L'arresto del servizio SQL Server richiede molto tempo ed è impossibile riavviare il servizio SQL Server in un ambiente cluster Microsoft SQL Server 2008 quando il server è sotto stress

Microsoft distribuisce le correzioni di Microsoft SQL Server 2008 come un unico file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutte le correzioni rapide e di sicurezza incluse nella versione precedente di correzioni di SQL Server 2008.

Sintomi

In un ambiente cluster di Microsoft SQL Server 2008, l'arresto del servizio SQL Server richiede molto tempo quando si verifica un carico elevato sul server. Inoltre, lo stato del servizio viene modificato in "Stop Pending" e non è possibile riavviare il servizio SQL Server. Nel registro cluster di Windows sono registrati anche messaggi di errore simili ai seguenti:

Nota

[RES] <SQL Server SQL Server (SQL1)>: [sqsrvres] SvcStop: Invio del primo segnale di arresto al servizio.

 [RHS] RhsCall::D eadlockMonitor: timeout della chiamata TERMINATERESOURCE per la risorsa 'SQL Server (SQL1)'.

 [RHS] risorsa SQL Server (SQL1) gestione del deadlock. Pulizia del funzionamento corrente e terminazione del processo RHS

00001858.00003154::Data Ora WARN [RHS] Risorsa SQL Server IsAlive ha indicato un errore.

 00001bfc.000041a4::Data Ora INFO [RCM] HandleMonitorReply: FAILURENOTIFICATION for 'SQL Server', gen(0) result 1.

 00001bfc.000041a4::Data e ora INFO [RCM] TransitionToState(SQL Server) Online-->ProcessingFailure.

 00001bfc.000069d8::Data Ora ERR [RCM] rcm::RcmResource::HandleFailure: (SQL Server)

 00001bfc.000069d8::Data Ora INFO [RCM] risorsa SQL Server: numero di errori: 1, restartAction: 2.

 00001bfc.000069d8::Data Ora INFO [RCM] Riavvierà la risorsa in 500 millisecondi.

 00001bfc.000069d8::Data Ora INFO [RCM] TransitionToState(SQL Server) ProcessingFailure-->[Terminating to DelayRestartingResource].

 00001bfc.000069d8::Data Ora INFO [RCM] rcm::RcmGroup::P rocessStateChange: (SQL Server (MSSQLSERVER), Online --> In sospeso)

 00001bfc.000069d8::Data Ora INFO [RCM] TransitionToState(SQL Server Agent) Online-->[Terminating to OnlineCallIssued].

 00001bfc.000087fc::Data Ora INFO [RCM] Riavvio della risorsa 'SQL Server Agent'.

00001858.00008f58::Data Ora ERR [RES] SQL Server <SQL Server>: [sqsrvres] CheckQueryProcessorAlive: sqlexecdirect non riuscito

00001858.00008f58::Data Ora ERR [RES] SQL Server <SQL Server>: [sqsrvres] printODBCError: sqlstate = HYT00; native error = 0; message = .....

00001858.00008f58::Data Ora INFO [RES] SQL Server <SQL Server>: [sqsrvres] OnlineThread: chiesto di terminare in attesa di QP.

00001858.00001924::Data Ora ERR [RHS] RhsCall::D eadlockMonitor: Timeout della chiamata TERMINATERESOURCE per la risorsa 'SQL Server'.

00001858.00001924::Data Ora ERR [RHS] Gestione dei deadlock di gestione di SQL Server. Pulizia del funzionamento corrente e interruzione del processo RHS.

 00001bfc.0000e7dc::Data Ora INFO [RCM] HandleMonitorReply: FAILURENOTIFICATION for 'SQL Server', gen(1) result 4.

 00001bfc.0000e7dc::Data Ora INFO [RCM] rcm::RcmResource::HandleMonitorReply: Conteggio errori consecutivi della risorsa 'SQL Server' 1.

 00001bfc.0000e7dc::Data Ora ERR [RCM] rcm::RcmMonitor::RecoverProcess: Ripristino del processo di monitoraggio 0x1858.

 00001bfc.0000e7dc::Data Ora INFO [RCM] Creato processo monitor 28164 / 0x6e04

 00006e04.0000e8a4::Data Ora INFO [RHS] Inizializzazione.

 00001bfc.0000e7dc::Data Ora INFO [RCM] rcm::RcmResource::ReattachToMonitorProcess: (SQL Server, [Terminating to DelayRestartingResource])

 00001bfc.0000e7dc::Data e ora INFO [RCM] TransitionToState(SQL Server) Initializing -> OpenCallIssued.

 00001bfc.00004878::Data Ora INFO [RCM] TransitionToState(SQL Server) [Terminating to DelayRestartingResource]-->DelayRestartingResource.

 00001bfc.00004878::Data Ora INFO [RCM] Riavvio ritardato di SQL Server e degli eventuali dipendenti in attesa.

 00001bfc.00004878::Data Ora INFO [RCM] TransitionToState(SQL Server) DelayRestartingResource-->OnlineCallIssued.

 00001bfc.0000e7dc::Data Ora INFO [RCM] HandleMonitorReply: ONLINERESOURCE for 'SQL Server', gen(1) result 997.

 00001bfc.0000e7dc::Data Ora INFO [RCM] TransitionToState(SQL Server) OnlineCallIssued-->OnlinePending.

 00006e04.00003478::Data Ora INFO [RHS] Risorsa SQL Server è stato reso online. RHS sta per segnalare la modifica dello stato a RCM

Causa

Quando il Servizio cluster controlla lo stato del servizio SQL Server, il Servizio cluster esegue la query IsAlive. Se si verifica il timeout della query IsAlive, il Servizio cluster ricicla il processo di Rhs.exe che ospita i file .dll delle risorse SQL Server. I file di .dll delle risorse SQL Server avviano un processo di arresto SQL Server. Quando il processo di arresto di SQL Server supera il tempo specificato nella proprietà DeadlockTimeout, il servizio non può essere arrestato e lo stato diventa "Stop Pending". Questo stato del servizio impedisce il riavvio del servizio SQL Server.

Risoluzione

Versione finale di SQL Server 2008

Importante: è necessario installare questa correzione se si esegue la versione finale di SQL Server 2008.

La correzione per questo errore è stata rilasciata per la prima volta nell'aggiornamento cumulativo 7. Per ulteriori informazioni su come ottenere questo pacchetto di aggiornamento cumulativo per SQL Server 2008, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

973601 Aggiornamento cumulativo 7 per SQL Server 2008Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutte le correzioni rapide e di sicurezza incluse nella versione precedente della correzione di SQL Server 2008. Si consiglia di applicare l'ultima versione della correzione che contiene questo aggiornamento rapido (hotfix). Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

956909 Le SQL Server build 2008 rilasciate dopo SQL Server 2008

SQL Server 2008 Service Pack 1

Importante: è necessario installare questa correzione se si esegue SQL Server 2008 Service Pack 1.

La correzione di questo problema è stata rilasciata per la prima volta nell'aggiornamento cumulativo 5 per SQL Server 2008 Service Pack 1. Per ulteriori informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

975977 Pacchetto di aggiornamento cumulativo 5 per SQL Server 2008 Service Pack 1Nota Poiché le build sono cumulative, ogni nuova versione delle correzioni contiene tutte le correzioni rapide e di sicurezza incluse nella versione precedente delle correzioni dell'SQL Server 2008. Microsoft consiglia di applicare l'ultima versione della correzione che contiene questo aggiornamento rapido (hotfix). Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

970365 Le SQL Server build 2008 rilasciate dopo SQL Server rilascio del Service Pack 1 2008
Gli hotfix per Microsoft SQL Server 2008 vengono creati per Service Pack specifici di SQL Server. È necessario applicare un aggiornamento rapido rapido per SQL Server 2008 Service Pack 1 a un'installazione di SQL Server 2008 Service Pack 1. Per impostazione predefinita, qualsiasi hotfix fornito in un service pack di SQL Server è incluso nel service pack di SQL Server successivo.

Stato

Microsoft ha confermato che si tratta di un problema relativo ai prodotti elencati nella sezione "Si applica a".

Riferimenti

Per ulteriori informazioni sulla proprietà PendingTimeout, visitare il seguente sito Web Microsoft Developer Network (MSDN):

https://msdn.microsoft.com/library/aa372194(vs.85).aspx
        
Per ulteriori informazioni sulla proprietà DeadlockTimeout, visitare il seguente sito Web Microsoft Developer Network (MSDN):

https://msdn.microsoft.com/library/bb309217(vs.85).aspx
Per ulteriori informazioni sul modello di servizio incrementale per SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

935897 un modello di manutenzione incrementale è disponibile dal team SQL Server per fornire correzioni rapide per i problemi segnalati

Per ulteriori informazioni sullo schema di denominazione per gli aggiornamenti di SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

822499 Nuovo schema di denominazione per i pacchetti di aggiornamento software Microsoft SQL Server

Per ulteriori informazioni sulla terminologia degli aggiornamenti software, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:

824684 Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft