Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Sintomi

Quando si eseguono le operazioni DDL, ad esempio crea indice o tronca tabella in SQL Server 2016, le operazioni potrebbero essere bloccate se è in esecuzione un'altra transazione DDL nello stesso database.

Risoluzione

Il problema è stato risolto per la prima volta nel seguente aggiornamento cumulativo di SQL Server:

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. È consigliabile scaricare e installare gli aggiornamenti cumulativi più recenti per SQL Server:

Ulteriori informazioni

Quando un DDL crea o Elimina una tabella o un indice, deve inserire o eliminare l'ID del rowset della tabella o dell'indice da sysrowsets, per cui deve contenere un blocco X di livello di riga nella voce. Quando l'operazione viene eseguita all'interno di una transazione, il blocco X verrà mantenuto per la durata della transazione. Quando Tuple Mover individua i buffer di eliminazione svuotabili, è necessario scorrere sysrowsets per individuare le tabelle o gli indici esistenti. Per leggere ogni riga da sysrowsets deve contenere un blocco di livello di riga sulla voce che sta leggendo. Il processo di individuazione si arresta quando viene individuato il primo rowset su cui può eseguire il lavoro. A questo punto, la tupla Mover eseguirà il lavoro effettivo di svuotare il buffer di eliminazione, ma per assicurarsi che il rowset rilevato sia ancora valido, il blocco verrà bloccato in tutti i rowset valutati durante il processo di individuazione fino a quando non termina il lavoro.Sysrowsets viene ordinato dall'ID rowset, quindi può succedere che Tuple Mover abbia analizzato più set di righe esistenti in cui non ha alcuna azione da eseguire, ma continuerà a contenere il blocco Sch-S e arriverà a una voce di sysrowsets per cui non può acquisire il blocco del livello di riga, perché attualmente viene modificato da una transazione a esecuzione prolungata che contiene un blocco X. A questo punto, DDLs che coinvolgono la modifica dell'ID rowset sono bloccati dietro i blocchi SCH-S di Tuple Mover.

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Riferimenti

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

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×