ページの先頭行へ戻る
Enterprise Postgres 17 リリース情報

2.2 アプリケーションの移行に関する非互換

項目

移行前のバージョン

9.5

9.6

10

11

12

13

12 SP1

13 SP1

14

15

16

16 SP1

current_setting('role')の実行結果の変更

SET ROLEとSESSION AUTHORIZATIONを実行したトランザクションをロールバックした場合のロールの状態の変更

行セキュリティポリシーが設定されたテーブルに対するSQLの結果変更

PL/Perlにおける%ENVを実行不可に変更

\vの扱いの変更

test_decodingモジュールの動作の変更

INTERVAL型における構文チェックの強化

unaccentモジュールの動作の変更

pgrowlocksモジュールの出力の変更

ECPGにおける数値変換関数のオーバーフロー時の返却値の変更

psqlコマンドの変数の値の変更

interval型におけるオーバーフローの防止

JSONコンストラクタにおける長さチェックの強化

SubPlanノードと出力パラメータに関するEXPLAINの表示の改善

SQLキーワードの追加

外部データラッパのインターフェースの変更

XMLSERIALIZE関数の出力結果の変更

オーバーフロー時の挙動の変更

FROM句にRECORDを返却する関数を指定した場合の挙動の変更

一部のSQLにおけるmax_stack_depthのチェックの強化

ドメイン列を持つテーブルに対して複数行INSERTした場合の挙動の変更

EXPLAIN文でBitmap Heap Scanの実行計画を表示した場合のページ数のカウントの変更

postgres_fdwが設定するTimeZoneの値の変更

pg_size_pretty(bigint)関数にbigintの符号付最小値を指定した場合の結果変更

AFTERトリガが存在しなくなった場合の動作変更

PL/Pythonのトリガ関数を使用した際のTD辞書の内容変更

C言語による埋め込みSQLをInformix互換モードで動作させている際のintoasc関数の結果変更

min()またはmax()集約関数の実行結果変更

boolean型の列をパーティションキーに持つ表に対し、IS NOT句を含む問い合わせの実行結果変更

txid_status関数、pg_xact_status関数の実行結果変更

websearch_to_tsquery関数の結果変更

プロシージャの引数に指定されたSTABLE属性関数の動作変更

postgres_fdwにおけるFETCH FIRST WITH TIESの無効化

MERGE ... DO NOTHING実行時の権限チェックの強化

MERGEの対象テーブルの行が、すでに更新済みの場合の動作変更

Right Anti Joinアクセスプラン時のSQLの実行結果の変更

ホットスタンバイ起動時の可視性の変更

位置パラメータにおけるアンダースコアの使用の禁止

xmlXPathInit関数でゼロ除算が許可されるように変更

xmlGetNodePath関数がサポートされていないノードタイプに遭遇したときに、NULLを返すように変更

XML 1.0の仕様に準拠しない、ltやampといった事前に定義されたエンティティの再定義は許可されないように変更

パラメータに非ASCII文字が指定された場合の動作変更

整数の指数に対するnumeric power()の精度の向上

AT TIME ZONE構文表示の修正

トランザクションブロック内で実行できないDDLコマンドをパイプラインモードで実行した場合の処理の変更

postgres_fdwでパーティションを跨って更新した場合にも一度にINSERTするように変更

segモジュールの修正

xid、xid8、cid型に対する不正な入力の検出

to_reg* 関数の変換の変更

PL/pgSQLでのバウンドカーソル変数へのポータル名の割り当てルールの変更

生成列の更新処理の修正

CREATEROLE権限の制限

jsonpath存在チェックの修正

LOCK TABLEの権限の簡素化

冗長なグループキーの削除

ビュー定義から別名の除外

CREATEROLE権限の変更

postmasterシンボリックリンクの削除

MERGEコマンド実行時に生成列の値を適切に再計算

変換のオブジェクト識別の修正

継承テーブルとパーティションテーブルにおける生成列の有無のチェックの強化

ISO-8601形式によるinterval値を正しく解析できるように修正

timestampおよびtimestamptzの減算におけるオーバーフローの検出

MERGEコマンドでパーティションを跨って更新した場合のコマンドタグの件数の修正

プライマリキーに対するNULLS NOT DISTINCTインデックスの禁止

psqlの\df+コマンドの表示の変更

pg_stat_statementsのクエリ文字列の正規化

psqlの\d0コマンドの表示の変更

pg_walinspectの関数の削除

psqlの\watchの引数の扱いの変更

エラーメッセージで表示されるディレクトリ名の変更

日付時刻の入力におけるエラーチェックの厳格化

待機イベントの名前の変更

pg_stat_all_tablesビューにn_tup_newpage_upd列を追加

インデックス内で使用される複合型が変更できないように変更

ICUロケールの検証

システム列を外部キー要素として使用できないように変更

