Splunk soffre del Millennium Bug 20 anni dopo, ma c'è la soluzione

Splunk soffre del Millennium Bug 20 anni dopo, ma c'è la soluzione

Splunk, software per ottenere diagnosi, analisi e visualizzazioni a partire da dati di vario tipo, soffre di un curioso bug: dal 1 gennaio 2020 gestirà in maniera errata le date. Un Millennium Bug 20 anni dopo

di pubblicata il , alle 09:01 nel canale Cloud
Splunk
 

Chi scrive non aveva che otto anni e qualche mese quando arrivò il 1 gennaio 2000, ma ricorda ancora bene il terrore del "Millennium Bug": tale (fantomatico) bug avrebbe dovuto, stando alle teorie in voga all'epoca, impedire che i software continuassero a funzionare una volta scoccata la prima mezzanotte del nuovo millennio. Il motivo? Non era stato previsto l'uso di date posteriori al 1999. Il problema si rivelò inesistente, ma torna (questa volta davvero!) a vent'anni di distanza in Splunk, il quale non riesce a gestire date dopo il 31 dicembre 2019 senza un aggiornamento ad hoc.

Un "Millennium Bug" (vero) per Splunk nel 2020

Splunk è un'azienda californiana che produce un software, a sua volta chiamato Splunk, in grado di correlare tra di loro dati di vario tipo presenti all'interno dell'azienda per ricavarne visualizzazioni, analisi e identificazione di pattern e problemi. È particolarmente utile per correlare dati che altrimenti le persone non correlerebbero e per vedere problemi che altrimenti non emergerebbero.

Il curioso problema emerso sta nel fatto che le date a partire dal 1 gennaio 2020 non vengono riconosciute quando vengono rappresentate con due cifre. Il 1/1/20 non viene riconosciuto come una data valida e il sistema utilizza quindi una data casuale o la data odierna: un problema non di poco conto, soprattutto perché non deterministico (il cui esito è noto a priori in base all'input).

La ragione sta nella progettazione del sistema: la gestione delle date avviene tramite un file, chiamato datetime.xml, che ne definisce il formato. Tale file considerava che la cifra delle decine potesse essere 9 (1990), 0 (2000) o 1 (2010), dunque una data con le decine pari a "2" rappresenta un'anomalia inspiegabile per il sistema.

Il problema è risolvibile in molti modi: nel caso di Splunk Cloud, una patch è già stata applicata; nel caso di applicazioni installate nell'infrastruttura del cliente è possibile effettuare un aggiornamento della piattaforma Splunk, utilizzare un'applicazione che modifica il file datetime.xml o modificare quest'ultimo a mano. Per inciso, analizzando il codice proposto da Splunk emerge come la soluzione sembri valida solo fino al 31 dicembre 2029. Ulteriori informazioni sono presenti su questa pagina.

Non manca un inevitabile elemento di ilarità in questa situazione. In ogni caso, il problema di Splunk ripropone un tema molto noto nell'ambiente dello sviluppo di software e causa di più di qualche grattacapo a più di un'azienda, ultima in ordine di tempo HPE con gli SSD che muoiono a 32.768 ore. Tale problema è la gestione dei dati in fase di specifica e di implementazione. Non si tratta di un tema facile, come dimostrato dalla grande quantità di bachi di questo tipo, ed evidenzia ancora una volta l'impossibilità di garantire senza grossi sforzi che il software sia sempre corretto rispetto a quanto ci si aspetta che faccia.

Un problema simile si riproporrà in maniera più grave fra quasi 20 anni, quando lo "Unix time" arriverà alla sua fine e comincerà a rappresentare date a partire dal 13 dicembre 1901. Sia in questo caso che in quello di Splunk, la soluzione è semplice e diretta: aggiornare il software alle nuove versioni senza l'errore!

Resta aggiornato sulle ultime offerte

Ricevi comodamente via email le segnalazioni della redazione di Hardware Upgrade sui prodotti tecnologici in offerta più interessanti per te

Quando invii il modulo, controlla la tua inbox per confermare l'iscrizione.
Leggi la Privacy Policy per maggiori informazioni sulla gestione dei dati personali

4 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
Dumah Brazorf04 Dicembre 2019, 12:24 #1
Avevano fiducia di chiudere baracca e burattini entro questa data, oppure l'hanno fatto passando il cerino ad altri.
Il programma a cui sto dietro potrebbe avere qualche problemino a fine 2099... chemmifrega saremo tutti schiattati!
domthewizard04 Dicembre 2019, 12:58 #2
ora posso dormire sonni tranquilli, grazie hwupgrade!
Slater9105 Dicembre 2019, 14:05 #3
Originariamente inviato da: domthewizard
ora posso dormire sonni tranquilli, grazie hwupgrade!


Sogni d'oro caro!
Zenida07 Dicembre 2019, 00:10 #4
Originariamente inviato da: Redazione di Hardware Upgrade
Chi scrive non aveva che otto anni e qualche mese quando arrivò il 1 gennaio 2000, ma ricorda ancora bene il terrore del "Millennium Bug": tale (fantomatico) bug avrebbe dovuto, stando alle teorie in voga all'epoca, impedire che i software continuassero a funzionare una volta scoccata la prima mezzanotte del nuovo millennio. Il motivo? Non era stato previsto l'uso di date posteriori al 1999. Il problema si rivelò inesistente

Falso!
Il problema era reale ma, ovviamente, anche all'epoca corsero ai ripari aggiornando tutti i sistemi sensibili all'errore. I meno esposti erano proprio i PC in realtà, ma come al solito non lo erano altrettanto i sistemi embedded

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^