Symptomen
Stel dat u reeksobjecten hebt gedefinieerd in Microsoft SQL Server 2012 of SQL Server 2014. Wanneer u sp_sequence_get_range in het systeem opgeslagen procedures en de functie Volgende waarde voor parallel uitvoert op hetzelfde reeksobject (bijvoorbeeld in verschillende gelijktijdige verbindingen of in toepassingen met meerdere threads), wordt een dubbele reekswaarde gegenereerd.
Oorzaak
Dit probleem treedt op vanwege een racevoorwaarde voor sp_sequence_get_range in het systeem opgeslagen procedures en de functie NEXT VALUE FOR wanneer deze parallel worden uitgevoerd in hetzelfde sequentieobject. Beiden lezen en schrijven naar de huidige waarde van de sequentiegenerator. Er is echter een gebrek aan een correct synchronisatiemechanisme tussen hen.
Oplossing
Servicepack informatie
Om dit probleem op te lossen, downloadt u Service Pack 1 voor SQL Server 2014.
Voor meer informatie over SQL Server 2014 Service Pack 1 (SP1) raadpleegt u de fouten die zijn verholpen in SQL Server 2014 Service Pack 1.
Dit probleem werd voor het eerst opgelost in de volgende cumulatieve update van SQL Server.
Cumulatieve update 6 voor SQL Server 2014 /nl-nl/help/3031047
Cumulatieve update 4 voor SQL Server 2012 SP2 /nl-nl/help/3007556
Informatie over cumulatieve updates voor SQL Server
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingspatches die deel uitmaakten van de vorige cumulatieve update. Bekijk de meest recente cumulatieve updates voor SQL Server:
- Meest recente cumulatieve update voor SQL Server 2014
- Laatste cumulatieve update voor SQL Server 2012 SP2
Status
Microsoft heeft bevestigd dat dit een probleem is bij de Microsoft-producten die worden vermeld in het gedeelte 'Van toepassing op'.