

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Aurora PostgreSQL クエリプラン管理の更新
<a name="auroraqpm.updates"></a>

 AWS `apg_plan_mgmt` 拡張機能は、Aurora PostgreSQL DB クラスターにクエリプラン管理機能を提供します。この機能により、SQL アプリケーションのオプティマイザによって生成されたクエリ実行計画を管理し、安定性を高め、リグレッションを防止できます。詳細については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL のクエリ実行計画の管理](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.html)」を参照してください。**

**Topics**
+ [PostgreSQL 17 バージョン](#auroraqpm-version17)
+ [PostgreSQL 16 バージョン](#auroraqpm-version16)
+ [PostgreSQL 15 バージョン](#auroraqpm-version15)
+ [PostgreSQL 14 バージョン](#auroraqpm-version14)
+ [PostgreSQL 13 バージョン](#auroraqpm-version13)
+ [PostgreSQL 12 バージョン](#auroraqpm-version12)
+ [Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 2.3](#auroraqpm-version.23)
+ [Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 2.1](#auroraqpm-version.21)
+ [Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 2.0](#auroraqpm-version.20)
+ [Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 1.0.1](#auroraqpm-version.101)

## PostgreSQL 17 バージョン
<a name="auroraqpm-version17"></a>

**Topics**
+ [Aurora PostgreSQL 17.9 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日](#auroraqpm-version17-179)
+ [Aurora PostgreSQL 17.7 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日](#auroraqpm-version17-177)
+ [Aurora PostgreSQL 17.5 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日](#auroraqpm-version17-175)
+ [Aurora PostgreSQL 17.4 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 5 月 1 日](#auroraqpm-version17-174)

### Aurora PostgreSQL 17.9 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日
<a name="auroraqpm-version17-179"></a>

Aurora PostgreSQL 17.9 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ クエリプラン管理でプランがキャプチャされない問題を修正しました。

### Aurora PostgreSQL 17.7 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日
<a name="auroraqpm-version17-177"></a>

Aurora PostgreSQL 17.7 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ 以前のバージョンから保存されているパラメータリストを自動的に再キャプチャするクエリプラン管理の改善を追加しました。

### Aurora PostgreSQL 17.5 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日
<a name="auroraqpm-version17-175"></a>

Aurora PostgreSQL 17.5 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ BitmapOr/BitmapAnd 演算子が存在する場合の並列ビットマップスキャンの適用によるクエリプラン管理の問題を修正しました。
+ 複数のテーブルパーティションが 1 つのテーブルパーティションに結合されているプランの適用に伴うクエリプラン管理の問題を修正しました。
+ 1 つのテーブルパーティションの上にノードを追加するというクエリプラン管理の問題を修正しました。
+ クエリプラン管理の`apg_plan_mgmt`ロールは予約されており、ユーザーが作成、変更、削除することはできません。
+ 以前のバージョンのクエリプラン管理のパラメータリストを処理する際の問題を修正しました。

### Aurora PostgreSQL 17.4 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 5 月 1 日
<a name="auroraqpm-version17-174"></a>

Aurora PostgreSQL 17.4 用のバージョン 2.8 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ クエリプラン管理では、サブクエリ変換が相関するプランを適用できます。
+ クエリプラン管理では、相関サブクエリキャッシュを持つプランを適用できます。

**その他の改善と機能強化**
+ クエリプラン管理で`dba_plans`ビューのクエリまたは `validate_plans` および `evolve_plan_baselines`関数の呼び出し中にエラーまたは再起動が発生したパラメータリストの問題を修正しました。
+ クエリプラン管理の変換を関連付けることで最適化されたプランの適用に関する問題を修正しました。
+ 拡張機能のインストール直後にユーティリティステートメントを実行するか、共有メモリをリセットするクエリプラン管理の問題を修正しました。
+ クエリプラン管理でイミュータブルな関数を呼び出すクエリのプランを強制、検証、進化させる問題を修正しました。
+ クエリプラン管理でプランを適用、検証、進化させる問題を修正しました。

## PostgreSQL 16 バージョン
<a name="auroraqpm-version16"></a>

**Topics**
+ [Aurora PostgreSQL 16.13 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日](#auroraqpm-version16-1613)
+ [Aurora PostgreSQL 16.11 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日](#auroraqpm-version16-1611)
+ [Aurora PostgreSQL 16.9 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日](#auroraqpm-version16-169)
+ [Aurora PostgreSQL 16.8 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日](#auroraqpm-version16-168)
+ [Aurora PostgreSQL 16.6 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日](#auroraqpm-version16-166)
+ [Aurora PostgreSQL 16.3 用の apg\$1plan\$1mgmt バージョン 2.7](#auroraqpm-version16-163)
+ [Aurora PostgreSQL 16.2 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version16-162)
+ [Aurora PostgreSQL 16.1 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version16-161)

### Aurora PostgreSQL 16.13 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日
<a name="auroraqpm-version16-1613"></a>

Aurora PostgreSQL 16.13 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ クエリプラン管理でプランがキャプチャされない問題を修正しました。

### Aurora PostgreSQL 16.11 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日
<a name="auroraqpm-version16-1611"></a>

Aurora PostgreSQL 16.11 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ 以前のバージョンから保存されているパラメータリストを自動的に再キャプチャするクエリプラン管理の改善を追加しました。

### Aurora PostgreSQL 16.9 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日
<a name="auroraqpm-version16-169"></a>

Aurora PostgreSQL 16.9 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ BitmapOr/BitmapAnd 演算子が存在する場合の並列ビットマップスキャンの適用によるクエリプラン管理の問題を修正しました。
+ 複数のテーブルパーティションが 1 つのテーブルパーティションに結合されているプランの適用に伴うクエリプラン管理の問題を修正しました。
+ 1 つのテーブルパーティションの上にノードを追加するというクエリプラン管理の問題を修正しました。
+ クエリプラン管理の`apg_plan_mgmt`ロールは予約されており、ユーザーが作成、変更、削除することはできません。
+ 以前のバージョンのクエリプラン管理のパラメータリストを処理する際の問題を修正しました。

### Aurora PostgreSQL 16.8 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日
<a name="auroraqpm-version16-168"></a>

Aurora PostgreSQL 16.8 のバージョン 2.8 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ クエリプラン管理では、サブクエリ変換が相関するプランを適用できます。
+ クエリプラン管理では、相関サブクエリキャッシュを持つプランを適用できます。

**その他の改善と機能強化**
+ クエリプラン管理で`dba_plans`ビューのクエリまたは `validate_plans` および `evolve_plan_baselines`関数の呼び出し中にエラーまたは再起動が発生したパラメータリストの問題を修正しました。
+ クエリプラン管理の変換を関連付けることで最適化されたプランの適用に関する問題を修正しました。
+ 拡張機能のインストール直後にユーティリティステートメントを実行するか、共有メモリをリセットするクエリプラン管理の問題を修正しました。
+ クエリプラン管理でイミュータブルな関数を呼び出すクエリのプランを強制、検証、進化させる問題を修正しました。
+ クエリプラン管理でプランを適用、検証、進化させる問題を修正しました。

### Aurora PostgreSQL 16.6 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日
<a name="auroraqpm-version16-166"></a>

Aurora PostgreSQL 16.6 のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理でレプリカのプランキャプチャで、レプリカの共有メモリ配列がいっぱいになる問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーで、プランの保持期間が適用されず、最終使用日が更新されない問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーに関連する問題を修正しました。
+ ビットマップスキャンを含むクエリプラン管理プランの適用に関する問題を修正しました。
+ 複数のクエリを含む関数またはプロシージャのプランが誤ってキャプチャされるクエリプラン管理の問題を修正しました。
+ クエリプラン管理でネストされたクエリ実行のプランをキャプチャする問題を修正しました。
+ 拡張クエリプロトコルを使用してクエリプラン管理でプランをキャプチャする問題を修正しました。

### Aurora PostgreSQL 16.3 用の apg\$1plan\$1mgmt バージョン 2.7
<a name="auroraqpm-version16-163"></a>

Aurora PostgreSQL 16.3 用のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ を更新する必要はありません`plan_hash_version`。データベースエンジンをアップグレードすると、QPM は自動的に新機能を有効にします。新機能が利用可能になるためにアクションを実行する必要はありません。

**その他の改善と機能強化**
+ 64 個を超えるパーティションテーブルを含む QPM プランの適用に関する問題を修正しました。
+ Append 演算子を含む QPM プランの適用に関する問題を修正しました。
+ update\$1plan\$1hash アクションを使用した QPM validate\$1plans の問題を修正しました。

### Aurora PostgreSQL 16.2 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version16-162"></a>

Aurora PostgreSQL 16.2 のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、集計演算子を持つプランを適用できます。

**その他の改善と機能強化**
+ データベースを削除しても、関連するキャプチャされたプランが共有メモリから削除されない問題を修正しました。
+ ビューを含むプランの適用に関する問題を修正しました。
+ Parallel Append プランの適用が改善されました。
+ プランキャプチャに関連する問題を修正しました。
+ 集合ノードを含むプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 16.1 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version16-161"></a>

Aurora PostgreSQL 16.1 のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ プラン概要は、`apg_plan_mgmt.validate_plans` 関数の `update_plan_hash` アクションの一環として、最新のフォーマットバージョンに更新されます。
+ 並列クエリ適用の一環として、並列追加適用のサポートを追加しました。並列追加ノードを正しく適用するには、以下を実行する必要があります。

  1. `apg_plan_mgmt.plan_hash_version` を 5 に設定します。

  1. `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。

**その他の改善と機能強化**
+ プランハッシュ計算のパフォーマンスが向上しました。
+ 繰り返しの多いサブプランを含むプラン概要のメモリ使用率が向上しました。
+ 並列クエリ適用で、`GatherMerge` を適用できない問題を修正しました。
+ 適用プランの見積コストが不正確だった問題を修正しました。
+ パーティション化されたテーブルとサブプランが概要に含まれる、承認済みプランの適用に関する問題を修正しました。

## PostgreSQL 15 バージョン
<a name="auroraqpm-version15"></a>

**Topics**
+ [Aurora PostgreSQL 15.17 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日](#auroraqpm-version15-1517)
+ [Aurora PostgreSQL 15.15 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日](#auroraqpm-version15-1515)
+ [Aurora PostgreSQL 15.13 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日](#auroraqpm-version15-1513)
+ [Aurora PostgreSQL 15.12 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日](#auroraqpm-version15-1512)
+ [Aurora PostgreSQL 15.10 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日](#auroraqpm-version15-1510)
+ [Aurora PostgreSQL 15.8 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 9 月 30 日](#auroraqpm-version15-158)
+ [Aurora PostgreSQL 15.7 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日](#auroraqpm-version15-157)
+ [Aurora PostgreSQL 15.6 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version15-156)
+ [Aurora PostgreSQL 15.5 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version15-155)
+ [Aurora PostgreSQL 15.4 用の apg\$1plan\$1mgmt バージョン 2.5](#auroraqpm-version15-154)
+ [Aurora PostgreSQL 15.3 用の apg\$1plan\$1mgmt バージョン 2.4](#auroraqpm-version15-153)

### Aurora PostgreSQL 15.17 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日
<a name="auroraqpm-version15-1517"></a>

Aurora PostgreSQL 15.17 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ クエリプラン管理でプランがキャプチャされない問題を修正しました。

### Aurora PostgreSQL 15.15 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日
<a name="auroraqpm-version15-1515"></a>

Aurora PostgreSQL 15.15 用のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ 以前のバージョンから保存されているパラメータリストを自動的に再キャプチャするクエリプラン管理の改善を追加しました。

### Aurora PostgreSQL 15.13 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日
<a name="auroraqpm-version15-1513"></a>

Aurora PostgreSQL 15.13 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ BitmapOr/BitmapAnd 演算子が存在する場合の並列ビットマップスキャンの適用によるクエリプラン管理の問題を修正しました。
+ 複数のテーブルパーティションが 1 つのテーブルパーティションに結合されているプランの適用に伴うクエリプラン管理の問題を修正しました。
+ 1 つのテーブルパーティションの上にノードを追加するというクエリプラン管理の問題を修正しました。
+ クエリプラン管理の`apg_plan_mgmt`ロールは予約されており、ユーザーが作成、変更、削除することはできません。
+ 以前のバージョンのクエリプラン管理のパラメータリストを処理する際の問題を修正しました。

### Aurora PostgreSQL 15.12 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日
<a name="auroraqpm-version15-1512"></a>

Aurora PostgreSQL 15.12 用のバージョン 2.8 の`apg_plan_mgmt`拡張機能の改善点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理で`dba_plans`ビューのクエリまたは `validate_plans` および `evolve_plan_baselines`関数の呼び出し中にエラーまたは再起動が発生したパラメータリストの問題を修正しました。
+ クエリプラン管理における変換の相関によって最適化されたプランの適用に関する問題を修正しました。
+ 拡張機能のインストール直後にユーティリティステートメントを実行するか、共有メモリをリセットするクエリプラン管理の問題を修正しました。
+ クエリプラン管理でイミュータブルな関数を呼び出すクエリのプランを強制、検証、進化させる問題を修正しました。
+ クエリプラン管理でプランを適用、検証、進化させる問題を修正しました。

### Aurora PostgreSQL 15.10 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日
<a name="auroraqpm-version15-1510"></a>

Aurora PostgreSQL 15.10 のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理でレプリカのプランキャプチャで、レプリカの共有メモリ配列がいっぱいになる問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーで、プランの保持期間が適用されず、最終使用日が更新されない問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーに関連する問題を修正しました。
+ ビットマップスキャンを含むクエリプラン管理プランの適用に関する問題を修正しました。
+ 複数のクエリを持つ関数またはプロシージャのプランが誤ってキャプチャされるクエリプラン管理の問題を修正しました。
+ クエリプラン管理でネストされたクエリ実行のプランをキャプチャする問題を修正しました。
+ 拡張クエリプロトコルを使用してクエリプラン管理でプランをキャプチャする問題を修正しました。

### Aurora PostgreSQL 15.8 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 9 月 30 日
<a name="auroraqpm-version15-158"></a>

Aurora PostgreSQL 15.8 のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ Hash Aggregates を含むクエリプラン管理プランの適用に関する問題を修正しました。

### Aurora PostgreSQL 15.7 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日
<a name="auroraqpm-version15-157"></a>

Aurora PostgreSQL 15.7 のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ を更新する必要はありません`plan_hash_version`。データベースエンジンをアップグレードすると、QPM は自動的に新機能を有効にします。新機能を利用できるようにするには、アクションを実行する必要はありません。

**その他の改善と機能強化**
+ 64 を超えるパーティションテーブルを含む QPM プランの適用に関する問題を修正しました。
+ Append 演算子を含む QPM プランの適用に関する問題を修正しました。
+ update\$1plan\$1hash アクションを使用した QPM validate\$1plans の問題を修正しました。

### Aurora PostgreSQL 15.6 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version15-156"></a>

Aurora PostgreSQL 15.6 用のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、集計演算子を持つプランを適用できます。

**その他の改善と機能強化**
+ データベースを削除しても、関連するキャプチャされたプランが共有メモリから削除されない問題を修正しました。
+ ビューを含むプランの適用に関する問題を修正しました。
+ Parallel Append プランの適用が改善されました。
+ プランキャプチャに関連する問題を修正しました。
+ 集合ノードを含むプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 15.5 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version15-155"></a>

Aurora PostgreSQL 15.5 用のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ プラン概要は、`apg_plan_mgmt.validate_plans` 関数の `update_plan_hash` アクションの一環として、最新のフォーマットバージョンに更新されます。
+ 並列クエリ適用の一環として、並列追加適用のサポートを追加しました。並列追加ノードを正しく適用するには、以下を実行する必要があります。

  1. `apg_plan_mgmt.plan_hash_version` を 5 に設定します。

  1. `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。

**その他の改善と機能強化**
+ プランハッシュ計算のパフォーマンスが向上しました。
+ 繰り返しの多いサブプランを含むプラン概要のメモリ使用率が向上しました。
+ 並列クエリ適用で、`GatherMerge` を適用できない問題を修正しました。
+ 適用プランの見積コストが不正確だった問題を修正しました。
+ パーティション化されたテーブルとサブプランが概要に含まれる、承認済みプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 15.4 用の apg\$1plan\$1mgmt バージョン 2.5
<a name="auroraqpm-version15-154"></a>

Aurora PostgreSQL 15.4 用のバージョン 2.5 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、クエリプランが並列演算子 (Parallel Append ノードを除く) を持つように強制できます。並列クエリプランを正しく適用するには、15.4 または 14.9 にアップグレードした後で次のことを行う必要があります。
  + `apg_plan_mgmt.plan_hash_version` を 4 以上に設定します。
  + `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。
  + plan\$1outline に Gather ノードがある承認済みプランを再キャプチャします。
+ QPM は Materialize ノードを使用してクエリプランを適用できます。Materialize ノードを適用するには、15.4 または 14.9 にアップグレードした後で次のことを行う必要があります。
  + `apg_plan_mgmt.plan_hash_version` を 4 以上に設定します。
  + `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。
+ レプリカからクエリプランをキャプチャするには、ALTER EXTENSION apg\$1plan\$1mgmt UPDATE を呼び出して `apg_plan_mgmt` 拡張機能を更新する必要があります。
+ QPM がクエリプランをキャプチャできないようにするには `apg_plan_mgmt.plan_capture_threshold` を指定する必要があります。

**その他の改善と機能強化**
+ `plan_hash` 計算のパフォーマンスが向上しました。

### Aurora PostgreSQL 15.3 用の apg\$1plan\$1mgmt バージョン 2.4
<a name="auroraqpm-version15-153"></a>

Aurora PostgreSQL 15.3 用のバージョン 2.4 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ 新しい GUC auto\$1explain.hashes を導入しました。true (デフォルト: false) に設定すると、sql\$1hash と plan\$1hash が auto explain 結果の最後に表示されます。
+ 新しい GUC apg\$1plan\$1mgmt.explain\$1hashes を導入しました。true (デフォルト: false) に設定すると、hashes true オプションを指定しなくても、sql\$1hash と plan\$1hash が EXPLAIN 結果に表示されます。
+ 新しい GUC apg\$1plan\$1mgmt.log\$1plan\$1enforcement\$1result を導入しました。その値 (デフォルト: なし) に応じて、プラン適用の結果が Postgres ログファイルに書き込まれます。
+ パーティション化されたテーブルをサポートするための新しいプランハッシュ計算バージョンを導入しました。ユーザーは、apg\$1plan\$1mgmt.plan\$1hash\$1version を 3 に設定するとともに、`apg_plan_mgmt` がインストールされていて、プランテーブルにエントリがある各データベースで、apg\$1plan\$1mgmt.validate\$1plans('update\$1plan\$1hash') を呼び出す必要があります。
+ QPM は Memoize ノードを使用してクエリプランを適用できます。
+  `apg_plan_mgmt.copy_outline` 関数は新しい 5 番目の引数 `force_update_target_plan_hash` を取ることができます。true に設定すると、ソースプランがターゲット sql\$1hash で再現できなくても、ターゲットプランのハッシュは更新されます。

**その他の改善と機能強化**
+ JDBC プリペアドステートメントプランの適用に伴う問題を修正しました。
+ pg\$1stat\$1statements と apg\$1plan\$1mgmt.dba\$1plans の間のクエリ ID に関するパリティを改善しました。
+ インデックス名が数字で終わる場合のプラン適用の問題を修正しました。
+  apg\$1plan\$1mgmt.copy\$1outline 関数が environment\$1variables をコピーするようになりました。
+  apg\$1plan\$1mgmt.plan\$1retention\$1period の最小値が 32 から 1 に変更されます。
+  クエリプラン管理では、ライターノードからの読み取り専用トランザクションでクエリのプランを保存できるようになりました。
+  apg\$1plan\$1mgmt.evolve\$1plan\$1baselines 関数の問題を修正しました。
+  apg\$1plan\$1mgmt を有効にすると、利用不能な状態を起こす場合がある問題を修正しました。

`apg_plan_mgmt` 拡張機能のインストール、アップグレード、使用の各方法については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL のクエリ実行計画の管理](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.html)」を参照してください。**

## PostgreSQL 14 バージョン
<a name="auroraqpm-version14"></a>

**Topics**
+ [Aurora PostgreSQL 14.22 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日](#auroraqpm-version14-1422)
+ [Aurora PostgreSQL 14.20 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日](#auroraqpm-version14-1420)
+ [Aurora PostgreSQL 14.18 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日](#auroraqpm-version14-1418)
+ [Aurora PostgreSQL 14.17 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日](#auroraqpm-version14-1417)
+ [Aurora PostgreSQL 14.15 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日](#auroraqpm-version14-1415)
+ [Aurora PostgreSQL 14.12 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日](#auroraqpm-version14-1412)
+ [Aurora PostgreSQL 14.11 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version14-1411)
+ [Aurora PostgreSQL 14.10 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version14-1410)
+ [Aurora PostgreSQL 14.9 用の apg\$1plan\$1mgmt バージョン 2.5](#auroraqpm-version14-149)
+ [Aurora PostgreSQL 14.8 用の apg\$1plan\$1mgmt バージョン 2.4](#auroraqpm-version14-148)

### Aurora PostgreSQL 14.22 用 apg\$1plan\$1mgmt バージョン 2.9、2026 年 4 月 6 日
<a name="auroraqpm-version14-1422"></a>

Aurora PostgreSQL 14.22 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ クエリプラン管理でプランがキャプチャされない問題を修正しました。

### Aurora PostgreSQL 14.20 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日
<a name="auroraqpm-version14-1420"></a>

Aurora PostgreSQL 14.20 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ 以前のバージョンから保存されているパラメータリストを自動的に再キャプチャするクエリプラン管理の改善が追加されました。

### Aurora PostgreSQL 14.18 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日
<a name="auroraqpm-version14-1418"></a>

Aurora PostgreSQL 14.18 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ BitmapOr/BitmapAnd 演算子が存在する場合に並列ビットマップスキャンを適用するクエリプラン管理の問題を修正しました。
+ 複数のテーブルパーティションが 1 つのテーブルパーティションに結合されているプランの適用に伴うクエリプラン管理の問題を修正しました。
+ 1 つのテーブルパーティションの上にノードを追加するというクエリプラン管理の問題を修正しました。
+ クエリプラン管理の`apg_plan_mgmt`ロールは予約されており、ユーザーが作成、変更、削除することはできません。
+ 以前のバージョンのクエリプラン管理のパラメータリストを処理する際の問題を修正しました。

### Aurora PostgreSQL 14.17 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日
<a name="auroraqpm-version14-1417"></a>

Aurora PostgreSQL 14.17 のバージョン 2.8 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理で`dba_plans`ビューのクエリまたは `validate_plans` および `evolve_plan_baselines`関数の呼び出し中にエラーまたは再起動が発生したパラメータリストの問題を修正しました。
+ クエリプラン管理における変換の相関によって最適化されたプランの適用に関する問題を修正しました。
+ 拡張機能のインストール直後にユーティリティステートメントを実行するか、共有メモリをリセットするクエリプラン管理の問題を修正しました。
+ クエリプラン管理でイミュータブルな関数を呼び出すクエリのプランを強制、検証、進化させる問題を修正しました。
+ クエリプラン管理でプランを適用、検証、進化させる問題を修正しました。

### Aurora PostgreSQL 14.15 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日
<a name="auroraqpm-version14-1415"></a>

Aurora PostgreSQL 14.15 のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理でレプリカのプランキャプチャで、レプリカの共有メモリ配列がいっぱいになる問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーで、プランの保持期間が適用されず、最終使用日が更新されない問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーに関連する問題を修正しました。
+ ビットマップスキャンを含むクエリプラン管理プランの適用に関する問題を修正しました。
+ 複数のクエリを持つ関数またはプロシージャのプランが誤ってキャプチャされるクエリプラン管理の問題を修正しました。
+ クエリプラン管理でネストされたクエリ実行のプランをキャプチャする問題を修正しました。
+ 拡張クエリプロトコルを使用してクエリプラン管理でプランをキャプチャする問題を修正しました。

### Aurora PostgreSQL 14.12 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日
<a name="auroraqpm-version14-1412"></a>

Aurora PostgreSQL 14.12 用のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ を更新する必要はありません`plan_hash_version`。データベースエンジンをアップグレードすると、QPM は自動的に新機能を有効にします。新機能を利用できるようにするには、アクションを実行する必要はありません。

**その他の改善と機能強化**
+ 64 を超えるパーティションテーブルを含む QPM プランの適用に関する問題を修正しました。
+ Append 演算子を含む QPM プランの適用に関する問題を修正しました。
+ update\$1plan\$1hash アクションを使用した QPM validate\$1plans の問題を修正しました。

### Aurora PostgreSQL 14.11 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version14-1411"></a>

Aurora PostgreSQL 14.11 用のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、集計演算子を持つプランを適用できます。

**その他の改善と機能強化**
+ データベースを削除しても、関連するキャプチャされたプランが共有メモリから削除されない問題を修正しました。
+ ビューを含むプランの適用に関する問題を修正しました。
+ Parallel Append プランの適用が改善されました。
+ プランキャプチャに関連する問題を修正しました。
+ 集合ノードを含むプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 14.10 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version14-1410"></a>

Aurora PostgreSQL 14.10 のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ プラン概要は、`apg_plan_mgmt.validate_plans` 関数の `update_plan_hash` アクションの一環として、最新のフォーマットバージョンに更新されます。
+ 並列クエリ適用の一環として、並列追加適用のサポートを追加しました。並列追加ノードを正しく適用するには、以下を実行する必要があります。

  1. `apg_plan_mgmt.plan_hash_version` を 5 に設定します。

  1. `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。

**その他の改善と機能強化**
+ プランハッシュ計算のパフォーマンスが向上しました。
+ 繰り返しの多いサブプランを含むプラン概要のメモリ使用率が向上しました。
+ 並列クエリ適用で、`GatherMerge` を適用できない問題を修正しました。
+ 適用プランの見積コストが不正確だった問題を修正しました。
+ パーティション化されたテーブルとサブプランが概要に含まれる、承認済みプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 14.9 用の apg\$1plan\$1mgmt バージョン 2.5
<a name="auroraqpm-version14-149"></a>

Aurora PostgreSQL 14.9 用のバージョン 2.5 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、クエリプランが並列演算子 (Parallel Append ノードを除く) を持つように強制できます。並列クエリプランを正しく適用するには、15.4 または 14.9 にアップグレードした後で次のことを行う必要があります。
  + `apg_plan_mgmt.plan_hash_version` を 4 以上に設定します。
  + `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。
  + plan\$1outline に Gather ノードがある承認済みプランを再キャプチャします。
+ QPM は Materialize ノードを使用してクエリプランを適用できます。Materialize ノードを適用するには、15.4 または 14.9 にアップグレードした後で次のことを行う必要があります。
  + `apg_plan_mgmt.plan_hash_version` を 4 以上に設定します。
  + `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。
+ レプリカからクエリプランをキャプチャするには、ALTER EXTENSION apg\$1plan\$1mgmt UPDATE を呼び出して `apg_plan_mgmt` 拡張機能を更新する必要があります。
+ QPM がクエリプランをキャプチャできないようにするには `apg_plan_mgmt.plan_capture_threshold` を指定する必要があります。

**その他の改善と機能強化**
+ `plan_hash` 計算のパフォーマンスが向上しました。

### Aurora PostgreSQL 14.8 用の apg\$1plan\$1mgmt バージョン 2.4
<a name="auroraqpm-version14-148"></a>

Aurora PostgreSQL 14.8 のバージョン 2.4 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ 新しい GUC auto\$1explain.hashes を導入しました。true (デフォルト: false) に設定すると、sql\$1hash と plan\$1hash が auto explain 結果の最後に表示されます。
+ 新しい GUC apg\$1plan\$1mgmt.explain\$1hashes を導入しました。true (デフォルト: false) に設定すると、hashes true オプションを指定しなくても、sql\$1hash と plan\$1hash が EXPLAIN 結果に表示されます。
+ 新しい GUC apg\$1plan\$1mgmt.log\$1plan\$1enforcement\$1result を導入しました。その値 (デフォルト: なし) に応じて、プラン適用の結果が Postgres ログファイルに書き込まれます。
+ パーティション化されたテーブルをサポートするための新しいプランハッシュ計算バージョンを導入しました。ユーザーは、apg\$1plan\$1mgmt.plan\$1hash\$1version を 3 に設定するとともに、`apg_plan_mgmt` がインストールされていて、プランテーブルにエントリがある各データベースで、apg\$1plan\$1mgmt.validate\$1plans('update\$1plan\$1hash') を呼び出す必要があります。
+ QPM は Memoize ノードを使用してクエリプランを適用できます。
+  `apg_plan_mgmt.copy_outline` 関数は新しい 5 番目の引数 `force_update_target_plan_hash` を取ることができます。true に設定すると、ソースプランがターゲット sql\$1hash で再現できなくても、ターゲットプランのハッシュは更新されます。

**その他の改善と機能強化**
+ JDBC プリペアドステートメントプランの適用に伴う問題を修正しました。
+ pg\$1stat\$1statements と apg\$1plan\$1mgmt.dba\$1plans の間のクエリ ID に関するパリティを改善しました。
+ インデックス名が数字で終わる場合のプラン適用の問題を修正しました。
+  apg\$1plan\$1mgmt.copy\$1outline 関数が environment\$1variables をコピーするようになりました。
+  apg\$1plan\$1mgmt.plan\$1retention\$1period の最小値が 32 から 1 に変更されます。
+  クエリプラン管理では、ライターノードからの読み取り専用トランザクションでクエリのプランを保存できるようになりました。
+  apg\$1plan\$1mgmt.evolve\$1plan\$1baselines 関数の問題を修正しました。
+  apg\$1plan\$1mgmt を有効にすると、利用不能な状態を起こす場合がある問題を修正しました。

`apg_plan_mgmt` 拡張機能のインストール、アップグレード、使用の各方法については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL のクエリ実行計画の管理](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.html)」を参照してください。**

## PostgreSQL 13 バージョン
<a name="auroraqpm-version13"></a>

**Topics**
+ [Aurora PostgreSQL 13.23 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日](#auroraqpm-version13-1323)
+ [Aurora PostgreSQL 13.21 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日](#auroraqpm-version13-1321)
+ [Aurora PostgreSQL 13.20 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日](#auroraqpm-version13-1320)
+ [Aurora PostgreSQL 13.18 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日](#auroraqpm-version13-1318)
+ [Aurora PostgreSQL 13.15 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日](#auroraqpm-version13-1315)
+ [Aurora PostgreSQL 13.14 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version13-1314)
+ [Aurora PostgreSQL 13.13 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version13-1313)
+ [Aurora PostgreSQL 13.12 用の apg\$1plan\$1mgmt バージョン 2.5](#auroraqpm-version13-1312)
+ [Aurora PostgreSQL 13.11 用の apg\$1plan\$1mgmt バージョン 2.4](#auroraqpm-version13-1311)

### Aurora PostgreSQL 13.23 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 12 月 18 日
<a name="auroraqpm-version13-1323"></a>

Aurora PostgreSQL 13.23 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**拡張機能の改善**
+ 以前のバージョンから保存されているパラメータリストを自動的に再キャプチャするクエリプラン管理の改善が追加されました。

### Aurora PostgreSQL 13.21 用 apg\$1plan\$1mgmt バージョン 2.9、2025 年 6 月 30 日
<a name="auroraqpm-version13-1321"></a>

Aurora PostgreSQL 13.21 のバージョン 2.9 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ BitmapOr/BitmapAnd 演算子が存在する場合に並列ビットマップスキャンを適用するクエリプラン管理の問題を修正しました。
+ 複数のテーブルパーティションが 1 つのテーブルパーティションに結合されているプランの適用に伴うクエリプラン管理の問題を修正しました。
+ 1 つのテーブルパーティションの上にノードを追加するというクエリプラン管理の問題を修正しました。
+ クエリプラン管理の`apg_plan_mgmt`ロールは予約されており、ユーザーが作成、変更、削除することはできません。
+ クエリプラン管理の以前のバージョンのパラメータリストを処理する際の問題を修正しました。

### Aurora PostgreSQL 13.20 用 apg\$1plan\$1mgmt バージョン 2.8、2025 年 4 月 8 日
<a name="auroraqpm-version13-1320"></a>

Aurora PostgreSQL 13.20 のバージョン 2.8 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理で`dba_plans`ビューのクエリまたは `validate_plans` および `evolve_plan_baselines`関数の呼び出し中にエラーまたは再起動が発生したパラメータリストの問題を修正しました。
+ クエリプラン管理における変換の相関によって最適化されたプランの適用に関する問題を修正しました。
+ 拡張機能のインストール直後にユーティリティステートメントを実行するか、共有メモリをリセットするクエリプラン管理の問題を修正しました。
+ クエリプラン管理でイミュータブルな関数を呼び出すクエリのプランを強制、検証、進化させる問題を修正しました。
+ クエリプラン管理でプランを適用、検証、進化させる問題を修正しました。

### Aurora PostgreSQL 13.18 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日
<a name="auroraqpm-version13-1318"></a>

Aurora PostgreSQL 13.18 のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理でレプリカのプランキャプチャで、レプリカの共有メモリ配列がいっぱいになる問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーで、プランの保持期間が適用されず、最終使用日が更新されない問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーに関連する問題を修正しました。
+ ビットマップスキャンを含むクエリプラン管理プランの適用に関する問題を修正しました。
+ 複数のクエリを持つ関数またはプロシージャのプランが誤ってキャプチャされるクエリプラン管理の問題を修正しました。
+ クエリプラン管理でネストされたクエリ実行のプランをキャプチャする問題を修正しました。
+ 拡張クエリプロトコルを使用してクエリプラン管理でプランをキャプチャする問題を修正しました。

### Aurora PostgreSQL 13.15 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日
<a name="auroraqpm-version13-1315"></a>

Aurora PostgreSQL 13.15 用のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ を更新する必要はありません`plan_hash_version`。データベースエンジンをアップグレードすると、QPM は自動的に新機能を有効にします。新機能を利用できるようにするには、アクションを実行する必要はありません。

**その他の改善と機能強化**
+ 64 を超えるパーティションテーブルを含む QPM プランの適用に関する問題を修正しました。
+ Append 演算子を含む QPM プランの適用に関する問題を修正しました。
+ update\$1plan\$1hash アクションを使用した QPM validate\$1plans の問題を修正しました。

### Aurora PostgreSQL 13.14 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version13-1314"></a>

Aurora PostgreSQL 13.14 用のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、集計演算子を持つプランを適用できます。

**その他の改善と機能強化**
+ データベースを削除しても、関連するキャプチャされたプランが共有メモリから削除されない問題を修正しました。
+ ビューを含むプランの適用に関する問題を修正しました。
+ Parallel Append プランの適用が改善されました。
+ プランキャプチャに関連する問題を修正しました。
+ 集合ノードを含むプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 13.13 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version13-1313"></a>

Aurora PostgreSQL 13.13 用のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ プラン概要は、`apg_plan_mgmt.validate_plans` 関数の `update_plan_hash` アクションの一環として、最新のフォーマットバージョンに更新されます。
+ 並列クエリ適用の一環として、並列追加適用のサポートを追加しました。並列追加ノードを正しく適用するには、以下を実行する必要があります。

  1. `apg_plan_mgmt.plan_hash_version` を 5 に設定します。

  1. `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。

**その他の改善と機能強化**
+ プランハッシュ計算のパフォーマンスが向上しました。
+ 繰り返しの多いサブプランを含むプラン概要のメモリ使用率が向上しました。
+ 並列クエリ適用で、`GatherMerge` を適用できない問題を修正しました。
+ 適用プランの見積コストが不正確だった問題を修正しました。
+ パーティション化されたテーブルとサブプランが概要に含まれる、承認済みプランの適用に関する問題を修正しました。

### Aurora PostgreSQL 13.12 用の apg\$1plan\$1mgmt バージョン 2.5
<a name="auroraqpm-version13-1312"></a>

Aurora PostgreSQL 13.12 用のバージョン 2.5 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ QPM は、クエリプランが並列演算子 (Parallel Append ノードを除く) を持つように強制できます。並列クエリプランを正しく適用するには、15.4 または 14.9 にアップグレードした後で次のことを行う必要があります。
  + `apg_plan_mgmt.plan_hash_version` を 4 以上に設定します。
  + `apg_plan_mgmt.validate_plans('update_plan_hash')` を呼び出します。
  + plan\$1outline に Gather ノードがある承認済みプランを再キャプチャします。
+ レプリカからクエリプランをキャプチャするには、ALTER EXTENSION apg\$1plan\$1mgmt UPDATE を呼び出して `apg_plan_mgmt` 拡張機能を更新する必要があります。
+ QPM がクエリプランをキャプチャできないようにするには `apg_plan_mgmt.plan_capture_threshold` を指定する必要があります。

### Aurora PostgreSQL 13.11 用の apg\$1plan\$1mgmt バージョン 2.4
<a name="auroraqpm-version13-1311"></a>

Aurora PostgreSQL 13.11 用のバージョン 2.4 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ 新しい GUC auto\$1explain.hashes を導入しました。true (デフォルト: false) に設定すると、sql\$1hash と plan\$1hash が auto explain 結果の最後に表示されます。
+ 新しい GUC apg\$1plan\$1mgmt.explain\$1hashes を導入しました。true (デフォルト: false) に設定すると、hashes true オプションを指定しなくても、sql\$1hash と plan\$1hash が EXPLAIN 結果に表示されます。
+ 新しい GUC apg\$1plan\$1mgmt.log\$1plan\$1enforcement\$1result を導入しました。その値 (デフォルト: なし) に応じて、プラン適用の結果が Postgres ログファイルに書き込まれます。
+ パーティション化されたテーブルをサポートするための新しいプランハッシュ計算バージョンを導入しました。ユーザーは、apg\$1plan\$1mgmt.plan\$1hash\$1version を 3 に設定するとともに、`apg_plan_mgmt` がインストールされていて、プランテーブルにエントリがある各データベースで、apg\$1plan\$1mgmt.validate\$1plans('update\$1plan\$1hash') を呼び出す必要があります。
+  `apg_plan_mgmt.copy_outline` 関数は新しい 5 番目の引数 `force_update_target_plan_hash` を取ることができます。true に設定すると、ソースプランがターゲット sql\$1hash で再現できなくても、ターゲットプランのハッシュは更新されます。

**その他の改善と機能強化**
+ JDBC プリペアドステートメントプランの適用に伴う問題を修正しました。
+ インデックス名が数字で終わる場合のプラン適用の問題を修正しました。
+  apg\$1plan\$1mgmt.copy\$1outline 関数が environment\$1variables をコピーするようになりました。
+  apg\$1plan\$1mgmt.plan\$1retention\$1period の最小値が 32 から 1 に変更されます。
+  クエリプラン管理では、ライターノードからの読み取り専用トランザクションでクエリのプランを保存できるようになりました。
+  apg\$1plan\$1mgmt.evolve\$1plan\$1baselines 関数の問題を修正しました。
+  apg\$1plan\$1mgmt を有効にすると、利用不能な状態を起こす場合がある問題を修正しました。

`apg_plan_mgmt` 拡張機能のインストール、アップグレード、使用の各方法については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL のクエリ実行計画の管理](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.html)」を参照してください。**

## PostgreSQL 12 バージョン
<a name="auroraqpm-version12"></a>

**Topics**
+ [Aurora PostgreSQL 12.22 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日](#auroraqpm-version12-1222)
+ [Aurora PostgreSQL 12.19 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日](#auroraqpm-version12-1219)
+ [Aurora PostgreSQL 12.18 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version12-1218)
+ [Aurora PostgreSQL 12.17 用の apg\$1plan\$1mgmt バージョン 2.6](#auroraqpm-version12-1217)
+ [Aurora PostgreSQL 12.16 用の apg\$1plan\$1mgmt バージョン 2.5](#auroraqpm-version12-1216)

### Aurora PostgreSQL 12.22 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 12 月 27 日
<a name="auroraqpm-version12-1222"></a>

Aurora PostgreSQL 12.22 用のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ クエリプラン管理でレプリカのプランキャプチャで、レプリカの共有メモリ配列がいっぱいになる問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーで、プランの保持期間が適用されず、最終使用日が更新されない問題を修正しました。
+ クエリプラン管理のバックグラウンドワーカーに関連する問題を修正しました。

### Aurora PostgreSQL 12.19 用 apg\$1plan\$1mgmt バージョン 2.7、2024 年 8 月 8 日
<a name="auroraqpm-version12-1219"></a>

Aurora PostgreSQL 12.19 用のバージョン 2.7 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ を更新する必要はありません`plan_hash_version`。データベースエンジンをアップグレードすると、QPM は自動的に新機能を有効にします。新機能を利用できるようにするには、アクションを実行する必要はありません。

**その他の改善と機能強化**
+ 64 を超えるパーティションテーブルを含む QPM プランの適用に関する問題を修正しました。
+ Append 演算子を含む QPM プランの適用に関する問題を修正しました。
+ update\$1plan\$1hash アクションを使用した QPM validate\$1plans の問題を修正しました。

### Aurora PostgreSQL 12.18 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version12-1218"></a>

Aurora PostgreSQL 12.18 のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**その他の改善と機能強化**
+ プランキャプチャに関連する問題を修正しました。

### Aurora PostgreSQL 12.17 用の apg\$1plan\$1mgmt バージョン 2.6
<a name="auroraqpm-version12-1217"></a>

Aurora PostgreSQL 12.17 用のバージョン 2.6 の`apg_plan_mgmt`拡張機能の改善点は次のとおりです。

**新機能**
+ プラン概要は、`apg_plan_mgmt.validate_plans` 関数の `update_plan_hash` アクションの一環として、最新のフォーマットバージョンに更新されます。

### Aurora PostgreSQL 12.16 用の apg\$1plan\$1mgmt バージョン 2.5
<a name="auroraqpm-version12-1216"></a>

Aurora PostgreSQL 12.16 用のバージョン 2.5 の`apg_plan_mgmt`拡張機能の改良点は次のとおりです。

**新機能**
+ レプリカからクエリプランをキャプチャするには、ALTER EXTENSION apg\$1plan\$1mgmt UPDATE を呼び出して `apg_plan_mgmt` 拡張機能を更新する必要があります。
+ QPM がクエリプランをキャプチャできないようにするには `apg_plan_mgmt.plan_capture_threshold` を指定する必要があります。

## Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 2.3
<a name="auroraqpm-version.23"></a>

`apg_plan_mgmt` 拡張機能バージョン 2.3 には、次のような改善点があります。

**新しい拡張機能**
+ 新しい関数 `apg_plan_mgmt.copy_outline` のサポート。この関数により、プランハッシュとプランアウトラインを、特定の SQL ハッシュやプランハッシュから別の SQL ハッシュやプランハッシュにコピーできます。この関数は、インラインのヒントステートメントを毎回使用せずに、ヒントを使用するプランを他の同様のステートメントにコピーする場合に使用します。クエリを更新した結果としてプランが無効になった場合、この関数はエラーを発生させて更新をロールバックします。詳細については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL クエリプラン管理の関数リファレンス](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Functions.html#AuroraPostgreSQL.Optimize.Functions.copy_outline)」を参照してください。**

**拡張機能の改善**
+ クエリプラン管理機能は、プロシージャと DO ブロック内にあるクエリのプランを保存するようになりました。バージョン 2.3 より古い `apg_plan_mgmt` のバージョンでは、これが制限となっていました。

`apg_plan_mgmt` 拡張機能のインストール、アップグレード、使用の各方法については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL のクエリ実行計画の管理](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.html)」を参照してください。**

## Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 2.1
<a name="auroraqpm-version.21"></a>

Aurora PostgreSQL 11.20 の `apg_plan_mgmt` 拡張機能バージョン 2.1 には、次のような改善点があります。

**Aurora PostgreSQL 11.20 の新しい拡張機能**
+ 新しい GUC apg\$1plan\$1mgmt.log\$1plan\$1enforcement\$1result を導入しました。その値 (デフォルト: なし) に応じて、プラン適用の結果が Postgres ログファイルに書き込まれます。

**Aurora PostgreSQL 11.20 の拡張機能の改善**
+ JDBC プリペアドステートメントプランの適用に伴う問題を修正しました。

`apg_plan_mgmt` 拡張機能のインストール、アップグレード、使用の各方法については、「Amazon Aurora ユーザーガイド」の「[Aurora PostgreSQL のクエリ実行計画の管理](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.html)」を参照してください。**

## Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 2.0
<a name="auroraqpm-version.20"></a>

`apg_plan_mgmt` 拡張機能バージョン 2.0 の変更は次のとおりです。

**新しい拡張機能**

1. パラメータがあるかどうかにかかわらず、SQL 関数内のすべてのクエリを管理できるようになりました。

1. パラメータがあるかどうかにかかわらず、PL/pgSQL 関数内のすべてのクエリを管理できるようになりました。

1. パラメータがあるかどうかにかかわらず、汎用プランでクエリを管理できるようになりました。汎用プランとカスタムプランの詳細については、[PostgreSQL ドキュメント](https://www.postgresql.org/docs/current/sql-prepare.html)の `PREPARE` ステートメントを参照してください。

1. クエリプラン管理を使用して、クエリプランで特定の種類の集計メソッドの使用を強制できるようになりました。

**拡張機能の改善**

1. `max_worker_processes` パラメータの設定の 8KB 倍までのサイズでプランを保存できるようになりました。以前は、プランの最大サイズは 8KB でした。

1. JDBC のステートメントなどの名前のないプリペアドステートメントのバグを修正しました。

1. 以前は、`CREATE EXTENSION apg_plan_mgmt` にロードされていないときに `shared_preload_libraries` を実行しようとすると、PostgreSQL バックエンド接続が切断されました。現在は、エラーメッセージが出力され、接続は切断されません。

1. `cardinality_error` での `apg_plan_mgmt.plans table` のデフォルト値は NULL ですが、`apg_plan_mgmt.evolve_plan_baselines` 関数の実行中に -1 に設定できます。現在では NULL が一貫して使用されます。

1. テンポラリテーブルを参照するクエリのプランが保存されるようになりました。

1. プランのデフォルトの最大数が 1000 から 10000 に増加しています。

1. 次の pgss パラメータは、これらのパラメータの代わりに自動プラン取得モードを使用する必要があるため、非推奨です。
   + `apg_plan_mgmt.pgss_min_calls`
   + `apg_plan_mgmt.pgss_min_mean_time_ms`
   + `apg_plan_mgmt.pgss_min_stddev_time_ms`
   + `apg_plan_mgmt.pgss_min_total_time_ms`

## Aurora PostgreSQL apg\$1plan\$1mgmt 拡張機能のバージョン 1.0.1
<a name="auroraqpm-version.101"></a>

`apg_plan_mgmt` 拡張機能バージョン 1.0.1 の変更は次のとおりです。

**新しい拡張機能**

1. `validate_plans` 関数には、`action` という新しい `update_plan_hash` 値があります。この操作により、正確に再現できないプランの `plan_hash` ID が更新されます。`update_plan_hash` 値を使用すると、SQL を書き換えることでプランを修正することもできます。元の SQL の `Approved` プランとして、優れたプランを登録できるようになります。以下は、`update_plan_hash` アクションの使用例です。

   ```
   UPDATE apg_plan_mgmt.plans SET plan_hash = new _plan_hash, plan_outline = good_plan_outline
      WHERE sql_hash = bad_plan_sql_hash AND plan_hash = bad_plan_plan_hash;
   SELECT apg_plan_mgmt.validate_plans(bad_plan_sql_hash, bad_plan_plan_hash, 'update_plan_hash');
   SELECT apg_plan_mgmt.reload();
   ```

1. 指定された SQL ステートメントの `get_explain_stmt` ステートメントのテキストを生成する新しい `EXPLAIN` 関数が使用可能になりました。この関数には、`sql_hash`、`plan_hash`、`explain_options` などがあります。

   以下に示されているように、`explain_options` パラメータは、有効な `EXPLAIN` オプションのカンマ区切りのリストになります。

   ```
   analyze,verbose,buffers,hashes,format json
   ```

   `explain_options` パラメータが NULL で、空の文字列の場合、`get_explain_stmt` 関数では、シンプルな `EXPLAIN` ステートメントが生成されます。

   ワークロードまたはその一部の `EXPLAIN` スクリプトを作成するには、`\a`、`\t`、および `\o` オプションを使用して、出力をファイルにリダイレクトします。例えば、最高位 (top-K) のステートメントの `EXPLAIN` スクリプトを作成するには、`pg_stat_statements` によって `total_time` 順でソートされている PostgreSQL の `DESC` ビューを使用します。

1. Gather parallel query 演算子の正確な位置は、コストによって決まり、時間とともにわずかに変化する可能性があります。これらの違いによって、プラン全体が無効になるのを防ぐために、Gather 演算子がプランツリーの別の場所に移動した場合でも、クエリプラン管理では同じ `plan_hash` が計算されるようになりました。

1. pl/pgsql 関数内のパラメータ化されていないステートメントのサポートを追加。

1. 2 つ以上のデータベースに同時にアクセスしているときに、同じクラスター内の複数のデータベースに `apg_plan_mgmt` 拡張機能をインストールすると、オーバーヘッドが削減されます。また、このリリースでは、プランが共有メモリに格納されない原因となっていたこのエリアのバグが修正されています。

**拡張機能の改善**

1. `evolve_plan_baselines` 関数の改善。

   1. `evolve_plan_baselines` 関数では、プランのすべてのノードで、`cardinality_error` メトリクスが計算されるようになりました。このメトリクスを使用すると、カーディナリティ推定エラーが大きく、プランの質に問題があるプランを特定できます。高い `cardinality_error` 値で実行時間が長いステートメントは、クエリのチューニングを行う上で優先順位が高くなります。

   1. `evolve_plan_baselines` で生成されたレポートに、`sql_hash`、`plan_hash`、およびプラン `status` が含まれるようになりました。

   1. これで、`evolve_plan_baselines` で、以前の `Rejected` プランを承認できるようになります。

   1. `speedup_factor` の `evolve_plan_baselines` は、ベースラインプランが常に基準になります。例えば、値 1.1 は、ベースラインよりも 10% 速いことを意味します。値 0.9 は、ベースラインプランよりも 10% 遅いことを意味します。比較は、合計時間ではなく実行時間のみを使用して行われます。

   1. `evolve_plan_baselines` 関数では、キャッシュが新しい方法でウォームアップされるようになりました。この方法では、ベースラインプランを実行し、次にベースラインプランをもう 1 回実行してから、候補プランを 1 回実行します。以前は、`evolve_plan_baselines` で、候補プランが 2 回実行されていました。このアプローチでは、特に遅い候補プランの場合、実行時間が大幅に長くなっていました。ただし、ベースラインプランで使用されていないインデックスを候補プランで使用すると、候補プランを 2 回実行した方が信頼性が高くなります。

1. クエリプラン管理では、システムテーブル/ビュー、テンポラリテーブル、またはクエリプラン管理自体のテーブルを参照するプランは保存されなくなりました。

1. バグ修正には、保存時点のプランのキャッシュや、バックエンドが終了する原因となったバグの修正などが含まれます。