Microsoft は、Microsoft SQL Server 2012 の修正プログラムを1つのダウンロード可能ファイルに配布します。 修正プログラムは累積的であるため、新しいリリースごとに、以前の SQL Server 2012 更新プログラムのリリースに含まれていたすべての修正プログラムとセキュリティ更新プログラムが含まれています。
現象
次のような状況で問題が発生します。
-
多くの Cpu を搭載したサーバーに Microsoft SQL Server 2012 をインストールします。 たとえば、サーバー上の CPU には64または128コアがあり、NUMA 構成が含まれています。
-
サーバーに大量のメモリがあります。 たとえば、サーバーには256ギガバイト (GB) または 1 tb のメモリがあります。
-
Microsoft SQL Server 2012 でクエリを実行します。 クエリ実行プランには、複数の行に適用される並べ替え演算子が含まれています。
このシナリオでは、次のようなエラーメッセージが SQL Server のエラーログファイルに記録されます。
プロセス<ブロックリスト>が、スケジューラ<IDに対しては生成されないように見え>
原因
この問題が発生するのは、並べ替え演算子が、バッファープールから次の使用可能なメモリを検索するために、内部の SQL Server のメモリ割り当ての一覧内で多くのバケットを走査しているためです。サーバーに大きなメモリがある場合は、バッファープール内のメモリ割り当ての内部の SQL Server の一覧も大きくなります。 そのため、並べ替え演算子は、内部の SQL Server のメモリ割り当てリスト内の多くのバケットを走査して、バッファープールから次の使用可能なメモリを検索します。 この動作により、スケジューラで十分な処理が行われることはありません。 そのため、"生成不能なスケジューラ" エラーが頻繁に報告されます。
解決方法
累積的な更新プログラムの情報
SQL Server 2012 Service Pack 1 の累積的な更新プログラムパッケージ1
この問題の修正プログラムは、累積的な更新プログラム1で最初にリリースされました。SQL Server 2012 Service Pack 1 用の累積的な更新プログラムパッケージの入手方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
2765331 SQL Server 2012 Service Pack 1 の累積的な更新プログラムパッケージ1注: ビルドは累積的であるため、それぞれの新しい修正プログラムには、以前の SQL Server 2012 fix release に含まれていたすべての修正プログラムとセキュリティ修正プログラムが含まれています。 この修正プログラムを含む最新の修正プログラムを適用することを検討することをお勧めします。 詳細については、次のマイクロソフト サポート技術情報番号をクリックしてください。
2772858 SQL Server 2012 Service Pack 1 がリリースされた後にリリースされた SQL Server 2012 ビルド
SQL Server 2012
この問題の修正プログラムは、累積的な更新プログラム4で最初にリリースされました。SQL Server 2012 用の累積更新プログラムパッケージの入手方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
2758687 SQL Server 2012 の累積更新プログラムパッケージ4注: ビルドは累積的であるため、それぞれの新しい修正プログラムには、以前の SQL Server 2012 fix release に含まれていたすべての修正プログラムとセキュリティ修正プログラムが含まれています。 この修正プログラムを含む最新の修正プログラムを適用することを検討することをお勧めします。 詳細については、次のマイクロソフト サポート技術情報番号をクリックしてください。
2692828 SQL Server 2012 がリリースされた後にリリースされた SQL Server 2012 ビルド
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。