本文へ
ハクソク

世界を動かす技術を、日本語で。

士気が向上するまでリバートは続く

元記事: 原文(peter.eisentraut.org)

概要

  • PostgreSQL 19 のベータ期間中に、異例の数の機能リバートが発生
  • LLM支援のコードレビュー普及による品質基準の変化
  • Vulnpocalypseによる開発リソースの分散
  • システムの複雑性とテストの困難さ
  • 今後の改善策と前向きな見通し

PostgreSQL 19ベータでの大量リバートの背景

  • 通常、 1サイクルに1件程度 のリバートが一般的だが、今回は 8~10件 の主要機能がリバート
  • 一部のリバートは ベータ期間の後半 に実施され、開発者やコミッターに影響
  • リバート理由の一部は コード品質や設計上の欠陥
  • LLM支援コードレビュー により、従来なら見逃されていた小さな不具合も迅速に発見
    • 40件以上の不具合報告が同時に発生し、修正対応の時間切れに
  • 多くのリバート対象機能は LLM支援が今ほど有効でなかった時期 に開発されたもの
  • 今後、 LLM支援の品質向上 で開発サイクルも安定化を期待

Vulnpocalypseとリリーススケジュールへの影響

  • Vulnpocalypse により、4月~8月はセキュリティ対応に多くの上級開発者が従事
  • 通常の ベータ期間中の追加レビューやテスト が減少
  • 8月以降に再びレビューが活発化し、 新たな問題が後半に集中して発覚
  • リリーススケジュール優先のため、 問題解決のための期間延長は行わず

システムの複雑性と今後のテスト戦略

  • PostgreSQLの設計上、「 すべてがすべてと組み合わせて動作」する柔軟性
    • 例:ドメイン、複合型、パーティション、ビュー、トリガー、セキュリティ定義関数などの組み合わせ
  • 手動テストやケース網羅が現実的でなく、 LLM支援ファジング の導入が必須
  • 内部インターフェースの堅牢化も今後の課題

開発プロセスの今後と「実験的」機能導入の検討

  • 「 experimental (実験的)」ステータスで機能をコミットし、成熟させる案の検討
    • 一部リバート機能に有効だった可能性
    • 具体的な運用方法は未確定
  • 誤解や運用上の課題も今後の検討事項

今後の展望とリリースの魅力

  • コミュニティからの 支援や励まし への感謝
  • 多くのリバート機能も 将来的に復活 する見通し
  • PostgreSQL 19は依然として 魅力的なリリース
    • REPACK CONCURRENTLY
    • シーケンスの論理レプリケーション(過去リバート機能の復活)
    • pg_plan_adviceによるプランナーヒント
  • 今後も 堅牢性と新機能 の両立を目指す方針
  • PostgreSQL 20には 80%完成済みの有望な機能 がすでに待機

まとめ

  • 機能リバートの背景には 品質基準の変化 と 開発リソース分散
  • LLM支援開発とテスト戦略 の進化が今後の安定化の鍵
  • PostgreSQLコミュニティの 柔軟な対応力と前向きな姿勢

提供: ハクソク · 要約更新:

AIによる日本語要約です。内容は原文とあわせてご確認ください。

Hacker Newsの議論を読む

Hackerたちの意見

自分の機能が元に戻されるのは、やっぱり嫌だよね。でも、Postgresみたいな基盤となるものなら、元に戻すのが多い方がいいかもね。

コミュニティが他の場所に目を向けるよりは、元に戻す方がマシだよね。チームが正しいことを認めて行動したのは素晴らしいと思う。開発者として、これは辛いことだってわかるけど、コミュニティの声を聞くのは大事だよね。

└

ここでのメンテナは、自分の直感を信じて経験に頼ったんだと思う。それに、商業製品が株主の期待のために適切なプロフェッショナルプログラミングを犠牲にしている現状を考えると、これは素晴らしいFLOSSニュースだと思う。

└

エンジニアとして、このリバートの投稿は適切な管理のポジティブなシグナルだと思う。開発者は、何かを作り上げて洗練させるのがどれだけ大変か知っているからね。重要なコードベースのために、機能よりも安定性を優先したチームにおめでとうと言いたい。

└

同意する。Postgresを使っている人たちは次の機能リリースを待っているわけじゃない。開発が続くのは見たいけど、安定性を犠牲にしてまで続けてほしくない。これは非常に成熟したチームで、彼らがこれを共有してくれて嬉しいよ。

これはPostgresに対する強い支持だね。品質管理を真剣に考えているってことがわかる。

これはLLMのコードレビューが導入されたことで、これまで見逃されていたエッジケースを見つけて修正しているってことが大きいみたい。問題は、問題の量が人々が時間内に対処できる範囲を超えていることだね。

自分もこれを経験したことがある。自分のコードに対する評価を下げざるを得なかった。LLMは、何年もかけて見つけるかもしれないエッジケースを指摘してくれるからね。正直、ちょっと落ち込むけど、前に進むしかないよね。

└

同じく。これは本当に目から鱗だよ。前はLLMがコードを悪く書くことが心配だったけど、今は自分が今まで書けなかったような、もっと良いコードを書く能力が心配になってる。あらゆるバグやレースコンディション、エラーステートを考慮しなきゃいけないし、でもその代償は何なの? どれだけの時間を、あらゆるエッジケースや状態について調査したり、設計したり、決定を下すのに費やさなきゃいけないの? 前は、品質とスピードを両立させることすらできなかった。品質を事前に確認できなかったから、バグレポートが来るのを待つしかなかった。今は、品質にもっと深く向き合うことができるようになった。これでより信頼性の高いソフトウェアが作れるけど、どれだけの努力が価値あるのか、どれだけがそうじゃないのかを決めなきゃいけないね。

注意経済に不慣れな人には、見出しはクリックベイトで、記事のポイントを示していないよ。

多くのプロジェクトにとって、機能凍結の時期かもしれないね。LLMはテストカバレッジを改善したり、自動コードレビューを実行したりする素晴らしい機会を提供してくれるから、基本的には品質を向上させる時期だと思う。開発者たちはこの新しいLLMの世界に適応して、LLMを開発サイクルに統合する適切な方法を見つける必要があるね。それに、敵も今まさにLLMを使って脆弱性を探しているから、先手を打つことが重要だよ。

LLMやAIの話を期待してクリックしたけど、著者がそこにたどり着くまでに数段落かかった。レシピの前に無関係な人生の話を読まされるレシピサイトほどひどくはなかったけどね。

Hacker Newsで議論の続きを見る