KB3207327 - CORREZIONE: in caso di failover, la nuova replica secondaria smette di accettare i record del log delle transazioni finché l'istanza non viene riavviata in SQL Server

Si applica a
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Sintomi

Si consideri lo scenario seguente:

  • Si usano i gruppi di disponibilità AlwaysOn di Microsoft SQL Server 2012,2014 o 2016.
  • Si verifica un failover e la replica principale diventa la nuova replica secondaria.
  • Una parte dei LSN deve annullare la nuova replica secondaria.
  • Si verifica un deadlock durante l'avanzamento dell'annullamento e la transazione associata al failover viene selezionata come vittima del deadlock da Gestione blocco SQL.

In questo scenario, la nuova replica secondaria smette di accettare i record del log delle transazioni fino al riavvio dell'istanza. Inoltre, nel log degli errori di SQL Server viene registrato un messaggio di errore di timeout di latch simile al seguente ogni pochi minuti:

Nota

Si è verificato un timeout durante l'attesa del latch del buffer: tipo 3, bp 0000003CE3093CC0, pagina 1:0, stat 0x9, ID database: 11, ID unità di allocazione: 6488064, 0x0000001436F2A558 attività : 0, tempo di attesa 300 secondi, contrassegni 0x100000001a, proprietari di attività 0x0000001436F2A558. Continuando ad aspettare.
Uso della versione "dbghelp.dll" "4.0.5"
**Dump thread - spid = 0, EC = 0x0000001038514B90
Dump dello stack inviato a file_path
* *******************************************************************************
* INIZIO DUMP DELLO STACK:
* data timespid spid
* Timeout latch
* *******************************************************************************

      

Risoluzione

Questo problema è stato risolto nel seguente aggiornamento cumulativo per SQL Server:

     Aggiornamento cumulativo 5 per SQL Server 2016 RTM

     Aggiornamento cumulativo 2 per SQL Server 2016 SP1

         Aggiornamento cumulativo 3 per SQL Server 2014 Service Pack 2
     Aggiornamento cumulativo 11 per SQL Server 2014 SP1

Aggiornamento cumulativo 7 per SQL Server 2012 SP3

Informazioni sugli aggiornamenti cumulativi per SQL Server

Informazioni sugli aggiornamenti cumulativi per SQL Server

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli aggiornamenti rapidi e tutte le correzioni per la sicurezza inclusi nell'aggiornamento cumulativo precedente. Scopri gli aggiornamenti cumulativi più recenti per SQL Server:

     Ultimo aggiornamento cumulativo per SQL Server 2016

Ultimo aggiornamento cumulativo per SQL Server 2014

Stato

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

Riferimenti

Informazioni sulla terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.