Grupa PostgreSQL Global Development Group opóźniła wydanie PostgreSQL 19, co stanowi jedną z najbardziej znaczących zmian w harmonogramie w 30-letniej historii bazy danych open source, po tym jak przegląd kodu wspomagany przez LLM ujawnił więcej defektów, niż społeczność wolontariuszy była w stanie rozwiązać przed uruchomieniem.

Jak wynika z raportu The Register opublikowanego 16 października, wersja, która pierwotnie miała być wydana na koniec września lub początek października, ma teraz osiągnąć ogólną dostępność około 19 listopada. Oprócz opóźnienia programiści cofnęli od ośmiu do 10 istotnych funkcji, przenosząc je do przyszłorocznej wersji PostgreSQL 20. Więcej kontekstu na ten temat znajdziesz w naszych najnowsze osiągnięcia AI.

Pasek jakości przesunął się w połowie cyklu

Peter Eisentraut, wiceprezes firmy konsultingowej PostgreSQL EDB i jeden z głównych autorów projektu, przedstawił uzasadnienie w poście na blogu zatytułowanym „Powrót będzie trwał do czasu poprawy morale”, opublikowanym 9 października.

Według Eisentrauta niektóre z przywróconych funkcji zawierały znaczące defekty architektoniczne, które trudno byłoby naprawić „szybko i w trakcie wersji beta”. Jednak bardziej nietypowym problemem był długi ogon mniejszych problemów, których poprzednie cykle wydawnicze po prostu nigdy nie wyłapałyby na czas.

Napisał, że przegląd kodu wspomagany przez LLM ujawnił „stosunkowo nieszkodliwe problemy związane z różnymi przypadkami brzegowymi”, które w przeszłości mogły zostać zauważone dopiero wiele lat po premierze i zazwyczaj pojawiały się jako poprawki błędów w ciągu pięciu lat od wydania. Dzięki przeglądowi AI te same defekty pojawiają się teraz przed wysłaniem kodu.

„Dzięki przeglądowi kodu wspomaganemu przez LLM tego typu rzeczy można znaleźć znacznie szybciej, a następnie przegląda się listę czterdziestu raportów o defektach” – napisał Eisentraut. „Nawet jeśli każdy z nich wymaga średnio jedynie poprawki składającej się z trzech linii, radzenie sobie z każdym z nich wiąże się z ustalonymi kosztami ogólnymi, w związku z czym kończy się czas”.

Moment zmiany jakości jest równie ważny jak jej skala. Kiedy pisano główne funkcje PostgreSQL 19, narzędzia do przeglądania oparte na LLM nie były jeszcze tak wydajne, jak w miesiącach poprzedzających premierę. Projekt skutecznie podniósł swoją poprzeczkę jakości już po zatwierdzeniu kodu.

„Poprzeczka efektywnej jakości podniosła się po napisaniu i zatwierdzeniu funkcji” – powiedział Eisentraut. „Jeśli możliwości przeglądu kodu wspomaganego przez LLM nie będą się poprawiać w obecnym tempie, sytuacja ta powinna się rozwiązać w przyszłych cyklach rozwoju”.

Nie „kodowanie wibracyjne”

Eisentraut starał się odróżnić tę sytuację od niechlujnego rozwoju generowanego przez sztuczną inteligencję. Podkreślił, że powroty nie były wynikiem „kodowania wibracyjnego”, ponieważ technika ta nie była dostępna, gdy pisano większość nowych funkcji PostgreSQL 19. Problemy z bazą danych wynikały z lepszej recenzji, a nie gorszego autorstwa.

To rozróżnienie sprawia, że ​​odcinek ten jest znaczący dla szerszej branży oprogramowania. Najbardziej dojrzała na świecie baza danych typu open source — zaproponowana po raz pierwszy przez Michaela Stonebrakera w 1986 r. i przemianowana na PostgreSQL w 1995 r., kiedy Andrew Yu i Jolly Chen zastąpili język zapytań POSTQUEL językiem SQL — nie zepsuła się z powodu nieostrożności programistów. Opóźniło się, ponieważ narzędzia sztucznej inteligencji znacznie zwiększyły skuteczność dotychczasowej kontroli.

