KB3208179-FIX: MaxRolapOrConditions の値が SQL Server Analysis Services で256よりも大きい場合、MDX クエリでエラーが返される

現象

SQL Server 2014 または 2016 Analysis Services のインスタンスのメジャーグループでは、リレーショナル OLAP (ROLAP) ストレージモードを使用することを前提としています。 MaxRolapOrConditions advanced プロパティの値を256以上に設定した後で、そのメジャーグループに対して MDX クエリを実行します。 この場合、次のようなエラーメッセージが表示されます。

#Error、DOM パーサーはストリームの読み込みと解析に失敗しました。 URL: ' ' 理由: ' 操作は中止されました。最大要素深度の制約違反です。 ' ソース: ' '。 ファイルの位置: 0。 Line: 6

原因

Analysis Services は擬似 SQL XML ドキュメントを生成し、それを XML スタイルシートを通じて解析し、リレーショナルソースに送信される最終 SQL ステートメントを生成します。 最初の内部 XML ドキュメントを生成する場合は、次の例のように、列の条件が入れ子になった XML 要素として生成されます。

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

Analysis Services で XML ドキュメントを作成するために使用される MSXML DOM オブジェクトの既定の Maxelementdepth プロパティは、msxml 6.0 の256です。そのため、 MaxROLAPOrConditions構成が増加すると、生成された XML ドキュメントはこの最大の深さを超えることがあります。

解決方法

この問題は、SQL Server の次の累積的な更新プログラムで修正されています。

    SQL Server 2016 RTM の累積更新プログラム5

    SQL Server 2016 SP1 の累積更新プログラム2 

SQL Server 2014 SP2 の累積更新プログラム4

SQL Server 2014 SP1 の累積更新プログラム10

SQL Server の累積更新プログラムについて

SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。

SQL Server 2016 の最新の累積的な更新プログラム

SQL Server 2014 の最新の累積的な更新プログラム

状態

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

詳細情報

この修正プログラムでは、中間 XML ドキュメントが生成される方法が変更されるため、追加または条件が先行または XML 要素で入れ子になっていることはありません。 そのため、256を超えてMaxROLAPOrConditionsを増やすことができます。 ただし、使用できる OR 条件の数については実用的な制限があります。OR 条件の数が増えるほど、生成される SQL ステートメントの複雑さはリレーショナルデータベースサーバーの容量を超えてしまい、新しいエラー条件が発生する可能性があります。次に、新しいエラーの原因となる可能性のある条件の例を示します。

  • 1つのステートメントのパラメーターの最大数を超えた場合

  • Where句の条件の最大数を超える

  • SQL クエリ文字列の解析でのエラー

  • SQL クエリ文字列の最大サイズを超えている

そのため、 MaxROLAPOrConditions 構成値の調整は慎重に行うことをお勧めします。

参照情報

Microsoft でソフトウェアの更新について説明する 用語 について説明します。

ヘルプを表示

スキルを磨く
トレーニングの探索
新機能を最初に入手
Microsoft Insider に参加する

この情報は役に立ちましたか?

フィードバックをお送りいただきありがとうございます!

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×