リリース日: 2025-09-25
PostgreSQL 18には、以下をはじめとする多数の新機能と拡張が含まれています。
シーケンシャルスキャン、ビットマップヒープスキャン、バキューム、その他操作のパフォーマンスを改善できる非同期I/O(AIO)サブシステム。
pg_upgradeはオプティマイザ統計を保持するようになりました。
より多くの場合で複数列B-treeインデックスを使用できる「スキップスキャン」検索のサポート。
読み取り操作中に値を計算する仮想生成列。 これが生成列のデフォルトになりました。
OAuth認証サポート。
PRIMARY KEY、UNIQUE、およびFOREIGN KEY制約の一時的な制約、または範囲に対する制約。
PostgreSQL 18の上記の項目とその他の新機能は次節でより詳しく説明されます。
以前のリリースからデータを移行したい時は、どのリリースについても、pg_dumpallを利用したダンプとリストア、あるいはpg_upgradeや論理レプリケーションの使用が必要です。 新たなメジャーバージョンへの移行に関する一般的な情報については18.6を参照してください。
バージョン18には、以前のバージョンとの互換性に影響するかもしれない多数の変更点が含まれています。 以下の非互換性に注意してください。
initdbのデータチェックサムのデフォルト値が有効に変更されました。 (Greg Sabino Mullane) §
チェックサムは、新しいinitdbの--no-data-checksumsオプションで無効にすることができます。
pg_upgradeはクラスタのチェックサム設定の一致を必要とするため、この新しいオプションはチェックサム無しの古いクラスタをアップグレードする際に役立ちます。
タイムゾーン略称の扱いが変更されました。 (Tom Lane) §
システムは今後、サーバ変数timezone_abbreviationsを確認する前に、現在のセッションのタイムゾーン略称を優先するようになりました。
以前はtimezone_abbreviationsが最初にチェックされていました。
MD5パスワード認証が非推奨になりました。 (Nathan Bossart) §
MD5パスワードのサポートは、将来のメジャーバージョンリリースで削除される予定です。
CREATE ROLEとALTER ROLEは、MD5パスワードを設定する際に非推奨の警告を出力するようになりました。
これらの警告は、md5_password_warningsパラメータをoffに設定することで無効にできます。
VACUUMとANALYZEが親の継承子テーブルも処理するようになりました。 (Michael Harris) §
以前の動作は、新しいONLYオプションを使用することで実行できます。
COPY FROMがCSVファイルの読み込み時に、\.をファイル終端マーカーとして扱わないようになりました。
(Daniel Vérité, Tom Lane)
§
§
psqlは、STDINからCSVファイルを読み込む際に、引き続き\.をファイル終端マーカーとして扱います。
PostgreSQL 18サーバに接続する古いpsqlクライアントでは、\copyの問題が発生する可能性があります。
また、このリリースでは、\.は行に単独で記述する必要があります。
UNLOGGEDパーティションテーブルが禁止されました。 (Michael Paquier) §
以前はALTER TABLE SET [UN]LOGGEDは何もせず、UNLOGGEDパーティションテーブルを作成しても、その子テーブルがUNLOGGEDになりませんでした。
AFTERトリガは、トリガイベントがキューに追加された時点で有効なロールで実行されるようになりました。
(Laurenz Albe)
§
以前は、このようなトリガはトリガの実行時(例えばCOMMIT時)に有効であったロールとして実行されていました。 これは、キュー追加時とトランザクションコミットの間でロールが変更される場合に重要です。
GRANT/REVOKEで機能していなかったRULE権限が削除されました。 (Fujii Masao) §
これらはPostgreSQL 8.2以降、機能していませんでした。
pg_backend_memory_contextsビューのparent列が削除されました。
(Melih Mutlu)
§
pg_backend_memory_contextsビューにpath列が追加されたため、これは不要になりました。
pg_backend_memory_contextsビューのlevel列とpg_log_backend_memory_contexts()関数が1始まりに変更されました。
(Melih Mutlu, Atsushi Torikoshi, David Rowley, Fujii Masao)
§
§
§
これらは以前0始まりでした。
全文検索において、常にlibcを使用するのではなく、クラスタのデフォルトの照合順序プロバイダを使用して設定ファイルと辞書を読み込むように変更されました。 (Peter Eisentraut) §
LC_CTYPEで処理される文字に対してlibcとは異なる動作をする非libcプロバイダ(例えばICUやbuiltinなど)をデフォルトで使用しているクラスタでは、一部の全文検索関数とpg_trgm拡張の動作が変更される可能性があります。 このようなクラスタをpg_upgradeを使用してアップグレードする場合は、アップグレード後に全文検索とpg_trgmに関するすべてのインデックスを再作成することが推奨されます。
PostgreSQL 18と前メジャーリリースとの詳細な変更点を記載しました。
不要なテーブルの自己結合が自動的に除去されるようになりました。 (Andrey Lepikhov, Alexander Kuzmenkov, Alexander Korotkov, Alena Rybakina) §
この最適化は、サーバ変数enable_self_join_eliminationを使用して無効にできます。
オプティマイザ統計を改善するために、一部のIN (VALUES ...)がx = ANY ...に変換されるようになりました。
(Alena Rybakina, Andrei Lepikhov)
§
インデックス処理を高速化するために、OR句を配列に変換できるようになりました。
(Alexander Korotkov, Andrey Lepikhov)
§
INTERSECT、EXCEPT、ウィンドウ集約関数、ビュー列の別名の処理が高速化されました。
(Tom Lane, David Rowley)
§
§
§
§
並べ替えを回避するために、SELECT DISTINCTのキーを内部的に並べ替えられるようになりました。
(Richard Guo)
§
この最適化は、enable_distinct_reorderingを使用して無効にできます。
他の列に関数的に従属しているGROUP BY列が無視されるようになりました。
(Zhang Mingli, Jian He, David Rowley)
§
GROUP BY句に、一意インデックスのすべての列と、同じテーブルの他の列が含まれる場合、これらの他の列は冗長であるため、グループ化から除外できます。
これは、非遅延主キーではすでに当てはまっていました。
GROUPING SETSの一部HAVING句をWHERE句にプッシュできるようになりました。
(Richard Guo)
§
§
§
§
これにより、より早い段階での行フィルタリングが可能になりました。
このリリースでは、誤った結果を返していた一部のGROUPING SETS問い合わせも修正されています。
numeric型およびtimestamp型の値を使用したgenerate_series()の行推定値が改善されました。
(David Rowley, Song Jinzhou)
§
§
オプティマイザがRight Semi Joinプランを使用できるようになりました。
(Richard Guo)
§
準結合は、少なくとも1つの一致があるかどうかを確認する必要がある場合に使用されます。
マージ結合でインクリメンタルソートが使用できるようになりました。 (Richard Guo) §
多数のパーティションにアクセスする問い合わせの実行計画作成の効率が改善されました。 (Ashutosh Bapat, Yuya Watari, David Rowley) § §
より多くのケースでパーティション単位の結合ができるようになり、メモリ使用量が削減されました。 (Richard Guo, Tom Lane, Ashutosh Bapat) § §
パーティションへの問い合わせのコスト見積りが改善されました。 (Nikita Malakhov, Andrei Lepikhov) §
SQL言語関数の実行計画のキャッシュが改善されました。 (Alexander Pyhalov, Tom Lane) § §
無効化されたオプティマイザ機能の処理が改善されました。 (Robert Haas) §
btreeインデックスのスキップスキャンが利用可能となりました。 (Peter Geoghegan) § §
これにより、マルチカラムbtreeインデックスをより多くの場合に使用することができます。 例えば、最初または前の方のインデックス付けされた列に制限がない場合(または、等しくない列がある場合)や、後の方のインデックス付けされた列に有用な制限がある場合などです。
非btree一意インデックスをパーティションキーやマテリアライズドビューで使用できるようになりました。 (Mark Dilger) § §
インデックス型は依然として等価比較をサポートする必要があります。
GINインデックスの並列作成が可能になりました。
(Tomas Vondra, Matthias van de Meent)
§
値のソートサポートにより、範囲型GiSTおよびbtreeインデックス構築が高速化されました。 (Bernd Helmle) §
非同期I/Oサブシステムが追加されました。 (Andres Freund, Thomas Munro, Nazir Bilal Yavuz, Melanie Plageman) § § § § § § § § § § §
この機能により、バックエンドは複数の読み取り要求をキューイングできるようになり、シーケンシャルスキャン、ビットマップヒープスキャン、バキューム処理などをより効率的に実行できます。
これは、サーバ変数io_methodによって有効化され、制御用にサーバ変数io_combine_limitとio_max_combine_limitが追加されました。
また、fadvise()をサポートしないシステムでeffective_io_concurrencyとmaintenance_io_concurrencyにゼロより大きな値を設定できます。
新しいシステムビューpg_aiosは、非同期I/Oに使用されているファイルハンドルを表示します。
多くのリレーションにアクセスする問い合わせのロック性能が改善しました。 (Tomas Vondra) §
ハッシュ結合とGROUP BYのパフォーマンスが向上して、メモリ使用量が削減されました。
(David Rowley, Jeff Davis)
§
§
§
§
§
これにより、EXCEPTで使用されるハッシュ集合操作と、サブプラン値のハッシュ検索も改善されます。
通常のバキューム処理で全可視ページであっても、一部のページを凍結できるようになりました。 (Melanie Plageman) § §
これにより、後続のリレーション全体の凍結でのオーバーヘッドが軽減されます。 凍結の積極性はサーバ変数およびテーブルごとの設定であるvacuum_max_eager_freeze_failure_rateによって制御できます。 従来は、凍結が必要になるまでバキュームは全可視ページを処理しませんでした。
VACUUM実行時のファイル切り捨てを制御するサーバ変数vacuum_truncateが追加されました。 (Nathan Bossart, Gurjeet Singh) §
同じ名前と動作を持つストレージレベルのパラメータは既に存在していました。
サーバ変数effective_io_concurrencyとmaintenance_io_concurrencyのデフォルト値が16に増やされました。 (Melanie Plageman) § §
これにより、現代のハードウェアをより正確に反映できます。
サーバ変数log_connectionsのロギング粒度が向上しました。 (Melanie Plageman) §
このサーバ変数は以前はブール値だけでしたが、現在もサポートされています。
接続段階の継続時間を報告するためのlog_connectionsオプションが追加されました。
(Melanie Plageman)
§
クライアントIPアドレスを出力するためのlog_line_prefixにエスケープ%Lが追加されました。
(Greg Sabino Mullane)
§
ロック取得の失敗を記録するためのサーバ変数log_lock_failuresが追加されました。 (Yuki Seino, Fujii Masao) § §
具体的には、SELECT ... NOWAITのロック失敗を報告します。
VACUUM、ANALYZE、およびそれらの自動実行で費やされた時間を報告するようpg_stat_all_tablesとその類型が修正されました。
(Sami Imseih)
§
新しい列はtotal_vacuum_time、total_autovacuum_time、total_analyze_time、およびtotal_autoanalyze_timeです。
VACUUMとANALYZEに遅延時間の報告が追加されました。 (Bertrand Drouvot, Nathan Bossart) § §
この情報は、サーバログ、システムビューpg_stat_progress_vacuumとpg_stat_progress_ANALYZE、およびVERBOSEモード時のVACUUMとANALYZEの出力に表示されます。
追跡はサーバ変数track_cost_delay_timingで有効にする必要があります。
ANALYZE VERBOSEにWAL、CPU、平均読み取り統計の出力が追加されました。
(Anthonin Bonnefoy)
§
§
VACUUM/ANALYZE (VERBOSE)および自動バキュームのログ出力に完全なWALバッファカウントが追加されました。
(Bertrand Drouvot)
§
バックエンドごとのI/O統計のレポート機能が追加されました。 (Bertrand Drouvot) § §
統計はpg_stat_get_backend_io()経由でアクセスします。
バックエンドごとのI/O統計はpg_stat_reset_backend_stats()経由でクリアできます。
I/Oアクティビティをバイト単位で報告するpg_stat_io列が追加されました。
(Nazir Bilal Yavuz)
§
新しい列はread_bytes、write_bytes、extend_bytesです。
常にBLCKSZと等しいop_bytes列は削除されました。
pg_stat_ioにWAL I/Oアクティビティの行が追加されました。
(Nazir Bilal Yavuz, Bertrand Drouvot, Michael Paquier)
§
§
§
これにはWALレシーバのアクティビティと、そのような書き込みのためのイベント待機が含まれます。
サーバ変数track_wal_io_timingで制御するWALタイミングの追跡をpg_stat_walからpg_stat_ioに変更します。
(Bertrand Drouvot)
§
pg_stat_walから読み取り/同期の列が削除されました。
(Bertrand Drouvot)
§
§
これにより、wal_write、wal_sync、wal_write_time、wal_sync_timeの各列が削除されます。
バックエンドごとのWAL統計を返すpg_stat_get_backend_wal()関数が追加されました。
(Bertrand Drouvot)
§
バックエンドごとのWAL統計は、pg_stat_reset_backend_stats()でクリアできます。
PGDATA/pg_wal/summariesの内容を具体的にリストするpg_ls_summariesdir()関数が追加されました。
(Yushi Ogiwara)
§
完了したチェックポイントの数を報告するpg_stat_checkpointer.num_done列が追加されました。
(Anton A. Melnikov)
§
num_timedおよびnum_requested列は完了したチェックポイントとスキップされたチェックポイントの両方をカウントします。
SLRUバッファの書き込みを報告するpg_stat_checkpointer.slru_written列が追加されました。
(Nitin Jadhav)
§
また、チェックポイントサーバのログメッセージを変更して、共有バッファSLRUバッファの値を別々に報告するようにします。
pg_stat_databaseに並列ワーカーのアクティビティを報告する列が追加されました。
(Benoit Lobréau)
§
新しい列はparallel_workers_to_launchとparallel_workers_launchedです。
定数リストのquery id計算では、最初と最後の定数のみを考慮するようになりました。 (Dmitry Dolgov, Sami Imseih) § § §
ジャンブリングはpg_stat_statementsで使用されます。
同じリレーション名を使用する問い合わせをグループ化するためにquery id計算が調整されました。 (Michael Paquier, Sami Imseih) §
異なるスキーマのテーブルに異なる列名がある場合でも当てはまります。
メモリコンテキストの型を報告するpg_backend_memory_contexts.type列が追加されました。
(David Rowley)
§
メモリコンテキストの親を示すpg_backend_memory_contexts.path列が追加されました。
(Melih Mutlu)
§
データベースアクセス制御の詳細を取得するpg_get_acl()関数が追加されました。
(Joel Jacobson)
§
§
ラージオブジェクトの権限を確認するhas_largeobject_privilege()関数が追加されました。
(Yugo Nagata)
§
ALTER DEFAULT PRIVILEGESでラージオブジェクトのデフォルト権限を定義できるようになりました。 (Takatsuka Haruka, Yugo Nagata, Laurenz Albe) §
定義済みロールpg_signal_autovacuum_workerが追加されました。
(Kirill Reshke)
§
これにより、自動バキュームのワーカーにシグナルを送ることができます。
OAuth認証方式のサポートが追加されました。 (Jacob Champion, Daniel Gustafsson, Thomas Munro) §
これにより、pg_hba.confにOAuth認証方式、libpq OAuthオプション、トークン検証ライブラリをロードするためのサーバ変数oauth_validator_libraries、必要なコンパイル時ライブラリを追加するためのconfigureフラグ--with-libcurlが追加されます。
コロンで区切られた複数のTLSv1.3暗号スイートの指定が出来るサーバ変数ssl_tls13_ciphersが追加されました。 (Erica Zhang, Daniel Gustafsson) §
サーバ変数ssl_groupsのデフォルト値が楕円曲線X25519を含むものに変更されました。 (Daniel Gustafsson, Jacob Champion) §
サーバ変数ssl_ecdh_curveの名前がssl_groupsに変更され、コロンで区切られた複数のECDH曲線が指定できるようになりました。
(Erica Zhang, Daniel Gustafsson)
§
以前の名前も引き続き使用可能です。
キャンセル要求キーが256ビットになりました。 (Heikki Linnakangas, Jelte Fennema-Nio) § §
これは、サーバとクライアントが本リリースで導入されたワイヤプロトコルバージョン3.2をサポートしている場合にのみ可能です。
バックグラウンドワーカーの最大数を指定するサーバ変数autovacuum_worker_slotsが追加されました。 (Nathan Bossart) §
この変数を設定すると、サーバを再起動することなく実行時にautovacuum_max_workersをこの最大値まで調整できます。
自動バキュームをトリガするデッドタプルの固定数を指定できるようになりました。 (Nathan Bossart, Frédéric Yhuel) §
サーバ変数はautovacuum_vacuum_max_thresholdです。 トリガには引き続きパーセンテージが使用されます。
サーバ変数max_files_per_processが、バックエンドによって開かれたファイルのみを制限対象とするよう変更されました。 (Andres Freund) §
以前は、postmasterによって開かれたファイルもこの制限にカウントされていました。
必要なセマフォ数を報告するためのサーバ変数num_os_semaphoresが追加されました。 (Nathan Bossart) §
これはオペレーティングシステムの設定に役立ちます。
拡張の制御ファイルの場所を指定するためのサーバ変数extension_control_pathが追加されました。 (Peter Eisentraut, Matheus Alcantara) § §
サーバ変数idle_replication_slot_timeoutを使用して、非アクティブなレプリケーションスロットを自動的に無効化できるようになりました。 (Nisha Moond, Bharath Rupireddy) §
アクティブなレプリケーションオリジンの最大数を制御できるサーバ変数max_active_replication_originsが追加されました。 (Euler Taveira) §
これは以前はmax_replication_slotsによって制御されていましたが、この新しい設定により、必要なスロット数が少ない場合でもオリジンの数を増やすことができます。
生成列の値を論理的にレプリケートできるようになりました。 (Shubham Khanna, Vignesh C, Zhijie Hou, Shlok Kyal, Peter Smith) § § § §
パブリケーションで列リストを指定した場合、生成列と非生成列を問わず、指定されたすべての列がパブリッシュされます。
列リストが指定されていない場合、パブリケーションオプションpublish_generated_columnsによって生成列をパブリッシュするかどうかが制御されます。
以前は生成列はレプリケートされず、サブスクライバーは可能な場合は値を計算する必要がありました。
これは、このような機能を持たないPostgreSQL以外のサブスクライバーの場合に特に便利です。
デフォルトのCREATE SUBSCRIPTIONストリーミングオプションがoffからparallelに変更されました。
(Vignesh C)
§
ALTER SUBSCRIPTIONでレプリケーションスロットの二相コミットの動作を変更できるようになりました。 (Hayato Kuroda, Ajin Cherian, Amit Kapila, Zhijie Hou) § §
論理レプリケーションの変更を適用する際のコンフリクトがログ記録されるようになりました。 (Zhijie Hou, Nisha Moond) § § § § §
pg_stat_subscription_statsの新しい列にもレポートされます。
生成列を仮想列として許可し、デフォルト設定にします。 (Peter Eisentraut, Jian He, Richard Guo, Dean Rasheed) § § §
仮想生成列は、列が書き込まれるのではなく、読み取られるときに値を生成します。
書き込み動作は、STOREDオプションを使用して指定できます。
DML問い合わせのRETURNING句にOLD/NEWのサポートが追加されました。
(Dean Rasheed)
§
以前は、RETURNING句はINSERTとUPDATEでは新しい値のみを返し、DELETEでは古い値のみを返していました。
MERGEは、実行された内部問い合わせの適切な値を返していました。
この新しい構文では、INSERT/UPDATE/DELETE/MERGEのRETURNINGリストで、特別なエイリアスoldとnewを使用することで、古い値と新しい値を明示的に返すことができます。
これらのエイリアスは、識別子の衝突を避けるために名前を変更できます。
既存のローカルテーブルと同様の外部テーブルを作成できるようになりました。 (Zhang Mingli) §
非決定論的な照合順序でLIKEを使用できるようになりました。
(Peter Eisentraut)
§
非決定論的な照合順序でテキスト位置検索関数を使用できるようになりました。 (Peter Eisentraut) §
以前はエラーが発生していました。
組み込みの照合順序プロバイダPG_UNICODE_FASTが追加されました。
(Jeff Davis)
§
このロケールは大文字と小文字のマッピングをサポートしますが、自然言語順ではなく、コードポイント順でソートされます。
VACUUMとANALYZEがパーティションテーブルを子テーブルを処理せずに実行できるようになりました。 (Michael Harris) §
これは、新しいONLYオプションで有効になります。
自動バキュームがパーティションテーブルではなく、その子テーブルのみを処理するためこれは便利です。
リレーション単位およびカラム単位のオプティマイザ統計を変更する関数が追加されました。 (Corey Huinker) § § §
関数は、pg_restore_relation_stats()、pg_restore_attribute_stats()、pg_clear_relation_stats()、pg_clear_attribute_stats()です。
ファイルコピー方法を制御するサーバ変数file_copy_methodが追加されました。 (Nazir Bilal Yavuz) §
これにより、CREATE DATABASE ... STRATEGY=FILE_COPYおよびALTER DATABASE ... SET TABLESPACEでファイルコピーまたはクローンのどちらを使用するかが制御されます。
重複しないPRIMARY KEY制約、UNIQUE制約、外部キー制約が指定できるようになりました。
(Paul A. Jungwirth)
§
§
これは、PRIMARY KEY制約とUNIQUE制約の場合はWITHOUT OVERLAPS句で、外部キー制約の場合はPERIOD句で指定され、いずれも最後に指定された列に適用されます。
CHECK制約と外部キー制約をNOT ENFORCEDとして指定できるようになりました。
(Amul Sul)
§
§
これにより、pg_constraint.conenforced列も追加されます。
主キー/外部キーの関係において、決定論的照合順序、または同一の非決定論的照合順序の使用が必要となりました。 (Peter Eisentraut) §
これらの要件が満たされていない場合、pg_upgradeでも使用されるpg_dumpのリストアは失敗します。これらのアップグレード方法を成功させるには、スキーマ変更が必要です。
列のNOT NULL指定がpg_constraintに格納されるようになりました。
(Álvaro Herrera, Bernd Helmle)
§
§
これにより、NOT NULL制約に名前を指定できるようになります。
また、これにより外部テーブルにNOT NULL制約が追加され、ローカルテーブルにNOT NULL継承制御が追加されます。
ALTER TABLEでNOT NULL制約のNOT VALID属性を設定できるようになりました。
(Rushabh Lathia, Jian He)
§
NOT NULL制約の継承可能性を変更できるようになりました。
(Suraj Kharage, Álvaro Herrera)
§
§
パーティションテーブルでNOT VALID外部キー制約が可能になりました。
(Amul Sul)
§
パーティションテーブルの制約を削除する際にONLYが利用可能となりました。
(Álvaro Herrera)
§
これは以前は誤って禁止されていました。
COPY FROMで無視できる無効な行数を制御するためにREJECT_LIMITが追加されました。
(Atsushi Torikoshi)
§
これは、ON_ERROR = 'ignore'の時に使用できます。
データが格納されたマテリアライズドビューからのCOPY TOによる行のコピーが可能になりました。
(Jian He)
§
COPYのLOG_VERBOSITYレベルに無視された行のログ出力を抑制するsilentが追加されました。
(Atsushi Torikoshi)
§
この新しいレベルでは、on_error = 'ignore'の場合に破棄された入力行の出力が抑制されます。
外部テーブルに対するCOPY FREEZEが禁止されました。
(Nathan Bossart)
§
以前はCOPYは動作しましたが、FREEZEは無視されたため、このコマンドが禁止されました。
EXPLAIN ANALYZEにBUFFERS出力が自動的に含まれました。
(Guillaume Lelarge, David Rowley)
§
EXPLAIN (WAL)出力にWALバッファフル回数が追加されました。
(Bertrand Drouvot)
§
EXPLAIN ANALYZEで、インデックススキャンノードごとに使用されたインデックス検索数が表示されるようになりました。
(Peter Geoghegan)
§
EXPLAINが小数点以下の行数が出力されるように修正されました。
(Ibrar Ahmed, Ilia Evdokimov, Robert Haas)
§
§
EXPLAIN出力に、Material、Window Aggregate、共通テーブル式ノードのメモリとディスク使用量の詳細が追加されました。
(David Rowley, Tatsuo Ishii)
§
§
§
§
EXPLAIN出力にウィンドウ関数の引数に関する詳細が追加されました。
(Tom Lane)
§
EXPLAIN ANALYZEにParallel Bitmap Heap Scanワーカーキャッシュ統計が追加されました。
(David Geier, Heikki Linnakangas, Donghang Lin, Alena Rybakina, David Rowley)
§
EXPLAIN ANALYZEで無効化されたノードが出力されるようになりました。
(Robert Haas, David Rowley, Laurenz Albe)
§
§
§
Unicodeの完全な大文字小文字のマッピングと変換が改善されました。 (Jeff Davis) § §
これにより、条件付きおよびタイトルケースのマッピング、単一文字から複数文字へマッピングが可能になりました。
jsonbのNULL値をNULLとしてスカラ型にキャストできるようになりました。
(Tom Lane)
§
以前は、このようなキャストはエラーが発生していました。
NULL配列要素を削除できるようにするjson{b}_strip_NULLsのオプションパラメータが追加されました。
(Florents Tselai)
§
配列の最初の次元をソートする関数array_sort()が追加されました。
(Junwang Zhao, Jian He)
§
配列の最初の次元を逆にする関数array_reverse()が追加されました。
(Aleksander Alekseev)
§
整数型とbyteaの間のキャストが可能になりました。
(Aleksander Alekseev)
§
整数値はbyteaの2の補数値として格納されます。
XMLエラーコードがより標準SQLに準拠するよう改善されました。
(Tom Lane)
§
これらのエラーは、SQLSTATEを介して報告されます。
より高度な大文字小文字を区別しないマッチングを可能にする関数casefold()が追加されました。
(Jeff Davis)
§
これにより、より正確な比較が可能になります。つまり、1つの文字が複数の大文字や小文字と同等のものである場合や、大文字または小文字変換によって文字数が変化する場合に対応します。
配列型および複合型に対してMIN()/MAX()集約関数が使用できるようになりました。
(Aleksander Alekseev, Marat Buharov)
§
§
負の値に対するEXTRACT(QUARTER ...)出力が改善されました。
(Tom Lane)
§
to_number()にローマ数字のサポートが追加されました。
(Hunaid Sohail)
§
これはRNパターン経由でアクセスされます。
UUIDバージョン7生成関数uuidv7()が追加されました。
(Andrey Borodin)
§
このUUID値は時間的にソート可能です。
明示的にバージョン4 UUIDを生成する関数エイリアスuuidv4()が追加されました。
CRC値を計算する関数crc32()およびcrc32c()が追加されました。
(Aleksander Alekseev)
§
PL/pgSQLで名前付きカーソル引数に=>構文が使用できるようになりました。
(Pavel Stehule)
§
以前は:=のみ使用できました。
regexp_match[es]()/regexp_like()/regexp_replace()/regexp_count()/regexp_instr()/regexp_substr()/regexp_split_to_table()/regexp_split_to_array()で名前付き引数が使用できるようになりました。
(Jian He)
§
マイナーバージョンを含む完全なプロトコルバージョン番号を報告する関数PQfullProtocolVersion()が追加されました。
(Jacob Champion, Jelte Fennema-Nio)
§
接続時に許容されるプロトコルバージョンの最小値と最大値を指定するためのlibpq接続パラメータと環境変数が追加されました。 (Jelte Fennema-Nio) § §
search_pathの変更がクライアントに報告するようになりました。 (Alexander Kukushkin, Jelte Fennema-Nio, Tomas Vondra) § §
認証を含むすべてのメッセージタイプのPQtrace()出力が追加されました。
(Jelte Fennema-Nio)
§
§
§
§
§
SSL鍵情報を出力するlibpq接続パラメータsslkeylogfileが追加されました。
(Abhishek Chanda, Daniel Gustafsson)
§
これはデバッグに役立ちます。
一部のlibpq関数のシグニチャがint64_tを使用するように変更されました。
(Thomas Munro)
§
これらは以前pg_int64を使用していましたが現在は非推奨です。
psqlで名前付きプリペアドステートメントのパース、バインド、クローズができるようになりました。 (Anthonin Bonnefoy, Michael Paquier) § §
これは、新しいコマンド\parse、\bind_named、\close_preparedによって実現されます。
パイプライン問い合わせの発行を可能にするpsqlのバックスラッシュコマンドが追加されました。 (Anthonin Bonnefoy) § § §
新しいコマンドは、\startpipeline、\syncpipeline、\sendpipeline、\endpipeline、\flushrequest、\flush、\getresultsです。
psqlプロンプトへのパイプライン状態の追加と、関連する状態変数の追加ができるようになりました。 (Anthonin Bonnefoy) §
新しいプロンプト文字は%Pで、新しいpsql変数はPIPELINE_SYNC_COUNT、PIPELINE_COMMAND_COUNT、PIPELINE_RESULT_COUNTです。
psqlプロンプトに接続サービス名を追加したり、psql変数経由でアクセスできるようになりました。 (Michael Banck) §
すべてのリストコマンドで拡張モードを使用するためのpsqlオプションが追加されました。 (Dean Rasheed) §
バックスラッシュ接尾辞xを追加することでこれが可能になります。
psqlの\conninfoが表形式でより多くの情報を含めるように変更されました。
(Álvaro Herrera, Maiquel Grassi, Hunaid Sohail)
§
psqlの\df+、\do+、\dAo+、\dC+出力に関数のLEAKPROOF属性が追加されました。
(Yugo Nagata)
§
デフォルトの\watch待ち時間を設定するpsql変数WATCH_INTERVALが追加されました。
(Daniel Gustafsson)
§
initdbがチェックサム有効のデフォルト設定に変更されました。 (Greg Sabino Mullane) § §
initdbの新しいオプション--no-data-checksumsは、チェックサムを無効にします。
ヒープ/インデックスファイルの同期を回避するinitdbオプション--no-sync-data-filesが追加されました。
(Nathan Bossart)
§
ファイルの同期を回避するinitdbオプション--no-syncは引き続き使用できます。
欠落したオプティマイザ統計処理のみを計算するvacuumdbオプション--missing-stats-onlyが追加されました。
(Corey Huinker, Nathan Bossart)
§
§
このオプションはスーパーユーザのみが実行でき、オプション--analyze-onlyおよび--analyze-in-stagesとのみ併用できます。
ハードリンクを有効にするpg_combinebackupオプション-k/--linkが追加されました。
(Israel Barth Rubio, Robert Haas)
§
ハードリンクできるのは一部のファイルのみです。 バックアップを個別に使用する場合は、このオプションを使用しないでください。
pg_verifybackupでtar形式のバックアップが検証できるようになりました。 (Amul Sul) §
pg_rewindの--source-serverオプションでデータベース名を指定している場合、--write-recovery-confの出力でその名前が使用されます。
(Masahiko Sawada)
§
デフォルトのcharの符号を変更するpg_resetwalオプション--char-signednessが追加されました。
(Masahiko Sawada)
§
pg_dumpおよびpg_dumpallに通常は除外されるシーケンスデータをダンプする--sequence-dataオプションが追加されました。
(Nathan Bossart)
§
§
pg_dump、pg_dumpall、pg_restoreに--statistics-only、--no-statistics、--no-data、--no-schemaオプションが追加されました。
(Corey Huinker, Jeff Davis)
§
pg_dump、pg_dumpall、pg_restoreに行レベルセキュリティポリシー処理を無効にする--no-policiesオプションが追加されました。
(Nikolay Samokhvalov)
§
これは、異なるポリシーを持つシステムへの移行に有用です。
pg_upgradeがオプティマイザ統計情報を保持できるようになりました。 (Corey Huinker, Jeff Davis, Nathan Bossart) § § § §
拡張統計情報は保存されません。
pg_upgradeに統計情報の保存を無効にする--no-statisticsオプションが追加されました。
pg_upgradeがデータベースチェックを並列に処理できるようになりました。 (Nathan Bossart) § § § § § § § § § § §
これは、既存の--jobsオプションによって制御されます。
ファイルのコピー、クローン、またはリンクのファイルではなく、ディレクトリをスワップするpg_upgradeの--swapオプションが追加されました。
(Nathan Bossart)
§
このモードは潜在的に最も高速です。
新規クラスタのデフォルトchar型符号を設定するpg_upgradeの--set-char-signednessオプションが追加されました。
(Masahiko Sawada)
§
§
これは、PostgreSQL 18より前のクラスタのデフォルトのCPU符号が新しいクラスタと一致しない場合に対応するためです。
pg_createsubscriberにすべてのデータベースの論理レプリカを作成する--allオプションが追加されました。
(Shubham Khanna)
§
pg_createsubscriberにパブリケーションを削除する--cleanオプションが追加されました。
(Shubham Khanna)
§
§
pg_createsubscriberにプリペアドトランザクションを有効にする--enable-two-phaseオプションが追加されました。
(Shubham Khanna)
§
pg_recvlogicalにフェイルオーバースロットを指定する--enable-failoverオプションが追加されました。
(Hayato Kuroda)
§
また、--enable-two-phaseオプションが--two-phaseの同義語として追加され、後者が非推奨となりました。
pg_recvlogical --drop-slotが--dbnameなしで動作できるようになりました。
(Hayato Kuroda)
§
インジェクションポイントの読み込みと実行が分離されました。 (Michael Paquier, Heikki Linnakangas) § §
INJECTION_POINT_LOAD()でインジェクションポイントを作成できるようになりましたが、実行はできません。また、このようなインジェクションポイントはINJECTION_POINT_CACHED()で実行できます。
インジェクションポイントでランタイム引数がサポートされました。 (Michael Paquier) §
IS_INJECTION_POINT_ATTACHED()でインラインインジェクションポイントテストコードが使用できるようになりました。
(Heikki Linnakangas)
§
SIMD (Single Instruction Multiple Data)の使用により、長いJSON文字列の処理性能が改善されました。
(David Rowley)
§
x86 AVX-512命令の使用により、CRC32C計算が高速化されました。 (Raghuveer Devulapalli, Paul Amonson) §
popcount(整数ビットカウント)用のARM NeonおよびSVE CPUの組み込み関数が追加されました。 (Chiranmoy Bhattacharya, Devanga Susmitha, Rama Malladi) § §
NUMA対応を有効にするconfigureオプション--with-libnumaが追加されました。
(Jakub Wartak, Bertrand Drouvot)
§
§
§
関数pg_numa_available()はNUMA対応状況を報告し、システムビューpg_shmem_allocations_numaとpg_buffercache_numaはNUMAノード間の共有メモリの分布状況について報告します。
非常に大きな式インデックスを可能にするため、pg_indexにTOASTテーブルが追加されました。
(Nathan Bossart)
§
pg_attribute.attcacheoff列が削除されました。
(David Rowley)
§
インデックスアクセスメソッドAPIにamgettreeheight、amconsistentequality、amconsistentorderingが追加されました。
(Mark Dilger)
§
§
GiSTサポート関数stratnum()が追加されました。
(Paul A. Jungwirth)
§
pg_controldataにcharのデフォルトCPU符号属性が記録されるようになりました。
(Masahiko Sawada)
§
PL/PythonでPython「LimitedAPI」のサポートが追加されました。 (Peter Eisentraut) § §
これにより、Python 3.xのバージョン不一致による問題を防ぐことができます。
サポートされるPythonの最小バージョンが3.6.8に変更されました。 (Jacob Champion) §
OpenSSL 1.1.1より前のバージョンのサポートが削除されました。 (Daniel Gustafsson) § §
LLVMが有効な場合は、バージョン14以降が必要です。 (Thomas Munro) §
拡張が自身の名前とバージョンを報告できるように、マクロPG_MODULE_MAGIC_EXTが追加されました。
(Andrei Lepikhov)
§
この情報は、新しい関数pg_get_loaded_modules()経由でアクセスできます。
SPI_connect()/SPI_connect_ext()が常に成功SPI_OK_CONNECTを返すことがドキュメント化されました。
(Stepan Neretin)
§
エラーは常にereport()経由で報告されます。
APIおよびABI互換性に関するドキュメントセクションが追加されました。 (David Wheeler, Peter Eisentraut) §
WindowsでのMesonビルドの実験的指定が削除されました。 (Aleksander Alekseev) §
configureオプション--disable-spinlocksと--disable-atomicsが削除されました。
(Thomas Munro)
§
§
32ビットのアトミック操作が必須となりました。
HPPA/PA-RISCアーキテクチャのサポートが削除されました。 (Tom Lane) §
論理スナップショットを検査する拡張pg_logicalinspectが追加されました。 (Bertrand Drouvot) §
EXPLAIN出力にデバッグ詳細を追加する拡張pg_overexplainが追加されました。
(Robert Haas)
§
postgres_fdw_get_connections()に出力列が追加されました。
(Hayato Kuroda, Sagar Dilip Shedge)
§
§
§
§
新しい出力列used_in_xactは外部データラッパーが現在のトランザクションで使用されているかどうか、closedはそれが閉じているかどうか、user_nameはユーザ名、remote_backend_pidはリモートバックエンドのプロセス識別子を示します。
クライアントからのSCRAM認証がpostgres_fdwサーバに渡されるようになりました。 (Matheus Alcantara, Peter Eisentraut) §
これにより、postgres_fdw認証情報のデータベース保存が回避されます。これはpostgres_fdwuse_scram_passthrough接続オプションで有効になります。
libpqは新しい接続パラメータscram_client_keyとscram_server_keyを使用します。
クライアントからのSCRAM認証がdblinkサーバに渡されるようになりました。 (Matheus Alcantara) §
file_fdwにon_errorとlog_verbosityオプションが追加されました。
(Atsushi Torikoshi)
§
これらはfile_fdwが無効なファイル行をどのように処理して報告するかを制御します。
file_fdwが無視できる無効な行数を制御するreject_limitが追加されました。
(Atsushi Torikoshi)
§
これは、ON_ERROR = 'ignore'の時に有効です。
passwordcheckに設定可能な変数min_password_lengthが追加されました。
(Emanuele Musella, Maurizio Boriani)
§
これはパスワードの最小の長さを制御します。
pgbenchがスクリプトごとのレポートで、失敗したトランザクション、再試行されたトランザクション、スキップしたトランザクションの数を報告するようになりました。 (Yugo Nagata) §
無効なチェックデジットの受け入れを制御するisnサーバ変数weakが追加されました。
(Viktor Holmberg)
§
これは以前は関数isn_weak()によってのみ制御されていました。
btree_gistインデックス構築を高速化するために、値をソートできるようになりました。 (Bernd Helmle, Andrey Borodin) §
GINインデックスを検証するamcheckチェック関数gin_index_check()が追加されました。
(Grigory Kryachko, Heikki Linnakangas, Andrey Borodin)
§
固定されていない共有バッファを追い出す関数pg_buffercache_evict_relation()とpg_buffercache_evict_all()が追加されました。
(Nazir Bilal Yavuz)
§
既存の関数pg_buffercache_evict()は、バッファのフラッシュ状態を返すようになりました。
拡張でカスタムEXPLAINオプションをインストールできるようになりました。 (Robert Haas, Sami Imseih) § § §
CREATE TABLE ASとDECLAREの問い合わせをpg_stat_statementsで追跡できるようになりました。 (Anthonin Bonnefoy) §
これらの問い合わせにもクエリIDが割り当てられます。
pg_stat_statementsでSET値をパラメータ化できるようになりました。 (Greg Sabino Mullane, Michael Paquier) §
これにより、異なる定数を持つSET文による肥大化が軽減されます。
pg_stat_statementsに並列処理活動を報告する列が追加されました。
(Guillaume Lelarge)
§
新しい列はparallel_workers_to_launchとparallel_workers_launchedです。
WALバッファがいっぱいになったことを報告するためのpg_stat_statements.wal_buffers_fullが追加されました。
(Bertrand Drouvot)
§
pgcryptoアルゴリズムにsha256cryptとsha512cryptが追加されました。
(Bernd Helmle)
§
サーバのFIPSモードを報告する関数fips_mode()が追加されました。
(Daniel Gustafsson)
§
組み込みの非FIPSモード暗号化関数を無効できるpgcryptoサーバ変数builtin_crypto_enabledが追加されました。
(Daniel Gustafsson, Joe Conway)
§
これは、FIPSモードの動作を保証するのに役立ちます。
以下の人々(アルファベット順)はパッチ作者、コミッター、レビューア、テスターあるいは問題の報告者として本リリースに貢献しました。
| Abhishek Chanda |
| Adam Guo |
| Adam Rauch |
| Aidar Imamov |
| Ajin Cherian |
| Alastair Turner |
| Alec Cozens |
| Aleksander Alekseev |
| Alena Rybakina |
| Alex Friedman |
| Alex Richman |
| Alexander Alehin |
| Alexander Borisov |
| Alexander Korotkov |
| Alexander Kozhemyakin |
| Alexander Kukushkin |
| Alexander Kuzmenkov |
| Alexander Kuznetsov |
| Alexander Lakhin |
| Alexander Pyhalov |
| Alexandra Wang |
| Alexey Dvoichenkov |
| Alexey Makhmutov |
| Alexey Shishkin |
| Ali Akbar |
| Álvaro Herrera |
| Álvaro Mongil |
| Amit Kapila |
| Amit Langote |
| Amul Sul |
| Andreas Karlsson |
| Andreas Scherbaum |
| Andreas Ulbrich |
| Andrei Lepikhov |
| Andres Freund |
| Andrew |
| Andrew Bille |
| Andrew Dunstan |
| Andrew Jackson |
| Andrew Kane |
| Andrew Watkins |
| Andrey Borodin |
| Andrey Chudnovsky |
| Andrey Rachitskiy |
| Andrey Rudometov |
| Andy Alsup |
| Andy Fan |
| Anthonin Bonnefoy |
| Anthony Hsu |
| Anthony Leung |
| Anton Melnikov |
| Anton Voloshin |
| Antonin Houska |
| Antti Lampinen |
| Arseniy Mukhin |
| Artur Zakirov |
| Arun Thirupathi |
| Ashutosh Bapat |
| Asphator |
| Atsushi Torikoshi |
| Avi Weinberg |
| Aya Iwata |
| Ayush Tiwari |
| Ayush Vatsa |
| Bastien Roucariès |
| Ben Peachey Higdon |
| Benoit Lobréau |
| Bernd Helmle |
| Bernd Reiß |
| Bernhard Wiedemann |
| Bertrand Drouvot |
| Bertrand Mamasam |
| Bharath Rupireddy |
| Bogdan Grigorenko |
| Boyu Yang |
| Braulio Fdo Gonzalez |
| Bruce Momjian |
| Bykov Ivan |
| Cameron Vogt |
| Cary Huang |
| Cédric Villemain |
| Cees van Zeeland |
| ChangAo Chen |
| Chao Li |
| Chapman Flack |
| Charles Samborski |
| Chengwen Wu |
| Chengxi Sun |
| Chiranmoy Bhattacharya |
| Chris Gooch |
| Christian Charukiewicz |
| Christoph Berg |
| Christophe Courtois |
| Christopher Inokuchi |
| Clemens Ruck |
| Corey Huinker |
| Craig Milhiser |
| Crisp Lee |
| Dagfinn Ilmari Mannsåker |
| Daniel Elishakov |
| Daniel Gustafsson |
| Daniel Vérité |
| Daniel Westermann |
| Daniele Varrazzo |
| Daniil Davydov |
| Daria Shanina |
| Dave Cramer |
| Dave Page |
| David Benjamin |
| David Christensen |
| David Fiedler |
| David G. Johnston |
| David Geier |
| David Rowley |
| David Steele |
| David Wheeler |
| David Zhang |
| Davinder Singh |
| Dean Rasheed |
| Devanga Susmitha |
| Devrim Gündüz |
| Dian Fay |
| Dilip Kumar |
| Dimitrios Apostolou |
| Dipesh Dhameliya |
| Dmitrii Bondar |
| Dmitry Dolgov |
| Dmitry Koval |
| Dmitry Kovalenko |
| Dmitry Yurichev |
| Dominique Devienne |
| Donghang Lin |
| Dorjpalam Batbaatar |
| Drew Callahan |
| Duncan Sands |
| Dwayne Towell |
| Dzmitry Jachnik |
| Egor Chindyaskin |
| Egor Rogov |
| Emanuel Ionescu |
| Emanuele Musella |
| Emre Hasegeli |
| Eric Cyr |
| Erica Zhang |
| Erik Nordström |
| Erik Rijkers |
| Erik Wienhold |
| Erki Eessaar |
| Ethan Mertz |
| Etienne LAFARGE |
| Etsuro Fujita |
| Euler Taveira |
| Evan Si |
| Evgeniy Gorbanev |
| Fabio R. Sluzala |
| Fabrízio de Royes Mello |
| Feike Steenbergen |
| Feliphe Pozzer |
| Felix |
| Fire Emerald |
| Florents Tselai |
| Francesco Degrassi |
| Frank Streitzig |
| Frédéric Yhuel |
| Fredrik Widlert |
| Gabriele Bartolini |
| Gavin Panella |
| Geoff Winkless |
| George MacKerron |
| Gilles Darold |
| Grant Gryczan |
| Greg Burd |
| Greg Sabino Mullane |
| Greg Stark |
| Grigory Kryachko |
| Guillaume Lelarge |
| Gunnar Morling |
| Gunnar Wagner |
| Gurjeet Singh |
| Haifang Wang |
| Hajime Matsunaga |
| Hamid Akhtar |
| Hannu Krosing |
| Hari Krishna Sunder |
| Haruka Takatsuka |
| Hayato Kuroda |
| Heikki Linnakangas |
| Hironobu Suzuki |
| Holger Jakobs |
| Hubert Lubaczewski |
| Hugo Dubois |
| Hugo Zhang |
| Hunaid Sohail |
| Hywel Carver |
| Ian Barwick |
| Ibrar Ahmed |
| Igor Gnatyuk |
| Igor Korot |
| Ilia Evdokimov |
| Ilya Gladyshev |
| Ilyasov Ian |
| Imran Zaheer |
| Isaac Morland |
| Israel Barth Rubio |
| Ivan Kush |
| Jacob Brazeal |
| Jacob Champion |
| Jaime Casanova |
| Jakob Egger |
| Jakub Wartak |
| James Coleman |
| James Hunter |
| Jan Behrens |
| Japin Li |
| Jason Smith |
| Jayesh Dehankar |
| Jeevan Chalke |
| Jeff Davis |
| Jehan-Guillaume de Rorthais |
| Jelte Fennema-Nio |
| Jian He |
| Jianghua Yang |
| Jiao Shuntian |
| Jim Jones |
| Jim Nasby |
| Jingtang Zhang |
| Jingzhou Fu |
| Joe Conway |
| Joel Jacobson |
| John Hutchins |
| John Naylor |
| Jonathan Katz |
| Jorge Solórzano |
| José Villanova |
| Josef Šimánek |
| Joseph Koshakow |
| Julien Rouhaud |
| Junwang Zhao |
| Justin Pryzby |
| Kaido Vaikla |
| Kaimeh |
| Karina Litskevich |
| Karthik S |
| Kartyshov Ivan |
| Kashif Zeeshan |
| Keisuke Kuroda |
| Kevin Hale Boyes |
| Kevin K Biju |
| Kirill Reshke |
| Kirill Zdornyy |
| Koen De Groote |
| Koichi Suzuki |
| Koki Nakamura |
| Konstantin Knizhnik |
| Kouhei Sutou |
| Kuntal Ghosh |
| Kyotaro Horiguchi |
| Lakshmi Narayana Velayudam |
| Lars Kanis |
| Laurence Parry |
| Laurenz Albe |
| Lele Gaifax |
| Li Yong |
| Lilian Ontowhee |
| Lingbin Meng |
| Luboslav Špilák |
| Luca Vallisa |
| Lukas Fittl |
| Maciek Sakrejda |
| Magnus Hagander |
| Mahendra Singh Thalor |
| Mahendrakar Srinivasarao |
| Maiquel Grassi |
| Maksim Korotkov |
| Maksim Melnikov |
| Man Zeng |
| Marat Buharov |
| Marc Balmer |
| Marco Nenciarini |
| Marcos Pegoraro |
| Marina Polyakova |
| Mark Callaghan |
| Mark Dilger |
| Marlene Brandstaetter |
| Marlene Reiterer |
| Martin Rakhmanov |
| Masahiko Sawada |
| Masahiro Ikeda |
| Masao Fujii |
| Mason Mackaman |
| Mat Arye |
| Matheus Alcantara |
| Mats Kindahl |
| Matthew Gabeler-Lee |
| Matthew Kim |
| Matthew Sterrett |
| Matthew Woodcraft |
| Matthias van de Meent |
| Matthieu Denais |
| Maurizio Boriani |
| Max Johnson |
| Max Madden |
| Maxim Boguk |
| Maxim Orlov |
| Maximilian Chrzan |
| Melanie Plageman |
| Melih Mutlu |
| Mert Alev |
| Michael Banck |
| Michael Bondarenko |
| Michael Christofides |
| Michael Guissine |
| Michael Harris |
| Michaël Paquier |
| Michail Nikolaev |
| Michal Kleczek |
| Michel Pelletier |
| Mikaël Gourlaouen |
| Mikhail Gribkov |
| Mikhail Kot |
| Milosz Chmura |
| Muralikrishna Bandaru |
| Murat Efendioglu |
| Mutaamba Maasha |
| Naeem Akhter |
| Nat Makarevitch |
| Nathan Bossart |
| Navneet Kumar |
| Nazir Bilal Yavuz |
| Neil Conway |
| Niccolò Fei |
| Nick Davies |
| Nicolas Maus |
| Niek Brasa |
| Nikhil Raj |
| Nikita |
| Nikita Kalinin |
| Nikita Malakhov |
| Nikolay Samokhvalov |
| Nikolay Shaplov |
| Nisha Moond |
| Nitin Jadhav |
| Nitin Motiani |
| Noah Misch |
| Noboru Saito |
| Noriyoshi Shinoda |
| Ole Peder Brandtzæg |
| Oleg Sibiryakov |
| Oleg Tselebrovskiy |
| Olleg Samoylov |
| Onder Kalaci |
| Ondrej Navratil |
| Patrick Stählin |
| Paul Amonson |
| Paul Jungwirth |
| Paul Ramsey |
| Pavel Borisov |
| Pavel Luzanov |
| Pavel Nekrasov |
| Pavel Stehule |
| Peter Eisentraut |
| Peter Geoghegan |
| Peter Mittere |
| Peter Smith |
| Phil Eaton |
| Philipp Salvisberg |
| Philippe Beaudoin |
| Pierre Giraud |
| Pixian Shi |
| Polina Bungina |
| Przemyslaw Sztoch |
| Quynh Tran |
| Rafia Sabih |
| Raghuveer Devulapalli |
| Rahila Syed |
| Rama Malladi |
| Ran Benita |
| Ranier Vilela |
| Renan Alves Fonseca |
| Richard Guo |
| Richard Neill |
| Rintaro Ikeda |
| Robert Haas |
| Robert Treat |
| Robins Tharakan |
| Roman Zharkov |
| Ronald Cruz |
| Ronan Dunklau |
| Rui Zhao |
| Rushabh Lathia |
| Rustam Allakov |
| Ryo Kanbayashi |
| Ryohei Takahashi |
| RyotaK |
| Sagar Dilip Shedge |
| Salvatore Dipietro |
| Sam Gabrielsson |
| Sam James |
| Sameer Kumar |
| Sami Imseih |
| Samuel Thibault |
| Satyanarayana Narlapuram |
| Sebastian Skalacki |
| Senglee Choi |
| Sergei Kornilov |
| Sergey Belyashov |
| Sergey Dudoladov |
| Sergey Prokhorenko |
| Sergey Sargsyan |
| Sergey Soloviev |
| Sergey Tatarintsev |
| Shaik Mohammad Mujeeb |
| Shawn McCoy |
| Shenhao Wang |
| Shihao Zhong |
| Shinya Kato |
| Shlok Kyal |
| Shubham Khanna |
| Shveta Malik |
| Simon Riggs |
| Smolkin Grigory |
| Sofia Kopikova |
| Song Hongyu |
| Song Jinzhou |
| Soumyadeep Chakraborty |
| Sravan Kumar |
| Srinath Reddy |
| Stan Hu |
| Stepan Neretin |
| Stephen Fewer |
| Stephen Frost |
| Steve Chavez |
| Steven Niu |
| Suraj Kharage |
| Sven Klemm |
| Takamichi Osumi |
| Takeshi Ideriha |
| Tatsuo Ishii |
| Ted Yu |
| Tels |
| Tender Wang |
| Teodor Sigaev |
| Thom Brown |
| Thomas Baehler |
| Thomas Krennwallner |
| Thomas Munro |
| Tim Wood |
| Timur Magomedov |
| Tobias Wendorff |
| Todd Cook |
| Tofig Aliev |
| Tom Lane |
| Tomas Vondra |
| Tomasz Rybak |
| Tomasz Szypowski |
| Torsten Foertsch |
| Toshi Harada |
| Tristan Partin |
| Triveni N |
| Umar Hayat |
| Vallimaharajan G |
| Vasya Boytsov |
| Victor Yegorov |
| Vignesh C |
| Viktor Holmberg |
| Vinícius Abrahão |
| Vinod Sridharan |
| Virender Singla |
| Vitaly Davydov |
| Vladlen Popolitov |
| Vladyslav Nebozhyn |
| Walid Ibrahim |
| Webbo Han |
| Wenhui Qiu |
| Will Mortensen |
| Will Storey |
| Wolfgang Walther |
| Xin Zhang |
| Xing Guo |
| Xuneng Zhou |
| Yan Chengpen |
| Yang Lei |
| Yaroslav Saburov |
| Yaroslav Syrytsia |
| Yasir Hussain |
| Yasuo Honda |
| Yogesh Sharma |
| Yonghao Lee |
| Yoran Heling |
| Yu Liang |
| Yugo Nagata |
| Yuhang Qiu |
| Yuki Seino |
| Yura Sokolov |
| Yurii Rashkovskii |
| Yushi Ogiwara |
| Yusuke Sugie |
| Yuta Katsuragi |
| Yuto Sasaki |
| Yuuki Fujii |
| Yuya Watari |
| Zane Duffield |
| Zeyuan Hu |
| Zhang Mingli |
| Zhihong Yu |
| Zhijie Hou |
| Zsolt Parragi |