説明
この構成パラメータは、V4.3.5 BP1バージョンから導入されました。
機能の概要
package_state_sync_max_size構成パラメータは、単一のpackage state(パッケージ状態管理)がシリアライズできる長さを制御します。
権限要件
パラメータの確認
sysテナントとすべてのユーザーテナントはSHOW PARAMETERSステートメント、またはGV$OB_PARAMETERSビューを使用してこのパラメータを確認できます。パラメータの変更
sysテナントとユーザーテナントはこの構成パラメータを変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | Int |
| デフォルト値 | 8192 |
| 値の範囲 | [0, 16777216] |
| 変更は可能か | はい。ALTER SYSTEM SETステートメントを使用して変更できます。 |
| OBServerノードの再起動が必要か | 不要です。設定は即時に反映されます。 |
使用方法
この構成パラメータは、単一のpackage stateが同期するパッケージ変数の最大シリアライズ長を制御します。ODPデプロイメントシナリオでは、OBServer側で検出されたパッケージ変数の同期に必要なシリアライズ長が設定値を超える場合、特別な値を同期することで、ODPが後続のステートメントを元のノードにルーティングし、実行を継続させます。
分散実行計画シナリオでは、リモートノードがpackage stateを構築する際、特定の値を受信するとエラーが発生します。このようなエラーは、SQLステートメントにUDF(ユーザー定義関数)やトリガーが含まれ、かつ
parallel_enable句が明示的に指定されている場合に発生します。このようなシナリオに遭遇した場合、parallel_enable句を削除するか、package_state_sync_max_size構成パラメータの値を大きく設定することができます。
設定例
単一のpackage state(パッケージ状態管理)がシリアライズできる長さを8193に設定します。
obclient> ALTER SYSTEM SET package_state_sync_max_size=8193;