Симптоми
Имайте предвид сценария, описан по-долу:
Изпълнявате процедура в Microsoft SQL Server 2014 или SQL Server 2012.
Процедурата съдържа заявката има следните условия:
- Тя съединява таблица, която се актуализира много често.
- Има клауза WHERE, която съдържа параметри.
- Използва Option(Recompile).
Тази процедура се изпълнява за множество едновременни връзки, които имат различни набори от стойности на параметри.
Вашият сървър е подложен на голямо натоварване, което кара всяка от тези процедури да отнема повече време от обичайното.
В този случай може да получите неправилни резултати от процедурата, която се изпълнява за вашата връзка, ако следните допълнителни условия са изпълнени по време на интервала от време, който настъпва между края на съставянето на заявката и началото на изпълнението на заявката във вашата връзка:
- Условие 1: Друга едновременна връзка прави актуализации на присъединената таблица, които са достатъчно големи, за да задействат друго повторно съставяне на заявката за вашата връзка.
- Условие 2: Същата заявка е компилирана отново от друга връзка и след това е поставена в кеша.
Важно: Този проблем с времето е изключително рядък.
Причина
Този проблем възниква, защото стойностите на параметрите за заявката се променят в неправилни, след като изпълните заявката за вашата връзка. Това се дължи на изключително рядък проблем с времето, който съществува между едновременните компилации.
Решение
Проблемът е коригиран за първи път в следващата кумулативна актуализация на SQL Server.
Сборна актуализация 4 за SQL Server 2014 г. /en-us/help/2999197
Сборна актуализация 2 за SQL Server 2012 SP2 /en-us/help/2983175
Сборна актуализация 11 за SQL Server 2012 SP1 /en-us/help/2975396
За кумулативните актуализации за SQL Server
Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:
- Последна сборна актуализация за SQL Server 2014
- Последна кумулативна актуализация за SQL Server 2012 SP2
- Последна сборна актуализация за SQL Server 2012 SP1
Състояние
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.