Ofiara flagowego statku: zapytania dotyczące wykresów

Najważniejszą funkcją pobraną z tej wersji jest obsługa zapytań dotyczących wykresów właściwości SQL (SQL/PGQ), możliwości dopasowywania wykresów, która stała się częścią standardu SQL w 2023 r. Składnia umożliwia programistom badanie relacji między węzłami połączonymi krawędziami bezpośrednio w języku SQL, a implementacja PostgreSQL była jedną z najbardziej oczekiwanych funkcji PostgreSQL 19.

Został usunięty z powodu nierozwiązanych problemów z poprawnością. Według The Register, współtwórca PostgreSQL, Tom Lane, ostrzegł przed podjęciem decyzji: „W tym momencie byłbym skłonny się założyć, że jeśli wyślemy go w wersji 19, po wydaniu zostaną odkryte błędy, których nie da się naprawić aż do wersji 20”.

Oczekuje się, że wycofane funkcje, w tym SQL/PGQ, wylądują w PostgreSQL 20. Do niedawna zakładano, że ta wersja nie zawiera żadnych nowych funkcji – była to kontynuacja skupiona na stabilizacji. Teraz prawdopodobnie wchłonie przesuniętą pracę PostgreSQL 19.

Co nadal będzie dostarczane w listopadzie

Pomimo opóźnień Eisentraut obiecał, że PostgreSQL 19 nadal będzie „świetną wersją”. Wśród zachowanych funkcji znajduje się funkcja REPACK CONCURRENTLY, która pozwala odzyskać miejsce na dysku bez blokowania tabeli operacji VACUUM FULL, która od dawna była problemem w przypadku produkcyjnych baz danych.

„Będzie bardzo solidny, po całej dodatkowej analizie” – powiedział.

Sygnał dla każdego zespołu inżynierskiego

Odcinek PostgreSQL to jeden z najwyraźniejszych przykładów przeglądu kodu AI, który zmienia nie tylko sposób tworzenia oprogramowania, ale także znaczenie „ukończone”. W ramach projektu, w ramach którego przez dziesięciolecia dostarczano niezawodne wydania co roku, odkryto, że jego nowe narzędzia do przeglądu wygenerowały więcej wniosków, które umożliwiłyby podjęcie działań, niż ich opiekunowie byliby w stanie przetworzyć w ramach istniejącego kalendarza.

W przypadku zespołów korporacyjnych stawiających na rozwój wspomagany sztuczną inteligencją mierzona jest lekcja społeczności PostgreSQL: przegląd sztucznej inteligencji może znacznie podnieść jakość, ale organizacje potrzebują możliwości przeglądu – czasu ludzkiego, procesu selekcji i luzu w harmonogramie – aby wchłonąć to, co znajdą modele. Alternatywą jest to, co wybrał PostgreSQL: przesuń datę wydania.

W przypadku administratorów baz danych planujących aktualizacje praktyczne wskazówki pozostają niezmienione w porównaniu z migracją do wersji głównej: przetestuj obciążenia w porównaniu z wersjami beta PostgreSQL 19, ale spodziewaj się wersji gotowej do produkcji około 19 listopada, a nie pierwotnego okna jesiennego.

W miarę jak narzędzia do przeglądu sztucznej inteligencji rozprzestrzeniają się w ekosystemie open source — jądro Linuksa niedawno sformalizowało zasady ujawniania informacji na temat użycia narzędzi sztucznej inteligencji, co jest debatą, którą The Register uważnie śledzi — doświadczenie PostgreSQL daje podgląd. Lepsza recenzja pozwala znaleźć więcej błędów. Naprawienie większej liczby błędów wymaga czasu. Czasami najzdrowszą reakcją na sztuczną inteligencję, która wykryje więcej defektów, niż ludzie są w stanie obsłużyć, jest po prostu wysyłka później.

---

Bądź na Bieżąco z AI

Najnowsze wiadomości, analizy i przełomy w dziedzinie AI — wszystko w jednym miejscu.

Czytaj więcej wiadomości AI →