![[z/OS]](ngzos.gif)
DEFINE BUFFPOOL
主ストレージ内にメッセージを保持するために使用されるバッファー・プールを定義するには、MQSC コマンド DEFINE BUFFPOOL を使用します。
MQSC コマンドの使用
MQSC コマンドの使用方法については、 MQSC コマンドを使用したローカル管理タスクの実行を参照してください。
IBM® i | UNIX および Linux® | Windows | z/OS® |
---|---|---|---|
1 |
z/OS 列のシンボルの説明については、 z/OSでのコマンドの使用を参照してください。
使用上の注意
- キュー・マネージャーが開始したタスク・プロシージャーで、CSQINP1 DD 連結によって識別されるデータ・セット内の DEFINE BUFFPOOL コマンドを指定します。
- バッファー・プール情報を表示するには、DISPLAY USAGE TYPE (PAGESET) コマンドを使用します ( DISPLAY USAGE を参照)。
- ALTER BUFPOOL コマンドを使用して、事前定義バッファー・プールの設定を動的に変更します ( ALTER BUFFPOOL を参照)。
DEFINE BUFFPOOL のパラメーターの説明
同じバッファー・プールに複数の DEFINE BUFFPOOL コマンドを発行すると、最後のコマンドのみが処理されます。- (buf-pool-id)
- バッファー・プール ID。
このパラメーターは 0 から 15 の範囲の整数です。 OPMODE が
OPMODE=(NEWFUNC, 800)
に設定されている場合、このパラメータはゼロから99の範囲の整数になる。 - BUFFERS ( 整数 )
- このパラメーターは必須で、このバッファー・プールで使用する 4096 バイト・バッファーの数です。
- LOCATION または ( または ) LOCBELOW ABOVE
LOCATIONまたはLOCパラメーターは、指定されたバッファー・プールによって使用されるメモリーの場所を指定します。
LOCATIONとLOCは同義語であり、どちらか一方を使用できますが、両方を使用することはできません。
このメモリ・ロケーションは、 ABOVE (64ビット)または BELOW (31ビット)のどちらかのバーとすることができ、 BELOW がデフォルトである。
ABOVE は、 が有効な場合にのみ指定できる。
OPMODE(NEWFUNC, 800)
BELOW は、 の使用に関係なく指定でき、 パラメータを指定しないのと同じ効果がある。OPMODE(NEWFUNC, 800)
LOCATIONバッファー・プールを変更する場合、バッファー数を増やすか、LOCATION値を変更する場合は、使用可能なストレージが十分にあることを確認する必要があります。 バッファー・プールのロケーションの切り替えは、CPU および入出力を集中的に使用するタスクとなる可能性があります。 このタスクは、キュー・マネージャーがあまり使用されていない場合に実行する必要があります。
詳しくは、 アドレス・スペース・ストレージを参照してください。
- PAGECLAS ( 4KB または FIXED4KB )
バッファー・プールのバッファーをバッキングする (補助ストレージに保管する) ために使用する仮想ストレージ・ページのタイプを記述するオプション・パラメーターです。
この属性は、ALTER BUFFPOOL コマンドを使用した結果として後から追加されたバッファーを含め、バッファー・プール内のすべてのバッファーに適用されます。 デフォルト値は 4KB で、プール内のバッファーをバッキングするためにページング可能な 4KB ページが使用されます。
バッファー・プールの LOCATION 属性を BELOW に設定した場合は、4KB だけが有効な値です。 バッファー・プールの LOCATION 属性が ABOVE に設定されている場合は、FIXED4KB を指定することもできます。 これは、バッファー・プールのバッファーをバッキングするために、固定された 4KB ページを使用することを意味します。このページは、永続的に実ストレージに固定され、補助ストレージにページアウトされません。
FIXED4KB を指定できるのは、OPMODE(NEWFUNC, 800) が有効な場合のみです。それに対して、4KB は、OPMODE(NEWFUNC, 800) の設定とは無関係に指定できます。
バッファー・プールの PAGECLAS 属性は、いつでも変更できます。 ただし、変更が実施されるのは、バッファー・プールのロケーションが 2 GB 境界より上から 2 GB 境界より下に切り替わるとき (または、その逆が起きるとき) のみです。 それ以外の場合は、値がキュー・マネージャーのログに格納され、キュー・マネージャーの次回の再始動時に適用されます。
PAGECLAS(FIXED4KB) を指定すると、バッファー・プール全体が、ページが固定された 4KB ページにバッキングされることになるため、LPAR に使用可能な実ストレージが十分にあることを確認してください。 そうしないと、キュー・マネージャーが始動しなかったり、他のアドレス・スペースが影響を受けたりする可能性があります。詳しくは、 アドレス・スペース・ストレージを参照してください。
PAGECLAS 属性の FIXED4KB 値をいつ使用するかについては、 IBM MQ Support Pac MP16: IBM MQ for z/OS -Capacity planning & tuning を参照してください。
- REPLACE/NOREPLACE
- キュー・マネージャーのログに既に含まれている定義を、バッファー・プールのこの定義によってオーバーライドするかどうかを示すオプション属性です。
- REPLACE
- バッファー・プールのこの定義により、キュー・マネージャーのログに格納されている定義 (存在する場合) をオーバーライドします。 キュー・マネージャーのログ内の定義がこの定義と異なる場合、相違点は破棄され、メッセージ CSQP064I が発行されます。
- NOREPLACE
- これはデフォルト値であり、以前のリリースの IBM MQと同じ動作を提供します。 バッファー・プールの定義がキュー・マネージャーのログにある場合、その定義が使用され、この定義は無視されます。
OPMODE=(NEWFUNC,800) から OPMODE=(COMPAT,800) への切り替え
- ID が 15 より大きいバッファー・プールはどれも、中断状態とマークされます。 これは、これらのバッファー・プールは、OPMODE=(NEWFUNC,800) が再度指定されるまで、使用も削除も変更もできないことを意味します。 バッファー・プールに関する情報は、OPMODE=(NEWFUNC,800) が再度指定されるまで、チェックポイント・ログ・レコードに保持されます。
中断されたバッファー・プールを使用するどのページ・セットも、中断されます。 中断されたページ・セットに関する情報も、チェックポイント・レコードに保持されます。
中断されているページ・セット内のオブジェクト定義およびメッセージはどれも使用できません。 中断されたページ・セットを使用するキューまたはトピックを使用しようとすると、MQRC_PAGESET_ERROR メッセージが出されます。
ユーティリティー・プログラム CSQUTIL の FORMAT 関数で TYPE(REPLACE) を指定することにより、中断状態にあるページ・セットを別のバッファー・プールに関連付けることができます。 その後、DEFINE PSID コマンドを発行して、ページ・セットを別のバッファー・プールで再び使い始めることができます。注: 中断状態のページ・セットを含むすべてのリカバリー単位 (未確定の単位を除く) は、ページ・セットが最後に使用されたときにキュー・マネージャーによってバックアウトされます。 未確定のリカバリー単位は、ページ・セットがキュー・マネージャーによって再び使用されるようになると、解決できます。 - ID が 15 以下で LOCATION 属性が ABOVE に設定されているバッファー・プールはどれも、LOCATION 属性が BELOW に切り替わり、PAGECLAS 属性が 4KB に設定されます。