Symptomen
Neem het volgende scenario:
-
U voert een procedure uit in Microsoft SQL Server 2014 of SQL Server 2012.
-
De procedure voor het uitvoeren van een query bevat de volgende voorwaarden:
-
De tabel wordt samengevoegd met een tabel die zeer vaak wordt bijgewerkt.
-
De WHERE-component bevat parameters.
-
De optie Option (RECOMPILE) wordt gebruikt.
-
-
Deze procedure wordt uitgevoerd op meerdere gelijktijdige verbindingen met verschillende sets parameterwaarden.
-
De server bevindt zich onder een zware belasting waardoor elk van deze procedures langer tijd in beslag nemen dan normaal.
In dit scenario kan het zijn dat u onjuiste resultaten krijgt van de procedure die op uw verbinding wordt uitgevoerd als aan de volgende aanvullende voorwaarden wordt voldaan tijdens het tijdsinterval tussen het einde van de compilatie van de query en het starten van de uitvoering van de query op de verbinding:
-
Voorwaarde 1: met een andere gelijktijdige verbinding wordt de gekoppelde tabel bijgewerkt met een groot voldoende geheugen om een nieuwe hercompilatie van de query te activeren voor de verbinding.
-
Voorwaarde 2: de query is opnieuw gecompileerd vanaf een andere verbinding en vervolgens in de cache gezet.
Belangrijk Dit tijds instellings probleem is extreem.
Oorzaak
Dit probleem treedt op omdat de parameterwaarden voor de query worden gewijzigd in onjuiste waarden nadat u de query hebt uitgevoerd voor de verbinding. Dit gebeurt vanwege een extreem zeldzame tijdsinstelling die bestaat tussen gelijktijdige compilaties.
Oplossing
Het probleem is voor het eerst opgelost in de volgende cumulatieve update van SQL Server.
Cumulatieve update 4 voor SQL Server 2014 /en-us/help/2999197
Cumulatieve update 2 voor SQL Server 2012 SP2 /en-us/help/2983175
Cumulatieve update 11 voor SQL Server 2012 SP1 /en-us/help/2975396
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.