KB3074425 — LABOJUMS: CMEMTHREAD gaida rodas, ja izpildāt daudzus ekspromta vaicājumus programmā SQL Server 2012 vai SQL Server 2014

Attiecas uz
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Express 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 jums ir daudz statistikas un tabulu un tabulās ir daudz kolonnu Microsoft SQL Server 2012 vai SQL Server 2014 datu bāzē. Vienlaikus izpildot daudzus ekspromta vaicājumus, lai izgūtu datus no šīm tabulām, izpildes laikā var rasties CMEMTHREAD gaidīšana.

Risinājums

Kumulatīvā atjauninājuma informācija

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

Ieteikums: instalējiet jaunāko kumulatīvo atjauninājumu serverim SQL Server

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ā. Ieteicams lejupielādēt un instalēt jaunākos kumulatīvos SQL Server atjauninājumus:

      

Papildinformācija

Kad kompilējat vai pārkompilējat vaicājumu programmā SQL Server 2012, programmai ir jāiegūst ievade no statistikas histogrammas. Mums ir jāveic sistēmas tabulas skenēšana un pēc tam jāielādē konkrētā tabulu histogramma, kas ir iesaistītas atmiņā vai kešatmiņā. Šīs sistēmas tabulas ievadnes (statistikai) tiek glabātas sistēmas tabulas kešatmiņā (CACHESTORE_SYSTEMROWSET). Atmiņas objekts, kas tiek izmantots, lai izveidotu šos ierakstus kešatmiņā, nav nodalīts un ir globāls.

Tāpēc, ja šīs operācijas laikā jums ir vienlaicīgi veikta atmiņas piešķiršana, jūs saskarsieties ar CMEMTHREAD gaida šajā atmiņas objektā. Tas parasti notiek, ja iesniedzat daudz vaicājumu, kurus nepieciešams apkopot vai pārkompilēt.

Šis labojumfails maina globālās atmiņas objektu, lai tas tiktu sadalīts tā, lai vienlaicīgi atmiņas piešķiršanai, kas izmanto sistēmas tabulas kešatmiņu, nerastos strīdi un CMEMTHREAD gaidītu.

Papildinformāciju par līdzīgu problēmu skatiet KB 3026082: LABOJUMS: SOS_CACHESTORE spinlock strīds sistēmas tabulas rindu kešatmiņā izraisa lielu centrālā procesora lietojumu SQL Server 2012 vai 2014.

Statuss

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