KB2998301 – KORJAUS: Virhe 8654 suoritettaessa "INSERT INTO ... SELECT" taulukossa, jossa on klusteroitu sarakesäilön indeksi SQL Server 2014:ssä

Käytetään kohteeseen
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Ongelman ilmenemistapa

Oletetaan, että sinulla on Microsoft SQL Server 2014:ssä taulukko, jossa on klusteroitu pylvässäilöindeksi. Kun yrität ladata tietoja taulukkoon käyttämällä INSERT INTO ... SELECT-lauseke, näyttöön saattaa tulla seuraava virhesanoma:

Huomautus

Virhe: 8645, vakavuus: 17, osavaltio: 1, rivi: 1
Aikakatkaisu tapahtui, kun odotettiin, että muistiresurssit suorittaisivat kyselyn resurssivarannossa "default" (2). Suorita kysely uudelleen.

Huomautus: Kun muisti ei riitä joukkolisäämistä varten, SQL Server yrittää tehdä muuta kuin joukkolisäystä tämän korjauksen avulla. Tämä vaatii yleensä huomattavasti vähemmän muistia. Kysely epäonnistuu edelleen, jos muisti ei riitä joukkolisäämiseen.

Ratkaisu

Korjaus sisältää uuden seurantamerkinnän 9348, jonka avulla voidaan päättää kyselyn optimoijan kardinaliteettiestimaateille, aloitetaanko joukkolisääminen vai ei. Jos lisättävien rivien arvioitu määrä on alle 1 02400, SQL Server ei yritä tehdä joukkolisäämistä. Jos arvioidaan olevan yli 102400, joukkolisäys aloitetaan.
Ongelma korjattiin ensimmäisen kerran seuraavassa SQL Server kumulatiivisessa päivityksessä.

SQL Server 2014:n kumulatiivinen päivitys 4 /en-us/help/2999197

Tietoja SQL Serverin kumulatiivisista päivityksistä

Jokainen uusi SQL Server -kumulatiivinen päivitys sisältää kaikki edelliseen kumulatiiviseen päivitykseen sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Tutustu SQL Serverin uusimpiin kumulatiivisiin päivityksiin:

      

Tila

Microsoft on vahvistanut tämän olevan ongelma niissä Microsoftin tuotteissa, jotka ovat listattuna Koskee seuraavia tuotteita -osiossa.