Simptomai
Tarkime, kad "SQL Server 2014" arba "2016" analizės tarnybų egzemplioriuje naudojate reliacinių OLAP (ROLAP) saugyklos režimą. Nustatę reikšmę Maxrolaporconditions Išplėstinė ypatybė daugiau nei 256, galite vykdyti MDX užklausas į šią priemonę grupėje. Šiuo atveju gaunate panašus į šį klaidos:
#Error DOM Parser nepavyko įkelti ir išanalizuoti srautą. URL: ' ' priežastis: ' operacija nutraukta: maks-elemento-gylio apribojimas pažeistas. Šaltinis: ' '. Failo padėtis: 0. Linija: 6.
Priežastis
Analizės tarnybos generuoja pseudo-SQL XML dokumentą, kuris yra išanalizuotas naudojant XML stiliaus lapą, kad būtų sugeneruotas galutinis SQL sakinys, nusiųstas į religinę šaltinį. Generuojant pradinį vidinį XML dokumentą arba stulpelio sąlygas kaip įdėtuosius XML elementus, kaip parodyta šiame pavyzdyje:
<OR> <Condition>column1 = value1</Condition> <OR> <Condition>column1 = value2</Condition> <OR> <Condition>column1 = value3</Condition> </OR> </OR></OR>
MSXML DOM objekto, kurį naudoja analizės tarnybos, kad sukurtų XML dokumentą, numatytoji Maxelementdepth ypatybė yra 256 MSXML 6.0. Todėl, kai Maxrolaporsąlygų konfigūracija yra padidinama, sugeneruotas XML dokumentas gali viršyti šį maksimalų gylį.
Sprendimas
Ši problema išspręsta šį kaupiamąjį naujinimą SQL Server:
Kaupiamasis naujinimas 5 SQL serverio 2016 RTM
Kaupiamasis naujinimas 2 SQL serverio 2016 SP1
Kaupiamasis naujinimas 4 SQL serverio 2014 SP2
Kaupiamasis naujinimas 10 SQL serverio 2014 SP1
Apie SQL serverio kaupiamieji naujinimai
Kiekvienas naujas Kaupiamasis naujinimas, skirtas "SQL Server", yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio kaupiamojo naujinimo. Peržiūrėkite naujausius kaupiamuosius SQL serverio naujinimus:
Naujausias Kaupiamasis naujinimas, skirtas "SQL Server 2016"
Naujausias Kaupiamasis naujinimas, skirtas "SQL Server 2014"
Statusą
"Microsoft" patvirtino, kad tai yra "Microsoft" produktų, išvardytų skyriuje "taikoma", problema.
Daugiau informacijos
Šis taisymas pakeis tarpinio XML dokumento sugeneravimą, kad kiekvienas papildomas arba sąlygotbūtų įdėtasis į ankstesnį arba XML elementą. Todėl galite padidinti Maxrolaporconditions už 256. Tačiau vis dar yra praktinių apribojimų, kiek jų reikia naudoti. Didėjant, sugeneruoto SQL sakinio sudėtingumas gali viršyti sąryšinių duomenų bazių serverio pajėgumą, todėl kyla naujų klaidų sąlygų. Toliau pateikiami sąlygų, kurios gali sukelti naujų klaidų, pavyzdžiai:
-
Maksimalaus parametro parametrų skaičiaus viršijimas
-
Maksimalus sąlygų, esančių sąlygoje WHERE , skaičius
-
Klaidos analizuojant SQL užklausos eilutę
-
Maksimalaus SQL užklausos eilutės dydžio viršijimas
Todėl rekomenduojame koreguoti Maxrolaporconditions konfigūracijos reikšmę.
Nuorodos
Sužinokite apie terminologiją "Microsoft" naudoja programinės įrangos naujinimams apibūdinti.