width_bucket ()関数の返却結果の変更

タイムゾーンデータファイルのtzdataリリース2023cへの変更

ltreeのsiglenオプションの変更

brin_page_items関数の返却データにemptyの追加

pageinspectのgist_page_items関数 のkeysの結果の変更

読み取り専用サーバ設定のlc_collateとlc_ctypeの削除

hstoreのキー/値解析時の空白文字のチェックの変更

intarrayのインデックスサポートのためのgist__int_opsで範囲外メモリ読み取り防止の変更

ICU: ロケール"C"から"en-US-u-va-posix"への変更不可

MERGEコマンドでパーティションを跨る更新をした場合のAFTER ROWトリガの挙動の変更

ラージオブジェクトの所有者変更時の挙動変更

EXPLAIN (BUFFERS)の表示の変更

スタンバイサーバにおけるサブトランザクションの挙動変更

クライアント認証時の挙動変更

is_valid_ascii()関数のヘッダファイルの変更

pg_auth_membersカタログにinherit_option列とset_option列の追加

システムビューpg_locksにobjid列を追加

付与された権限を持つロールの依存関係のチェック強化

ブートストラップスーパーユーザーからスーパーユーザー権限の削除を禁止

リセット可能なパラメータの厳格化

pg_hba_file_rulesビューにrule_number列を追加

pg_ident_file_mappingsビューにmap_number列を追加

全文検索の結果強調における表示の変更

date_trunc(field, timestamptz, time_zone)関数の属性変更

pg_collation_actual_version()関数の復帰値変更

psqlの\d+コマンドの表示の変更

アーカイブモジュールの初期化方法の変更

pg_stat_statementsビューのrow列の表示変更

postgres_fdwを利用した外部サーバにアクセスする際の実行計画の変更

GiSTインデックスを利用したアクセス結果の変更

interval型の列に対するインデックスオンリースキャンの出力結果の変更

MERGEコマンドの並列実行時の出力結果変更

継承テーブルに対する更新処理時の処理対象テーブルの変更

Btreeインデックスに対する配列比較の出力結果の変更

継承テーブルに対するANALYZEコマンド実行時の進捗状況の変更

pg_stat_walビューの出力内容の変更

デフォルトのタイムゾーンの略語リストからPHOTを削除

各国語文字を扱うデータ型(NCHAR型)のOIDの変更

アプリケーションの接続先切り替え機能の指定方法の変更

ecpg/ecobpgの長さゼロのUnicode識別子の扱いの変更

ASCII文字のchar型の出力結果の変更

カスタムスキャンプロバイダのCustomPathオブジェクトの変更

xml2のxml_is_well_formed関数の削除

psqlコマンドの「--single-transaction」オプションの動作の変更

random関数のアルゴリズムの変更

時間間隔の調整を行う関数の変

intervalで少数を変換する場合の動作の変更

ビューの出力列照合の置換処理の変

chr関数の変更

pg_start_backup、pg_stop_backup関数の削除

plpythonu、plpython2u拡張の削除

数値リテラル判別の厳格化

interval_out関数の変更

jsonpath型の数値リテラルの厳格化

ts_delete/setweight関数の変更

array_to_tsvector関数の変更

EXPLAIN VERBOSE文の一時スキーマの出力の変更

他のオブジェクトに依存される列の削除を制限するように変更

psqlコマンドの\dconfig+の追加

psqlコマンドの特別変数SHOW_ALL_RESULTSの追加によるデフォルト動作の変更

pg_size_pretty/pg_size_bytes関数の変更

psqlコマンドの\dRs+の出力情報の追加

numericの位取りに負の値を指定できるように変更

pg_event_trigger_ddl_commands関数の変更

timezone関数の変更

psqlのクエリ内の「--」コメントの動作の変更

psqlの「--」コメントのみの行の履歴の変更

psqlコマンドの\dl+の出力情報の追加

min/max関数の変更

Oracleデータベース互換機能で定義される全てのオブジェクトのスキーマの変更

Oracleデータベース互換機能のnvl2関数の変更

PL/pgSQL変数CONSTANT指定の強制性の変更

NaN、infinity、-infinityに対してデータ秘匿化を適用した場合の表示結果を変更

DECLARE STATEMENT文より定義された識別子の有効範囲の変更

プレコンパイル結果の変更

トリガの置換処理の変更

NO SCROLL」のカーソルの動作の変更

WITH句が付ける場合の「INSERT...SELECT」の動作の変更

btree_ginのインデックスを利用する場合の「"char"」にキャスト動作の変更

PGTYPESnumeric_to_int関数にINT_MIN「-2147483648」を渡す場合の結果の変更

パーティションの子テーブルのトリガ動作の変更

pg_size_pretty関数にマイナス値を渡す場合の結果の変更

