KB2520808 - PATAISYMAS: nepasiduodančios planuoklės klaida vykdant užklausą, naudojančią TVP „SQL Server“ 2008 arba „SQL Server“ 2008 R2", jei naudojamas SQL profileris arba „SQL Server“ išplėstiniai įvykiai

Taikoma
SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Express SQL Server 2008 Express with Advanced Services SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Express SQL Server 2008 R2 Express with Advanced Services SQL Server 2008 R2 Standard

"„Microsoft“" platina "„Microsoft“ „SQL Server“ R2" pataisas kaip vieną atsisiunčiamą failą. Kadangi pataisos yra kaupiamosios, kiekviename naujame leidime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo įtrauktos į ankstesnį "„SQL Server“ R2" pataisų leidimą.

Požymiai

Apsvarstykite šį scenarijų:

  • Kompiuteryje, kuriame veikia "Microsoft „SQL Server“ 2008" arba "Microsoft „SQL Server“ R2", naudojate lentelės reikšmės parametrą (TVP), kurį sudaro daug eilučių.
  • Serveryje naudojate "SQL Profiler" arba "„SQL Server“ Extended Events".
  • Kartu vykdote užklausą, kuri naudoja TVP.

Tokiu atveju įvyksta nepasiduodančios planuoklės klaida, o užklausos, kurios jau veikia toje pačioje planuoklėje, veikia lėtai. Be to, "„SQL Server“" žurnalo aplanke sugeneruojamas mini iškelties failas.

Priežastis

Ši problema kyla dėl „SQL Server“ duomenų bazės variklio klaidos. Teksto stulpeliai TVP įgyvendinami kaip įterpiamos eilutės arba buferiai, o padidinus eilučių skaičių padidėja buferių skaičius. Tačiau buferių paleidimo procesas užima daug laiko. Todėl paleidimo ir sumažinimo operacijoms sugeneruojama nepasiduodančios planuoklės klaida.

Sprendimas

Norėdami išspręsti šią problemą "„SQL Server“ R2", naudokite vieną iš šių būdų:

  • Įdiekite 7 kaupiamojo naujinimo paketą, skirtą „SQL Server“ R2.
  • Įdiekite šį karštųjų pataisų paketą.

Norėdami išspręsti šią problemą "„SQL Server“ R2" arba "„SQL Server“ 2008", žr. skyrių "Sprendimo būdas".

Kaupiamojo naujinimo informacija

„SQL Server 2008 R2“

                
Šios problemos pataisa pirmą kartą buvo išleista 7 kaupiamajame naujinime. Norėdami gauti daugiau informacijos apie tai, kaip gauti šį kaupiamųjų naujinimų paketą, skirtą „SQL Server“ R2, spustelėkite toliau nurodytą straipsnio numerį ir peržiūrėkite "Microsoft" žinių bazės straipsnį:

2507770 7 kaupiamasis naujinimo paketas, skirtas „SQL Server“ 2008 R2" Pastaba Komponavimo versijos yra kaupiamosios, todėl kiekviename naujame pataisos leidime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo įtrauktos į ankstesnį „SQL Server“ 2008 R2 pataisos leidimą. Rekomenduojame taikyti naujausią pataisos leidimą, kuriame yra ši karštoji pataisa. Norėdami gauti papildomos informacijos, spustelėkite toliau nurodytą straipsnio numerį ir peržiūrėkite "Microsoft" žinių bazės straipsnį:

981356 „SQL Server“ 2008 R2 komponavimo versijos, išleistos po 2008 R2 „SQL Server“ išleidimo

Karštųjų pataisų informacija

            
 Palaikomas karštąsias pataisas galima gauti iš "„Microsoft“". Tačiau ši karštoji pataisa skirta ištaisyti tik šiame straipsnyje aprašytą problemą. Taikykite šią karštąją pataisą tik toms sistemoms, kurios susiduria su šiame straipsnyje aprašyta problema. Ši karštoji pataisa gali būti papildomai patikrinta. Todėl, jei jūsų ši problema stipriai nepaveikė, rekomenduojame palaukti kito programinės įrangos naujinimo, kuriame yra ši karštoji pataisa.

Jei karštąją pataisą galima atsisiųsti, šio žinių bazės straipsnio viršuje yra skyrius "Karštųjų pataisų atsisiuntimas". Jei šis skyrius nerodomas, susisiekite su "Microsoft" klientų aptarnavimo ir palaikymo tarnyba, kad gautumėte karštąją pataisą.

Pastaba. Kilus papildomų problemų arba prireikus trikčių diagnostikos, gali tekti sukurti atskirą paslaugos užklausą. Įprastos palaikymo išlaidos bus taikomos papildomiems palaikymo klausimams ir problemoms, kurios neatitinka šios konkrečios karštosios pataisos reikalavimų. Norėdami gauti visą "„Microsoft“" klientų aptarnavimo ir palaikymo tarnybos telefonų numerių sąrašą arba sukurti atskirą aptarnavimo užklausą, apsilankykite šioje "„Microsoft“" svetainėje:

/contactus/?ws=support Pastaba. Formoje "Galima atsisiųsti karštąją pataisą" rodomos kalbos, kurioms galima naudoti karštąsias pataisas. Jei nematote savo kalbos, vadinasi, nėra tos kalbos karštųjų pataisų.

Būtinosios sąlygos

Norėdami taikyti šią karštąją pataisą, turite turėti įdiegtą "Microsoft „SQL Server“ R2".

Reikia paleisti iš naujo

Pritaikę šią karštąją pataisą, nereikia iš naujo paleisti kompiuterio.

Karštųjų pataisų pakeitimo informacija

Ši karštoji pataisa nepakeičia anksčiau išleistos karštosios pataisos.

Failo informacija

Versija turi failo atributus (ar vėlesnio failo atributus), nurodytus toliau pateiktoje lentelėje. Šių failų datos ir laikai nurodyti pasauliniu koordinuotuoju laiku (UTC). Peržiūrint failo informaciją, jis konvertuojamas į vietinį laiką. Norėdami sužinoti skirtumą tarp UTC ir vietos laiko, naudokite valdymo skydo elemento Data ir laikas skirtuką Laiko juosta.

Visoms palaikomoms "„SQL Server“ 2008 R2" x86 versijoms

Failo vardas Failo versija Failo dydis Data Laikas Platforma
Sqlservr.exe 2009.100.1769.0 42,919,776 2011-Kov-22 19:37 x86

Visoms palaikomoms x64 "„SQL Server“ 2008 R2" versijoms

Failo vardas Failo versija Failo dydis Data Laikas Platforma
Sqlservr.exe 2009.100.1769.0 61,974,880 2011-Kov-22 18:46 x64

Visoms palaikomoms IA-64 versijoms „SQL Server“ 2008 R2

Failo vardas Failo versija Failo dydis Data Laikas Platforma
Sqlservr.exe 2009.100.1769.0 121,813,856 2011-Kov-22 18:14 IA-64

              

              

Sprendimo būdas

Norėdami išspręsti šią problemą, naudokite vieną iš šių būdų:

  • Nenaudokite SQL Profiler arba „SQL Server“ Extended Events.
  • Spustelėkite, kad išvalytumėte žymės langelius RPC:Pradžia ir RPC:Baigta sekimo apibrėžime.

Būsena

„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.

Daugiau informacijos

Norėdami gauti daugiau informacijos apie TVP, apsilankykite šioje MSDN svetainėje:

Bendra informacija apie TVP Norėdami gauti daugiau informacijos apie "SQL Profiler", apsilankykite šioje MSDN svetainėje:

Bendra informacija apie "SQL Profiler"