Il PostgreSQL Global Development Group ha ritardato il rilascio di PostgreSQL 19, uno dei cambiamenti di pianificazione più consequenziali nei 30 anni di storia del database open source, dopo che la revisione del codice assistita da LLM ha evidenziato più difetti di quelli che la comunità di volontari poteva risolvere prima del lancio.
Il rilascio, una volta previsto per la fine di settembre o l'inizio di ottobre, dovrebbe ora raggiungere la disponibilità generale intorno al 19 novembre, secondo un rapporto di The Register pubblicato il 16 ottobre. Oltre al ritardo, gli sviluppatori hanno ripristinato tra le otto e le dieci funzionalità significative, spostandole su PostgreSQL 20 del prossimo anno. Per maggiori informazioni su questa storia, consulta la nostra ultimi sviluppi nell'IA.
La barra della qualità è stata spostata a metà ciclo
Peter Eisentraut, vicepresidente della società di consulenza PostgreSQL EDB e uno dei principali committer del progetto, ha esposto il ragionamento in un post sul blog intitolato "I ripristini continueranno finché il morale non migliorerà", pubblicato il 9 ottobre.
Secondo Eisentraut, alcune delle funzionalità ripristinate presentavano difetti architettonici significativi che sarebbero stati difficili da correggere "rapidamente e durante la beta". Ma il problema più insolito era una lunga coda di problemi minori che i cicli di rilascio precedenti semplicemente non sarebbero mai stati in grado di individuare in tempo.
La revisione del codice assistita da LLM, ha scritto, ha scoperto "problemi relativamente innocui che coinvolgono vari casi limite" che in passato potrebbero non essere stati notati fino ad anni dopo il lancio, in genere emerse come correzioni di bug nei cinque anni successivi al rilascio. Con la revisione AI, quegli stessi difetti ora compaiono prima che il codice venga spedito.
"Con la revisione del codice assistita da LLM, questo tipo di cose possono essere trovate molto più velocemente, e poi ti ritrovi a guardare un elenco di quaranta segnalazioni di difetti", ha scritto Eisentraut. "Anche se ciascuno di essi richiede in media solo una correzione di tre righe, c'è un sovraccarico fisso per gestire ciascuno di essi e quindi si esaurisce il tempo."
I tempi del cambiamento di qualità sono importanti tanto quanto la sua portata. Quando furono scritte le principali funzionalità di PostgreSQL 19, gli strumenti di revisione basati su LLM non erano ancora così efficaci come lo furono nei mesi precedenti al lancio. Il progetto ha effettivamente alzato il proprio livello di qualità dopo che il codice era già stato adottato.
"L'asticella della qualità effettiva è stata alzata dopo il tempo in cui il servizio è stato scritto e pubblicato", ha affermato Eisentraut. "A meno che le capacità della revisione del codice assistita da LLM non continuino a migliorare al ritmo attuale, questa situazione dovrebbe risolversi da sola per i futuri cicli di sviluppo."
Non "Codifica delle vibrazioni"
Eisentraut è stato attento a distinguere la situazione dallo sviluppo sciatto generato dall'intelligenza artificiale. I ripristini, ha sottolineato, non erano il risultato del "vibe coding", poiché la tecnica non era disponibile quando furono scritte la maggior parte delle nuove funzionalità di PostgreSQL 19. I problemi del database derivavano da una migliore revisione, non da una creazione peggiore.
Questa distinzione è ciò che rende l’episodio degno di nota per l’industria del software in generale. Il database open source più maturo al mondo, proposto per la prima volta da Michael Stonebraker nel 1986 e ribattezzato PostgreSQL nel 1995 quando Andrew Yu e Jolly Chen sostituirono il linguaggio di query POSTQUEL con SQL, non si è rotto perché gli sviluppatori sono stati negligenti. Ha ritardato perché gli strumenti di intelligenza artificiale hanno reso il controllo esistente notevolmente più efficace.
Una vittima di punta: le query sui grafici
La caratteristica più importante estratta dalla versione è il supporto per SQL Property Graph Queries (SQL/PGQ), una funzionalità di corrispondenza dei grafici diventata parte dello standard SQL nel 2023. La sintassi consente agli sviluppatori di esplorare le relazioni tra nodi collegati da bordi direttamente in SQL e l'implementazione di PostgreSQL era stata una delle funzionalità di PostgreSQL 19 più attese.
È stato rimosso per problemi di correttezza irrisolti. Il collaboratore di PostgreSQL Tom Lane aveva avvertito prima della decisione, secondo The Register: "A questo punto sarei disposto a scommettere che se lo pubblicheremo nella v19 ci saranno scoperte di bug post-rilascio che non saranno risolvibili fino alla v20."
Si prevede che le funzionalità ripristinate, incluso SQL/PGQ, arriveranno in PostgreSQL 20. Fino a poco tempo fa si presumeva che quella versione non contenesse alcuna nuova funzionalità: un seguito incentrato sulla stabilizzazione. Ora probabilmente assorbirà il lavoro sostituito da PostgreSQL 19.
Cosa sarà ancora disponibile a novembre
Nonostante i ritardi, Eisentraut ha promesso che PostgreSQL 19 sarà comunque "un grande rilascio". Tra le funzionalità conservate c'è REPACK CONCURRENTLY, che recupera spazio su disco senza l'operazione VACUUM FULL di blocco della tabella che è stata a lungo un punto dolente per i database di produzione.
"E sarà molto solido, dopo tutto il controllo aggiuntivo", ha detto.
Un segnale per ogni team di ingegneri
L'episodio di PostgreSQL è uno degli esempi reali più chiari di revisione del codice AI che cambia non solo il modo in cui viene costruito il software, ma anche il significato di "fatto". Un progetto che da decenni distribuisce rilasci affidabili con cadenza annuale ha scoperto che i suoi nuovi strumenti di revisione hanno generato più risultati fruibili di quelli che i suoi manutentori potevano elaborare all’interno del calendario esistente.
Per i team aziendali che scommettono sullo sviluppo assistito dall’intelligenza artificiale, viene misurata la lezione della comunità PostgreSQL: la revisione dell’intelligenza artificiale può aumentare sostanzialmente la qualità, ma le organizzazioni hanno bisogno della capacità di revisione – tempo umano, processo di triage e flessibilità di pianificazione – per assorbire ciò che trovano i modelli. L'alternativa è ciò che ha scelto PostgreSQL: spostare la data di rilascio.
Per gli amministratori di database che pianificano aggiornamenti, la guida pratica rimane invariata rispetto a qualsiasi migrazione alla versione principale: testare i carichi di lavoro rispetto alle beta di PostgreSQL 19, ma aspettarsi il rilascio pronto per la produzione intorno al 19 novembre anziché la finestra autunnale originale.
Mentre gli strumenti di revisione dell'intelligenza artificiale si diffondono attraverso l'ecosistema open source (il kernel Linux ha recentemente formalizzato le regole di divulgazione per l'utilizzo degli strumenti di intelligenza artificiale, un dibattito che The Register ha seguito da vicino), l'esperienza di PostgreSQL offre un'anteprima. Una migliore revisione trova più bug. Altri bug richiedono tempo per essere risolti. E a volte, la risposta più sana a un’intelligenza artificiale che rileva più difetti di quelli che gli esseri umani possono gestire è semplicemente spedire in un secondo momento.
---
Rimani Aggiornato sull'IALe ultime notizie, analisi e scoperte sull'intelligenza artificiale — tutto in un posto.
Leggi altre notizie sull'IA →