Simptome
Luați în considerare următorul scenariu:
- Rulați un ALTER INDEX ... Interogare ONLINE în Microsoft SQL Server 2012 sau SQL Server 2014.
- Această interogare este abandonată din cauza unei blocări sau a unei acțiuni inițiate de utilizator, cum ar fi rularea unei comenzi de terminare sau anularea interogării.
În acest scenariu, toate operațiunile DML care trebuie să utilizeze metadate de index fie sunt blocate, fie durează mult timp pentru a fi finalizate.
În plus, este posibil să apară următoarele simptome:
- Valori ridicate pentru tipul PWAIT_MD_RELATION_CACHE sau MD_LAZYCACHE_RWLOCK așteptare atunci când interogați sys.dm_os_wait_stats și sys.dm_exec_requests vizualizările de gestionare dinamică (DMV)
- Valori ridicate pentru tipul SOS_RW așteptare atunci când interogați sys.dm_os_spinlock_stats DMV
Această problemă este observată de obicei ca un convoi de blocare care apare atunci când fiecare interogare DML nouă șterge încet obiectele de sincronizare. Din cauza naturii de așteptare a obiectelor de sincronizare, utilizarea procesorului este de obicei limitată.
Rezolvare
Informații despre actualizarea cumulativă
Problema a fost remediată pentru prima dată în următoarea actualizare cumulativă a SQL Server.
Actualizarea cumulativă 1 pentru SQL Server 2014 /en-us/help/2931693
Actualizarea cumulativă 9 pentru SQL Server 2012 SP1 /en-us/help/2931078
Despre actualizările cumulative pentru SQL Server
Fiecare actualizare cumulativă nouă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse cu actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
- Cea mai recentă actualizare cumulativă pentru SQL Server 2014
- Cea mai recentă actualizare cumulativă pentru SQL Server 2012 SP1
Informații despre remedierea rapidă
O remediere rapidă acceptată este disponibilă de la Microsoft. Cu toate acestea, această remediere rapidă este menită să corecteze doar problema descrisă în acest articol. Aplicați această remediere rapidă doar sistemelor care întâmpină această problemă.
Dacă remedierea rapidă este disponibilă pentru descărcare, există o secțiune "Descărcare remediere rapidă disponibilă" în partea de sus a acestui articol din Baza de cunoștințe. Dacă această secțiune nu apare, remiteți o solicitare la Asistență pentru clienți Microsoft pentru a obține remedierea rapidă.
Notă: dacă apar probleme suplimentare sau dacă este necesară vreo depanare, poate fi necesar să creați o solicitare de serviciu separată. Costurile uzuale de suport se vor aplica pentru întrebări suplimentare de suport și pentru probleme ce nu fac obiectul acestei remedieri rapide specifice. Pentru o listă completă a numerelor de telefon pentru asistență și asistență clienți Microsoft sau pentru a crea o solicitare separată de servicii, vizitați următorul site web Microsoft:
/contactus/?ws=support Notă Formularul "Descărcare remediere rapidă disponibilă" afișează limbile pentru care este disponibilă remedierea rapidă. Dacă nu vedeți limba, motivul este faptul că nu este disponibilă o remediere rapidă pentru acea limbă.
Important După ce aplicați această remediere rapidă, ALTER INDEX ... Interogarea ONLINE poate fi abandonată fără a diminua performanța SQL Server.
Soluție
Pentru a rezolva această problemă, goliți intrarea de metadate pentru a împiedica blocarea convoiului și ciclurile potențiale de recompilare care scad performanța interogării. Pentru a face acest lucru, utilizați una dintre metodele următoare pentru a ajuta la golirea intrării de metadate:
- Reporniți instanța SQL Server 2012 sau SQL Server 2014.
- Puneți baza de date problematică în stare offline și apoi puneți-o online din nou.
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate în secțiunea „Se aplică la”.