Simptomi
Pretpostavimo da koristite funkciju AlwaysOn Availability Groups u sistemu Microsoft SQL Server 2012, 2014 ili 2016. Svaki put kada izvršite upit u sekundarnoj bazi podataka, upit se ponovo preimenuje. Do ovog problema dolazi zato što se statistika ne širi ispravno sa primarnog servera na sekundarni server. Ako pokrenete praćenje profajlera, pronaći ćete nešto slično sa sledećim o StatMan-u što znači da SQL server izvršava upit statistike:SELECT StatMan([SC0], [SB0000]) FROM (SELECT TOP 100 PERCENT [SC0], step_direction([SC0]) over (order by NULL) AS [SB0000] FROM (SELECT [xxx] AS [SC0] FROM [dbo].[xxx] TABLESAMPLE SYSTEM (7.033584e-001 PERCENT) WITH (READUNCOMMITTED) ) AS _MS_UPDSTATS_TBL_HELPER ORDER BY [SC0], [SB0000] ) AS _MS_UPDSTATS_TBL OPTION (MAXDOP 1) Napomena Ako onemogućite opciju "Statistika automatskog ažuriranja" ili omogućite opciju "Asinhrono ažuriranje statistike automatskog ažuriranja", do ovog problema ne dolazi.
Rešenje
Problem je prvi put otklonjen u sledećoj kumulativnoj ispravki sql servera:
Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su bile uključene u prethodnu kumulativnu ispravku. Preporučujemo da preuzmete i instalirate najnovije kumulativne ispravke za SQL Server:
Reference
Saznajte više o terminologiji koju Microsoft koristi za opisivanje softverskih ispravki.