昨年9月にPostgreSQL 13がリリースされましたが、PostgreSQL開発コミュニティでは現在PostgreSQL 14の開発を行っています。PostgreSQLの開発はCommitfestと呼ばれるWebページにパッチを登録し、みんなで1ヶ月間レビューする、という形で行われます。PostgreSQL 14に向けたCommitfestはすでに3回行われていて、2021年1月1日から第4回が始まりました(3月から始まる第5回が最後)。

Commitfestには現在260個のパッチが登録されているのですが、それぞれパッチの大きさ、難しさも違いますし、中には何年も議論が続いているパッチがあるので、それらの中からレビューするパッチを選ぶのは一苦労です。

今回のCommitfestでCommit Fest Manager1をやらせてもらっているということもあり、一通り全てのパッチを確認したので、PostgreSQL開発に貢献したい、パッチレビューが初めて、という人に向けて簡単そうなパッチをリストアップしてみました。

以下の観点で選びました。

  • パッチが小さく、難易度が高くなさそう
    • 機能が単純で、パッチが小さいものを選びました
    • クライアントツールや拡張機能(Extension)のパッチは比較的レビューしやすいと思います
  • 議論が短い
    • 議論が長いと全部読むのも大変ですし、英語の議論をかいつまんで読むのも大変なので、議論がまだあまりされていないものを選びました

パッチレビューの仕方

パッチレビューのやり方はこの辺が参考になるかと思います。

必要なもの

  • メールアドレス
    • pgsql-hackersメーリングリストへの登録が必要
  • PostgreSQLをビルドし動かせる環境
  • C言語のソースコードが読める
  • (余力があれば)PostgreSQLの公式サイトでアカウントを作成する
    • Commitfestでパッチのステータスを操作できるようになります

レビューで貢献するともれなく・・・

  • PostgreSQL開発の一通りの流れを経験できます
  • コミットログに名前が残ります
  • PostgreSQL 14のリリースノートに名前が載ります(こんな感じ

おすすめパッチ

Clients

Documentation

Miscellaneous

Monitoring & Control

Performance

Replication & Recovery

SQL Commands

System Administration

注意点

  • レビューしたパッチはコミットされないかもしれない
    • 議論の末Rejectされる、という可能性があります
  • パッチのステータス(Commitfest上で確認できる)がWaiting on Authorのものはパッチ作者待ち。Needs reviewを優先的にレビューするべし
  • すでにコミット済みかもしれない
    • 比較的簡単そうなパッチをリストアップしたのですでにコミット済みになっているかもしれません。
    • コミットされている場合はステータスがCommittedになっているはずです。

最後に

やってみたけどここがわからない、途中で詰まってしまった、という場合はいつでも@masahiko_sawadaに、もしくは日本PostgreSQLユーザ会が運営しているslackにて相談してください!

  1. Commitfestに登録されたパッチの状況を確認してレビューが円滑に進むようにする役割。