Symptom
Anta att du har en tillgänglighets grupp (AG) i SQL Server 2016 och 2017. När du bearbetar en Läs fråga på en sekundär replik kan prestandan vara betydligt långsammare än primär repliken på grund av ofta DIRTY_PAGE_TABLE_LOCK vänta.
Orsak
Det här problemet beror på att det är en inblandning mellan Läs-och gör om-tråden och att tabellen är låst.
Lösning
Den här korrigeringen ingår i följande uppdateringar för SQL Server:
Kumulativ uppdatering 8 för SQL Server 2017
Kumulativ uppdatering 1 för SQL Server 2016 Service Pack 2
Kumulativ uppdatering 9 för SQL Server 2016 Service Pack 1
Om SQL Server-versioner
Varje ny version för SQL Server innehåller alla snabb korrigeringar och säkerhets korrigeringar som fanns i den föregående versionen. Vi rekommenderar att du installerar den senaste versionen för din version av SQL Server:
Lösning
För att undvika det här problemet kan duanvända en enda upprepande tråd i stället för en parallell gör om-tråd genom att aktivera spårnings flaggan 3459.
Mer information
När skrivskyddade frågor körs på en läsbar sekundär replik försöker Query threads försöka tillämpa väntande loggnings åtgärder och måste samar beta med för att göra om en arbets tråd med DIRTY_PAGE_TABLE_LOCK väntar, vilket ofta kan genereras och sakta ner både för att göra om samtidig återställning. Prestanda problemet som är kopplat till DIRTY_PAGE_TABLE_LOCK wait behandlas i den kumulativa uppdateringen för SQL Server 2016 SP och SQL Server 2017 som nämns i den här artikeln.
För mer information, se följande blogg på den sekundära replik gruppen gör om modell och prestanda.
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".
Referenser
Lär dig mer om terminologin som används av Microsoft för att beskriva program varu uppdateringar.