生成列(generated column)の計算式に「Record」タイプが指定できないように変更

生成列(generated column)付けのテーブルの場合のALTER TABLE...INHERITの動作変更

カスタムオプションのパラメータ名の制限を追加

EXTRACT関数の出力の変更

psqlの\connectコマンドの動作の変更

psqlコマンドの\d+の出力情報の追加

IDENTITY列の作成処理の動作の変更

拡張データ型の演算子「@」と「~」の削除

正規表現後方参照の動作の変更

正規表現で[\w-]をサポートしない

bt_page_stats()関数の変更

bt_metap()関数の変更

テーブルのアクセス権の変更よりの問い合わせの動作の変更

子テーブル上にルール作成(CREATE RULE)動作の変更

インクリメンタルソートの場合の出力結果の変更

to_tsquery関数の出力の変更

websearch_to_tsquery関数の出力の変更

タイムゾーンの最新化

pgbenchコマンドの「-D」/「--define」オプションの変更

PL/pgSQLでarray型の変数の設定不可

slope関の仕様の変更

ウィンドウ関数の動作の変更

幾何データ型の演算子「@」と「~」の削除

psqlの\connectコマンドの動作の変更

width_bucket()関数の変更

COPYコマンドに同じオプションを複数回に指定する場合のチェック動作変更

ポストフィックスの演算子をサポートしないように変更

階乗処理関連の演算子「!」、演算子「!!」および関数numeric_facの削除

GiSTのインデックス利用する場合のソート結果の変更

string_to_array関数の説明の変更

psqlコマンドの\d+の出力情報の追加

intarry拡張の「<@」と「@>」演算子の最適化を対応しないように変更

psqlコマンドの\dRs+の出力情報の追加

pg_last_committed_xact()関数の変更

階乗関数factorialの仕様変更

var_samp/stddev_samp関数の動作変更

CREATE/DROP LANGUAGEコマンドの言語名を指定時の動作変更

ecpg/ecobpgの「elif」指示子の動作の変更

ltreeでlquery構文のNOT(!)の処理の変更

txid_で始まる関数変更

psqlの\dのTOASTテーブルに対する出力の改善

psqlの\eコマンドの編集内容の再表示の改善

全文検索の問い合わせの結果の変更

DECLARE CURSOR ... WITH HOLDの動作の変更

psqlの\gsetコマンドで特別変数の変更の防止

異なるデータ型の日付を比較時の動作の変更

to_date()とto_timestamp()関数の変更

pg_stat_statementsのSELECT問い合わせ実行の統計処理の変更

CREATE EXTENSIONのFROMオプションをサポートしないように変更

pg_available_extension_versions()の結果に情報の追加

pg_pltemplateカタログの削除

psqlコマンドの「--help」の出力情報の追加

psqlコマンドの\d+の出力情報の追加

psqlのデフォルトプロンプトにトランザクション状態の追加

CHECK制約の「NO INHERIT」プロパティを伝播するように変更

opaque型がサポートしないように変更

旧版の外部キー制約の定義をサポートしないように変更

旧版の演算子クラスの定義をサポートしないように変更

スーパーユーザのみssl_passphrase_commandの設定値を参照できるように変更

pg_triggerカタログにtgparentid列の追加

bt_metap()/bt_page_items()関数の変更

統計情報ビューpg_stat_activityにleader_pid列の追加

デフォルト以外の照合順序を使用するインデックスの制約動作の変更

ALTER MATERIALIZED VIEW ... RENAME COLUMN実施時のコマンドタグの変更

ALTER FOREIGN TABLE ... RENAME COLUMN実施時のコマンドタグの変更

補助プロセスのPIDはpg_stat_sslに記録しないように変更

補助プロセスのPIDはpg_stat_gssapiに記録しないように変更

ltreeにおいて、中括弧付きアスタリスクの処理の変更

json_to_tsvector/jsonb_to_tsvector関数のfilterのチェックルールの変更

SIMILAR TO ... ESCAPE NULL が必ず NULL を返すように変更

Oracleデータベース互換機能のto_multibyte()にバックスラッシュを入力した際の出力結果の変更

Oracleデータベース互換機能のto_char()に浮動小数点型を入力した際の出力桁数の変更

データ秘匿化が可能なデータ型でない型を戻り値として返す演算子または関数を実行した場合に、エラーとなるように変更

Oracleデータベース互換機能のUTL_FILEの削除

psqlコマンドの\conninfoの出力の変更

psqlコマンドの\helpの出力の変更

XML関数のさまざまな不具合の修正

to_timestamp()/to_date()関数の変更

SERIALIZABLE分離モードでパラレルクエリが使用できるように変更

単一の子しか持たないパーティションテーブルおよびUNION ALLの問い合わせ最適化の改善

psqlの\dと\zのパーティションテーブルに対する表示の改善

