Storie dalla Sala Macchine


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Login/Register

Pre o Prod

Come diceva quella battuta, tutti hanno un ambiente di test, alcuni sono tanto fortunati da avere un ambiente completamente separato su cui far girare la produzione.

In effetti, come per molte cose, l'utilita' dell'ambiente di test viene scoperta solo dopo che l'unico ambiente di produzione e' stato completamente sputtanato a causa di una manovra, errata o meno. Ed anche dopo il fatto, in molti casi, l'ambiente di test viene ancora visto come un inutile spreco di risorse.

Personalmente trovo che le centinaia di ambienti di produzione "hot stand-by" che ho visto nei miei anni di attivita' siano molto piu' inutili di un ambiente di test usato a meta', anche perche' in generale, quegli ambienti di 'hot-standby' finiscono sempre per essere disallineati con quello di produzione, riducendone l'utilita' a meno di zero.

Ma quando esiste un ambiente di test, c'e' questa spinta, a volte maniacale, ad usarlo in modo ossessivo, il risultato e' una ridda, una pletora di rilasci e modifiche effettuate in test, anche per cose che non vedranno mai manco l'ombra dell'ambiente di produzione, finche' nessuno, nemmeno il programmatore che scrive il codice, e' in grado di dire che cosa gira sull'ambiente di test e come (o se) riportarlo sull'ambiente di produzione, rendendo il 'test' unico ed inimitabile come uno Stradivari.

E dopo questo preludio scombinato, andiamo ad incominciare.

E' una fredda e buia mattinata di tardo autunno, le temperature sono gia' praticamente invernali, mentre le piogge sono sufficientemente autunnali e le due cose si combinano in un perfetto cocktail che provoca quell'effetto "schifo" che tanto deprime e fa venire voglia di restare a letto la mattina.

