max_log - トランザクション当たりの最大ログ構成パラメーター
このパラメーターは、トランザクションが消費できる 1 次ログ・スペースのパーセントに制限を設けるかどうか、およびその制限が何パーセントであるかを指定します。
- 構成タイプ
- データベース
- パラメーター・タイプ
- オンラインで構成可能
- Db2® pureScale® 環境のメンバーにより構成可能
- 伝搬クラス
- 即時
- デフォルト [範囲]
- 0 [0 - 100]
- 単位
- パーセンテージ
この値が 0 ではない場合、このパラメーターは、1 つのトランザクションで消費できる 1 次ログ・スペースのパーセントを示します。
値が 0 に設定される場合、トランザクションで消費できる 1 次ログ・スペースの合計のパーセンテージに制限はありません。
アプリケーションが max_log 構成に違反する場合、そのアプリケーションは強制的にデータベースから切断され、トランザクションはロールバックされます。
Db2_FORCE_APP_ON_MAX_LOG レジストリー変数を FALSE
に設定することで、
この動作をオーバーライドできます。 これにより、max_log 構成に違反しているトランザクションは失敗します。ただし、アプリケーションは、作業単位内の前のステートメントで完了していた分の作業をコミットするか、完了した作業をロールバックして、作業単位を取り消すことができます。
このパラメーター、および num_log_span 構成パラメーターは、無限のアクティブ・ログ・スペースが使用可能なときに役立つことがあります。 無限ロギングがオン (つまり logsecond が -1 に設定されている) の場合、トランザクションはログ・ファイル数の上限 (logprimary + logsecond) によって制限されません。 logprimary の値に到達した場合、Db2 はトランザクションを失敗させる代わりに、アクティブ・ログのアーカイブを開始します。 これにより、例えば、非コミットのままになっている長期実行トランザクションがアプリケーションに含まれる場合などに問題が発生する可能性があります。 この状況では、アクティブ・ログ・スペースは増大を続けて、クラッシュ・リカバリーのパフォーマンスが低下することがあります。 これを防止するには、max_log 構成パラメーターまたは num_log_span 構成パラメーターのどちらか、または両方の値を指定できます。