システムビューpg_indexesにパーティションインデックスを含むように変更

パーティションテーブルにテーブルスペースの指定ができるように変更

パーティション境界に任意の式を記述できるように変更

パーティションテーブルを参照する外部キーのサポート

動的共有メモリを無効化する設定の廃止

information_schemaビューで、オブジェクト名の列をvarchar型ではなく、name型として扱うように変更

テーブルのname型の列がデフォルトでC照合順序を持つように変更

psqlの「\pset format ..」コマンドでユニークでない略記の禁止

pg_restoreの動作の変更

pg_verify_checksumsの改名

xpath()関数 や XMLTABLE による値の作成で出力を変更

SQLスタイルの substring(.. from … for ..)関数の動作の変更

新たなアルゴリズムを使用することで、real型、double precision型の値を出力する際の性能改善

幾何関数と演算子のコードリファクタリング

timetravel拡張廃止

abstime、reltime、tintervalの各データ型廃止

oid列の特別な振る舞い廃止

Python言語のサポートの変更

power関数のPOSIX準拠

to_number関数のテンプレート区切り文字が一致しない場合の動作変更

to_date、to_number、to_timestamp関数でマルチバイトテンプレート文字列を指定した場合の動作変更

to_char、to_number、to_timestamp関数のダブルクォート内でバックスラッシュを指定した場合の動作変更

XML関数における相対パスの扱いの変更

拡張問い合わせプロトコルにおけるstatement_timeoutの適用範囲の変更

ラージオブジェクトの権限チェックタイミングの変更

adminpackのpg_file_read、pg_file_length、pg_logfile_rotate関数の削除

拡張機能におけるGUC_LIST_QUOTE指定のカスタムパラメタ定義時の動作の変更

red-blackツリーサポート関数の名前の変更

chkpass拡張の削除

ダブルクォートで括ったコマンドオプションの小文字への自動変換の廃止

psqlコマンドの\d+の出力情報の追加

pg_basebackupの動作の変更

いくつかの関数で変動性区分を変更

いくつかの関数をPARALLEL UNSAFEに変更

アプリケーションの接続先切り替え機能の指定方法の変更

アプリケーションの接続先切り替え機能で接続するサーバの順番の変更

C言語およびCOBOL言語による埋め込みSQLアプリケーションのOSS PostgreSQL互換

Vertical Clustered Index(VCI)の選択条件変更

システム管理関数の名称変更

システム情報関数の返却項目の名称変更

FROM句にシーケンスを指定した場合の返却列の変更

範囲外の値を入力した場合のto_date関数とto_timestamp関数の動作変更

選択リストに集合を返す関数を指定した場合の動作変更

同一テーブルが複数回更新される場合の文単位のトリガの動作変更

C言語関数におけるVersion 0呼び出し規約の削除

Oracleデータベース互換機能のrpad関数にマルチバイト文字を入力した場合の返却結果の変更

money型をbigint型で除算する場合の演算方法の変更

cubeモジュールの~>演算子の振る舞いの変更

tsearch2モジュールの削除

psqlコマンドの特別変数に不当な値を指定した場合の動作変更

psqlコマンドの\dおよび\dDの出力形式の変更

PL/Tclの自動ロード機能の削除

PL/Pythonにおける複合型配列の扱いの変更

DHパラメータのサイズ変更

to_char関数におけるマイナス符号の扱いの変更

無限大のタイムスタンプを入力した場合のextract関数の戻り値の変更

三角関数のPOSIX準拠

行集合を返す関数がNULLを返せるように変更

PL/pgSQLのRAISEコマンドにおけるCONTEXTメッセージを出力するように変

テキスト検索パーサにおける数字から始まるメールアドレスやホスト名の解析方法の変更

関数をORDER BYソートの順序で実行するように変更

日付やタイムスタンプの限界値チェックの強化

OIDを取得するシステムカタログ情報関数における引数のデータ型の変更

不当な値を入力した場合のシステムカタログ情報関数の動作変更

レプリケーションSQL関数pg_replication_origin_xact_resetの引数の削除

psqlコマンドの-cオプションを指定した場合に起動用ファイルを読み込むように変

画面表示モードが自動設定の場合のpsqlコマンドの表示方法の変更

psqlコマンドの\df+の出力情報の追加

環境変数PAGERに空文字列または全て空白文字の文字列を指定した場合のpsqlコマンドの表示方法の変更

pgbenchコマンドの独自スクリプトの書式変更

pgbenchコマンドのスクリプトファイルメタコマンド\setrandomの削除

hstoreのhstore_to_jsonb_loose関数の数値判別の厳格化

pageinspectのheap_page_items関数の返却情報の追加

Oracleデータベース互換機能利用時の変更

◎:Fujitsu Enterprise Postgresによる非互換あり

○:OSSによる非互換あり

-:非互換なし