In questa atmosfera io sto madonnando per fare contento un cliente che vuole dei grafici di uso e consumo del suo sistema e per produrli devo estrarre dei dati dal suo database (che e' un casino) e poi darli in pasto a Cacti per produrre qualche cosa di guardabile.

Si', mi sto definitivamente divertendo.

Mentre sono li' che ravano con le idiosincrasie di SNMP mi arriva Collega (CL) con una faccia un po' cosi'...

CL - Puoi guardare il ticket 79845910-ADF7631-8476710 ?
IO - Adesso no che sono nei casini, che problema c'e'?
CL - E' una richiesta di $cliente per un rilascio...
IO - E che problema c'e'? I rilasci per $cliente sono praticamente automatizzati da anni [uno script in Perl di cui sono particolarmente fiero]
CL - E' che questo e' diverso...
IO - Diverso in che senso?
CL - Ci ha delle cose...
IO - E' quel periodo del mese?

CL non recepisce e dato che pare non esserci altro modo per levarmelo dai piedi, mollo per un attimo SNMP e guardo quel dannato ticket.

Oh bene, il programmatore ha finalmente gettato la spugna, ammettendo che non sa piu' cosa e' rilasciato in Test e come ed ha deciso che l'unico modo e' fare "tabula rasa" con un bel restore dall'ambiente di produzione ed un rilascio in pre con quello che e' stato rilasciato in Produzione. Non posso che essere d'accordo. Pero' vogliono anche un dump della struttura dati di Pre per verificare le differenze ed una copia dell'applicazione che gira adesso in Pre.

IO - Ok, dove e' il problema?
CL - Ma database... yada yada yada... backup ... yada yada yada... copia yada yada yada....
IO - La procedura di 'refresh' e' documentata sul wiki, leggitela, la procedura di backup anche. L'unica cosa di rilievo e' che l'ambiente di Test e quello di Produzione usano due database DIVERSI ma che risiedono sullo stesso Server.

CL continua a lagnarsi, evidentemente quello che voleva lui e' una mia assunzione di responsabilita' cosi' lui potesse ritornare a fare un emerito cazzo, ma dato che io rifiuto di cooperare, finisce per andare a lamentarsi con DumBoss, il quale viene a fare le stesse domande.

Faccio notare che il cliente non ha richiesto niente di cosi' tanto esoterico e che la maggioranza delle attivita' in questione sono documentate o dovrebbero essere alla portata di un qualunque 'sysadmin', anche junior e che stiamo parlando di un sistema di PREPRODUZIONE, quindi anche 'romperlo' non dovrebbe essere cosi' tanto tragico.

DB - E non puoi pensarci tu?
IO - Questa roba (indicando lo schermo) e' sulla mia lista da un mese e dato che su 5 giorni alla settimana io sono occupato 4 giorni con tickets, se non mi ci metto oggi rimarra' sulla lista per un altro mese, quindi No.

DB si ritira, CL si mostra poco soddisfatto ed io vado avanti a ravanare nelle definizioni di Cacti. Ma non per molto, infatti dopo un altro po', CL ritorna alla carica con domande sul backup del db.

IO - Come fare il dump e' scritto nel wiki, dovrebbe pure esserci un link dalla pagina di documentazione del cliente perche' lo abbiamo fatto gia' diverse volte.
CL - Si ma io non ci capisco niente.

Mi alzo e vado alla sua scrivania.

IO - Ok, vediamo cosa non capisci.

CL Si siede e disattiva lo screen-saver, ovviamente sul suo schermo c'e' tutto meno che la documentazione. Ravana per un po' per cercarla. Dopo un paio di minuti gli dico che vado a prendermi un caffe' e che quando l'ha trovata e letta mi chiami. Quando torno ha trovato la documentazione.

IO - Ok, cosa c'e' che non e' chiaro?

CL scorre su e giu' la documentazione a colpi di rotella del mouse senza proferire parola.

IO - Tu l'hai letta quella roba ?

CL scorre di nuovo su e giu' la documentazione...

IO - Quando l'hai letta fammi sapere.

E me ne torno al mio lavoro, fino circa alle 15.30, quando l'incessante pigolio del monitor di sistema ha sorpassato anche i Pink Floyd nella mia cuffia e mi ha fatto alzare la testa dal computer per farmi chiedere che accidenti sta succedendo.

Succede che il sistema di Produzione di Cliente (si', lo stesso di prima) ritorna un bel 500, il che, se non avete capito e' MALE.

Alla domanda "ci sta guardando qualcuno" mi ha risponde il piu' assoluto silenzio, quindi faccio login sul sistema e guardo, l'applicazione sta funzionando, ma vedo che i log si stanno riempiendo di "data not found", che non e' che dica molto. Dato che CL e' ancora loggato sul database mi dirigo direttamente da lui e faccio La Domanda:

IO - Che stai combinando col database di produzione di Cliente?
CL - Quello che hanno chiesto loro... un dump e restore della struttura dati, come dice la documentazione (indicando lo schermo)
IO - Loro hanno chiesto un dump della struttura dati di TEST ed un restore da PRODUZIONE su TEST.
CL - Boh, io non ci capisco niente.

Prima che potessi ribattere con qualche cosa di appropriato (tipo paragoni tra il fatto che lui 'non capisce niente' e l'intelligenza di un cercopiteco), DB si e' palesato.

DB - (agitando il telefono) Che succede con Cliente?
IO - Stavo facendo la stessa domanda.
CL - Io sto seguendo la documentazione.
DB - Quindi?
CL - Qui dice di fare un restore cosi' e cosa'.
IO - Quello devi farlo sul sistema di Test.
CL - Qui non c'e' scritto...
IO - Si' che c'e' scritto, nella linea sopra. Perche' non lo leggi? Tutto?

CL scorre su e giu' la documentazione con la velocita' di un missile a colpi di rotella del mouse, finche non gli levo il mouse dalle mani ed evidenzio la parte della documentazione che dice piu' o meno:

"1. Eseguire il dump del database di produzione [sequenza di comandi di esempio]
2. Eseguire il restore sul databae di test [sequenza di comandi di esempio]"

IO - Tu hai fatto un dump della struttura dati del db di PRODUZIONE e l'hai ripristinata sullo stesso db di PRODUZIONE vero?
CL - Io ho seguito la documentazione...
IO - No, col cazzo!
CL - La documentazione non e' chiara...
IO - La documentazione non e' fatta per fare un cut & paste, no, devi metterci un pelo di cervello.
DB - Possiamo risolvere il problema che ho gia' Cliente al telefono?

Io noto "en-passant" che apparentemente nessuno si sta occupando del monitor di sistema strillante...

IO - (rivolto a CL) Recupera l'ultimo backup del database di ieri e ripristinalo.
DB - Ma cosi' ci perdiamo un'intera giornata!
IO - Hai un'altra idea?
CL - E come lo ripristino?
IO - Facendo esattamente quello che hai fatto ma con il dump GIUSTO.

Come e' o come non e'... finisco per fare io il restore del database e ripristinare, piu' o meno, le funzionalita' dell'applicazione, lascio DB ed il nostro MarketingDude a giostrare con il cliente che vuole sapere WTF e me ne torno al mio lavoro che spero tanto di finire per oggi, anche se la speranza sta rapidamente scemando nella triste oscurita' del pomeriggio. Ma la pace e' di poca durata, perche' il monitor di sistema riprende a squillare. Senza manco guardare vado direttamente da CL.

IO - Che diavolo hai combinato adesso?
CL - Sto seguendo la documentazione...

No, questa volta anche meglio: ha fatto il dump della struttura del db di TEST e l'ha ripristinata sul db di produzione...

Ovviamente adesso ci aspetta una lunga appassionata discussione sulla documentazione che "non e' chiara" e sulla responsabilita' oggettiva di chi la scrive, evitando completamente una assai piu' profiqua discussione sulla (in)capacita' oggettiva di usare il cervello che e' in mostra e sul fatto che chi fa le cose dovrebbe prima cercare di capirle e fare domande competenti PRIMA di fare le cose...

Ed io ho anche capito che questo lavoro di grafici col cazzo che lo finisco oggi...

Davide
23/12/2016 08:40

Precedente Successivo

I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.

8 messaggi posta messaggio
Mattia Di Mattia - postato il 30/01/2017 09:49 - rispondi

Storie come sempre da far rizzare il pelo, ma in questa rinnovata "serie" trovo piu' un senso di sconfitta che di ridicolo.

E la cosa mi fa un po' paura, debbo ammettere. Ora capisco bene il titolo "Anni perduti".

Lampeggi!.

--
Mattia


Francesco Di Francesco - postato il 30/01/2017 11:45 - rispondi

Scusa D ma sto genio di CL era parente di chi per essere ancora li dopo una cazzata di questa portata?

 

Ciao

    Francesco

--
Francesco


argaar Di argaar - postato il 30/01/2017 13:32 - rispondi

spero bene che sia stato adeguatamente castigato..

passi il non capire (oh mica possono esse tutti compententi in tutto), passi il leggere male (anche se sei superficiale troppo)...ma far finta de niente accusando altro invece della tua incapacità proprio no!





PS: D, la password non me la riconosce, e il reset password non porta ad altro che alla stessa schermata per loggarsi o registrarsi, se provo a registrarmi mi torna il popup con un semplice "Error", se vuoi faccio da cavia per l'eventuale bug via mail o facebook o scegli te

--
argaar


Davide Bianchi@ argaar Di Davide Bianchi - postato il 31/01/2017 05:58 - rispondi

PS: D, la password non me la riconosce,

Vedo che un "aargar" ha fatto login alle 30/01/2017 15:44, quindi se non eri tu...

--
Davide Bianchi


Guido Di Guido - postato il 31/01/2017 08:16 - rispondi

<i>IO - La documentazione non e' fatta per fare un cut & paste, no, devi metterci un pelo di cervello.</i>

Per usare il cervello devi avercelo, e se lo avesse e lo usasse non sarebbe CL. No?

--
who uses Debian learns Debian but who uses Slackware learns Linux


Mario G. Di Mario G. - postato il 31/01/2017 09:56 - rispondi

Leggendo m'e' tornata in mente una cosa che diceva sempre mia nonna la traduco dal milanese, "roba da chiodi con la testa in legno" che indicava la totale follia.

Non ho davvero parole :\(

--
Mario G.


Yet Another Anonymous coward Di Yet Another Anonymous coward - postato il 31/01/2017 21:51 - rispondi

Impressionante ... E gliene veniva ancora a lui ... Ma come è possibile avere questa faccia tosta ? E' un imbecille ignorante e pure dava la colpa a te ?

Capisco che poi alla fine te ne sei andato ...

--
Yet Another Anonymous coward


Marcuxx Di Marcuxx - postato il 01/02/2017 09:55 - rispondi

Già, si capisce perché alla fine hai mollato quella faccenda - con un CL che era (penso io) per raccomandazione e un boss che appioppava a te tutti i lavori di escremento e tutti i rimproveri che sarebbero spettati al CL, ecco, io al posto tuo non avrei resistito cinque lunghi, eterni, cosmici anni...

--
Marcuxx


8 messaggi posta messaggio

Precedente Successivo


Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.


Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.

Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".

Web Interoperability Pleadge Support This Project
Powered By Gort