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

Simptomi

Iedomājieties šādu scenāriju:

  • Jums ir ļoti liela FileStream tabula.

  • Jūs izpildāt dzēšanas vaicājumu ar rindām FileStream tabulā, kas izveido dārgu vaicājumu plānu, piemēram, tādu, kas ir filtrēts ar iekšēju savienojumu, uz citu lielu tabulu sistēmā.

  • Vaicājuma optimizētājs izvēlas paralēlu izpildes plānu.

Šajā scenārijānotiks ssertion, un jūs varat saņemt kļūdu ziņojumus, kas līdzinās tālāk norādītajiem SQL Server kļūdu žurnālfailā.

Datetime SPID SpidNumber kļūda: 5553, smagums: 20, rajons: 6.

Datetime SPID SpidNumber SQL Server iekšēja kļūda. FILESTREAM Manager nevar turpināt ar pašreizējo komandu.

Statusa

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

Risinājums

Problēma ir novērsta šādos kumulatīvos SQL Server atjauninājumos:

Par kumulatīvajiem SQL Server atjauninājumiem:

Katrs jaunais kumulatīvais SQL Server atjauninājums ietver visus labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvais atjauninājums. Skatiet jaunākos kumulatīvos atjauninājumus SQL Server:

Risinājums

Laiizvairītos no šīs problēmas,varat izmantot tālāk norādīto metodi.

Pārvietojiet INNER JOIN vaicājumu uz atsevišķu priekšrakstu un saglabājiet rezultātus pagaidu tabulā. Pēc tam palaidiet dzēšanas vaicājumu, kas filtrēts pēc ierakstiem pagaidu tabulā. Bez tam varat palielināt izmaksu slieksni paralēlismam, lai uzspiestu optimizētājs izveidot vaicājuma plānu.

Piemēram:

ATLASIET RefTable. alias #T no DB. dbo. OuterTable INNER JOIN DB. dbo. RefTable ON RefTable. alias = OuterTable. alias

             KUR OuterTable. alias > 30006 un OuterTable. alias < 30010 

DZĒST no DB. dbo. Tabulas KUR aizstājvārds ir (atlasiet * no #T)

Atsauces

Informācija par terminoloģiju , kas Microsoft izmanto, lai aprakstītu programmatūras atjauninājumus.

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.