KB3208179-FIX: MDX-päring annab tulemiks tõrked, kui MaxRolapOrConditions väärtus on suurem kui 256 SQL Serveri analüüsiteenuste korral

Sümptomid

Oletagem, et kasutate SQL Server 2014 või 2016 analüüsiteenuste eksemplaris Exchange ' i (ROLAP) režiimi mõõtühikut. Kui olete atribuudi MaxRolapOrConditions väärtuseks määranud rohkem kui 256, saate MDX-päringud selle mõõtude rühmas käivitada. Sellisel juhul kuvatakse tõrketeated, mis näeb välja järgmine:

#Error DOM parser ei saanud voogu laadida ja sõeluda. URL: "Põhjus:" toiming katkestati: Max-element-sügavuse piirang on rikutud. " Allikas: ' '. Pilt asukoht: 0. Rida: 6.

Põhjus

Analüüsiteenuste genereerib pseudo-SQL-i XML-dokumendi, mis seejärel sõelutakse läbi XML-laadilehe, et luua viimase SQL-lause, mis saadetakse suhtelise allika juurde. Algse sisemise XML-dokumendi loomisel või veeru tingimused luuakse pesastatud XML-elementidena nagu järgmises näites:

<OR> <Condition>column1 = value1</Condition>  <OR>   <Condition>column1 = value2</Condition>    <OR>     <Condition>column1 = value3</Condition>    </OR>  </OR></OR> 

MaxElementDepth , mida analüüsiteenuste kasutab XML-dokumendi koostamiseks, on 256 MSXML 6.0. Seega, kui MaxROLAPOrConditions konfigureerimine on suurenenud, võib loodud XML-dokument ületada selle maksimaalse sügavuse.

Lahendus

See probleem on lahendatud järgmises SQL serveri koondvärskenduses:

    Kumulatiivne Update 5 SQL Server 2016 RTM

    Kumulatiivne Update 2 SQL Server 2016 SP1 jaoks 

Kumulatiivne värskendus 4 SQL Server 2014 SP2 jaoks

Kumulatiivne Update 10 SQL Server 2014 SP1 jaoks

SQL serveri kumulatiivsed värskendused

Iga uus koondvärskenduses SQL Server sisaldab kõiki käigultparandused ja kõik turvaparandusi, mis kuulusid eelmise koondvärskenduse. Vaadake SQL serveri kumulatiivseid värskendusi.

Uusim SQL Server 2016 koondvärskenduses

Uusim SQL Server 2014 koondvärskenduses

Olek

Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.

Lisateave

See parandus muudab vahepealse XML-dokumendi loomise viisi, nii et iga täiendav või tingimus poleks varem või XML-elemendis pesastatud. Seetõttu võite suurendada MaxROLAPOrConditions üle 256. Siiski on siiski praktilised piirangud, mida saab kasutada. Kui arv või tingimused on tõusnud, võib genereeritud SQL-lause keerukus olla suurem kui seostatud andmebaasiserveri maht, mis põhjustab uusi tõrke tingimusi. Järgnevalt on toodud näited tingimustest, mis võivad põhjustada uusi tõrkeid.

  • Maksimaalse arvu parameetrite ületamine lauses

  • WHERE -klausli tingimuste maksimaalse arvu ületamine

  • Tõrked SQL-päringu stringi sõelumisel

  • SQL-päringu stringi maksimaalse mahu ületamine

Seetõttu soovitame MaxROLAPOrConditions kohandusi muuta ettevaatlikult.

Viited

Siit saate teada, Kuidas Microsoft kasutab tarkvaravärskenduste kirjeldamiseks.

Kas vajate veel abi?

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liitu Microsofti Insideri programmis osalejad

Kas sellest teabest oli abi?

Kui rahul te tõlkekvaliteediga olete?

Mis mõjutas teie kasutuskogemust?

Kas soovite jagada veel tagasisidet? (Valikuline)

Täname tagasiside eest!

×