KB3021757 — LABOJUMS: dubulta secības vērtība tiek ģenerēta, palaižot sp_sequence_get_range paralēli funkcijai NEXT VALUE FOR

Attiecas uz
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Pazīmes

Pieņemsim, ka esat definējis secības objektus programmā Microsoft SQL Server 2012 vai SQL Server 2014. Izpildot sp_sequence_get_range sistēmā saglabātās procedūras un funkciju NEXT VALUE FOR paralēli tam pašam secības objektam (piemēram, dažādos vienlaicīgos savienojumos vai vairākpavedienu programmās), tiek ģenerēta dubulta secības vērtība.

Iemesls

Šī problēma rodas sacensību nosacījuma dēļ sp_sequence_get_range sistēmā saglabātajām procedūrām un funkcijai NEXT VALUE, ja tās tiek izpildītas vienā secībā objektā paralēli. Abas ierīces lasa un raksta secību ģeneratora pašreizējā vērtībā. Tomēr starp tiem trūkst pareiza sinhronizācijas mehānisma.

Risinājums

Servisa pakotnes informācija

Lai novērstu šo problēmu, iegūstiet SQL Server 2014 1. servisa pakotni.

Papildinformāciju par SQL Server 2014 1. servisa pakotni (SP1) skatiet par kļūdām, kas ir novērstas SQL Server 2014 1. servisa pakotnē.

Šī problēma pirmo reizi tika novērsta nākamajā SQL Server kumulatīvajā atjauninājumā.

SQL Server 2014 6. kumulatīvais atjauninājums /en-us/help/3031047

SQL Server 2012 SP2 4. kumulatīvais atjauninājums /en-us/help/3007556

Par SQL Server kumulatīvajiem atjauninājumiem

Katrā jaunajā SQL Server kumulatīvajā atjauninājumā ir visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvajā atjauninājumā. Skatiet jaunākos SQL Server kumulatīvos atjauninājumus:

      

Statuss

Microsoft apstiprināja, ka šī ir problēma Microsoft produktos, kas norādīti sadaļā "attiecas uz".