IBM Support

[Db2] 表の再編成 (REORG TABLE) 実行時に SQL2220W が返ることがある

Question & Answer


Question

空の表に REORG TABLE (表の再編成) を実行した際に、SQL2220W が返されるケースがあります。 原因と対処方法を教えてください。

<エラー・メッセージ>
$ db2 reorg table t1
SQL2220W コンプレッション・ディクショナリーは 1 つ以上のデータ・オブジェクトに対してビルドされませんでした。

Cause

行圧縮が有効な表に対する REORG TABLE コマンドの実行はディクショナリー自動作成 (ADC) のトリガーとなります。しかし、表に行が存在しない空のテーブルの場合、ADC は失敗します。

Db2 は、ADC タスクが失敗することにより CPU 時間が消費されてしまうのを防ぐために ADC を無効にするしきい値を持ちます。
このしきい値により、最初の 6 回の REORG 実行時は SQL2220W は出力されませんが、これが ADC のトリガーとなり、その後の 7 回目の REORG TABLE 実行時は ADC が既に無効になっているため SQL2220W が出力されます。

その際、しきい値を超えたことを示す ADM5593I のメッセージが管理通知ログに出力されますのでご確認ください。

ADM5593I
表 table-name 用の表スペース table-spaceID 内にある、ID objectID を持つ object-type オブジェクトに対して、自動辞書作成 (ADC) 処理が一時的に無効となっています。
インスタンスが再始動すると、ADC 処理は再び有効になります。

Answer

空の表に対して REORG TABLE を実行した上で上記警告メッセージが出力されている場合、期待された挙動であり、対応は必要ありません。

Db2 は内部のレジストリーで閾値を制御しているため、この詳細については公開されておりません。
なお、しきい値のカウンターはデータベース・メモリー上の表制御ブロック (table control block: tcb) に保管されているため、データベースが非活動化されるとリセットされます。


運用上の考慮点

REORG TABLE を RESETDICTIONALY オプションを指定して実行した場合は 1 回目の実行で SQL2220W が返ります。
その際、管理通知ログに ADM5593I メッセージは出力されません。

Db2 V9.5 以降においては ADC が無効になった場合のみ SQL2220W が返されますが、 V9.1 以下ではデータ・コンプレッション・ディクショナリーの構築時に表のすべてのレコードが最小レコード長よりも小さかった場合にも SQL2220W が返されます。
詳細は以下の情報をご確認ください。
データ・コンプレッション・ディクショナリーが自動的に作成される
バージョン 9.1 では、データ・コンプレッション・ディクショナリーを構築するのに、有効なレコード・サイズのすべてのデータ行が使用されます。
データ・コンプレッション・ディクショナリーの構築時に表のすべてのレコードが最小レコード長よりも小さかった場合、SQL2220W エラー・メッセージが返されます。
表に有効な長さのレコードが少なくとも 1 つあれば、データ・コンプレッション・ディクショナリーは構築されます。
しかし、バージョン 9.5 では、どの行がデータ・コンプレッション・ディクショナリーの作成に関わるかを決定するレコード長の基準がありません。
データ・コンプレッション・ディクショナリーの構築中に使用される、標本抽出されるすべてのデータ・レコードの長さが、適用可能最小レコード長よりも小さい場合、SQL2220W エラー・メッセージは生成されません。


関連情報
[DB2 LUW] パスポート・アドバンテージによく寄せられる質問
SQL2220W
[DB2 LUW] DB2 診断ログ (db2diag.log) や管理通知ログの出力先

お問合せ先
技術的な内容に関して、サービス契約のもと IBM サービス・ラインにお問い合わせください。
IBM サービス・ライン

[{"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"Data Movement - Reorg","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.7;9.5;10.1;10.5;11.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
06 November 2018

UID

swg22013724