Cassandra 4.0 è l'ultima versione di uno dei più noti e diffusi database NoSQL. Open source, Cassandra trova applicazione in vari contesti, e viene regolarmente utilizzato da colossi quali Apple, Netflix e Spotify.
Tuttavia, il rilascio di questa nuova versione è stato ritardato a causa di un bug identificato all'ultimo momento, grazie al lavoro di code review di uno sviluppatore di Apple.
Cos'è successo?
Cassandra 4.0 era stato annunciato come uno dei rilasci più stabili di sempre, ed è per questo motivo che c'è stata grande attenzione da parte di tutta la comunità intorno allo sviluppo di questa nuova versione. L'uscita, originariamente prevista per le 8:00 BST del 19 luglio, è stata però rimandata.
Nel preparare la versione 4.0, la comunità di Apache Cassandra ha identificato un nuovo bug, e la conseguente necessità di correggere il problema. Il rilascio è stato quindi rinviato fino al completamento della correzione. Un portavoce della comunità ha dichiarato: "condivideremo i nuovi tempi di rilascio non appena li sapremo".
Ma cos'è successo esattamente? Lo sviluppo di Apache Cassandra, che è rilasciato con licenza Apache v2.0, è supervisionato da un team volontario di sviluppatori che contribuiscono attivamente al progetto. Venerdì sera, l'ingegnere di Apple Jon Meredith, attivo contributor di Cassandra, ha richiesto un'estensione della data di rilascio, essendosi accorto di un possibile problema con la serializzazione su alcuni nodi precedenti alla versione 4.0. Dopo poco tempo, lo stesso sviluppatore ha confermato il problema, indicando come causa un campo indirizzo erroneamente impostato ad una lunghezza di un byte, oltre ad altri problemi legati alla logica di inoltro dei messaggi tra i nodi.
In sostanza, il problema sembra essere legato alla possibilità di creare cluster misti, in cui nodi basati su Cassandra 4.0 convivono con altri nodi generati con versioni precedenti del DBMS.
Quando si risolverà il problema?
Non è semplice capire quando verrà sistemato questo problema, anche se non sembra nulla di troppo grave. È però interessante notare come questo rilascio, che doveva rappresentare uno pietra miliare nella storia dello sviluppo di Cassandra, si riveli già traballante. Va anche detto, però, che proprio per questo motivo c'è stata molta attenzione intorno al progetto. Non è un caso se l'identificazione del bug è avvenuta in tempo, prima del rilascio ufficiale (cosa che, potenzialmente, avrebbe potuto causare problemi nel caso di integrazioni in ambienti di produzione).
Sembra quindi una scelta ragionevole quella di ritardare precauzionalmente il rilascio ufficiale. Non resta che attendere un nuovo annuncio da parte della comunità.