Tales from the Machine Room


Home Page | Comments | Articles | Faq | Documents | Search | Archive | Tales from the Machine Room | Contribute | Login/Register

Stress? Cosa e'?

E cosi', dopo gli avvenimenti narrati la volta scorsa, avevamo lasciato il nostro eroe (io) con il compito di verificare in una settimana tutto il lavoro di conversione ed estrazione dati da un database per il "lancio" di una applicazione.

Ah, ho gia' detto che il mio piano consisteva nel fare due giorni di ferie giovedi/venerdi? Il che mi lascia sostanzialmente 3 giorni prima della dipartita di K.

Ok, lunedi' e' passato con le modifiche al programma di conversione del database, martedi' mattina mi metto di buona lena, installo una ennesima macchina virtuale, ci installo tutte le librerie necessarie per far funzionare questi script e comincio a guardarmeli. E subito mi scontro con la dura realta': non posso da qui' collegarmi al database. Acchiappo subito T per fare i cambiamenti sul firewall. Lui nicchia. Io gli dico chiaramente che o mi apre il firewall o i cambiamento sugli script se li fa da solo. Il firewall viene aperto.

Comincio a controllare come funziona la cosa, allora lo script vecchio fa' una join su questa-e-quella tabella, poi cerca, sfrucuglia, smazza, flippa e sfruppallazza... perche' i dati nel db vecchio sono sparpagliati su 5 o 6 tabelle diverse. Tanto per dirne una, c'e' una tabella 'DOMINI', una tabella 'CONFDOMINI' ed una tabella 'SPAMDOMINI', con relazioni 1-1, la tabella DOMINI contiene il nome del dominio e poco altro, la tabella CONFDOMINI contiene le informazioni relative al server SMTP di destinazione e la tabella SPAMDOMINI cosa dovresti farci con lo spam trovato per il dominio (delete, forward, addheader, changesubject). Quindi 3 tabelle per informazioni che potrebbero essere semplicemente su una. Ed infatti nella struttura nuova c'e' UNA sola tabella che contiene tutte le informazioni. Meglio. Solo che questo mi obbliga a riscrivere praticamente da capo tutto lo script.

Mi metto percio' di lena. La cosa si rivela piu' ardua di quello che sembra, perche' ogni 10 minuti (pare a me) qualcuno arriva a domandare qualche cosa, tipo "perche' il cliente X riceve ancora spam anche se hanno sottoscritto il nostro abbonamento?" risposta: perche' se il loro MX continua ad essere il loro server di posta la posta non passa da noi e noi non possiamo controllarla. Poi e' la volta di DaBoss che ha altri patemi relativi al maledetto CRM, poi arriva Bart che vuole che io guardi come mai il MS SQL Server cluster di $notacompagniatelefonica non funziona (??? io ho abbandonato SQL Server alla versione 6.5, 10 anni fa!), varie ed eventuali.

Dopo un bel po' ho una versione 'aggiornata' di ogni script. A questo punto alzo gli occhi dalla tastiera e vedo T che si infila la giacca.

IO - E dove stai andando adesso?
T - (indicando la finestra) Dato che sono le 6 di sera me ne vado a casa, perche'?

Io guardo fuori: buio pesto! Ma come???? Che fine ha fatto la giornata!!

Fast-forward a mercoledi'. Oggi e' la giornata dei test di questi script. Ma la giornata comincia subito male perche' K arriva a chiedermi se posso fare dei cambiamenti sul database usato dall'applicazione.

IO - Come sarebbe a dire "dei cambiamenti"?? Quel foxxuto database dovrebbe essere stabile come una roccia! Dovremmo mettere in produzione l'arnese alla fine di questa settimana!
K - Si ma ho fatto alcuni aggiustamenti sull'interfaccia e mi servono alcuni cambiamenti, poca roba... allora nella tabella XYZ il campo "datacreazione" e' diventato "data_creazione", il campo "modificatoil" e' diventato "modificato_il", il campo "nomedominio" e' diventato "nome_dominio" e...

Ed e' andato avanti cosi' per un bel po'. Dopo averlo stramaledetto faccio i cambiamenti sul database, sullo script di conversione e (naturalmente) su tutti i maledetti script che ho corretto ieri.

Comincio percio' a fare i test, eseguo il primo script "vecchio" sul vecchio db, eseguo lo script nuovo e controllo i risultati. Lo script genera l'elenco degli indirizzi di white-list per ogni dominio. Ok, lo script vecchio ha generato un elenco di 975321 indirizzi, lo script nuovo 834632.. eeeeeh???? Che cappero di fine hanno fatto gli altri 140000 (e rotti)? Riprendi in mano lo script e controlla. E cosi' scopro che circa 1200 domini non sono nel database nuovo. Perche'? Ricordate cosa avevo detto di quella struttura dati? Bene, pare che circa 1200 domini della tabella 'DOMINI' non hanno un record di 'SPAM' o uno di 'CONF' corrispondente, ragion per cui la conversione non li riporta. Cerca di capire perche'. Perche' qualcuno (H) ha fatto dei cambiamenti "volanti" sul database senza passare dall'interfaccia. Metti insieme uno script per verificare se questi domini dovrebbero essere nel nostro database oppure no, scopri che sono dei record "morti" e non servono ad un tubo. Zappali via dal vecchio database, riprova. Successo! I due file prodotti sono uguali.

Arriva DaBoss.

DB - Hai dieci minuti di tempo per guardare se il modulo tal-de-tali funziona con la nostra versione del CRM?
IO - Vuoi mettere sta' merda di applicazione in produzione questa settimana oppure no? Se la risposta e' "si" pussa via.

Si ri-appropinqua K.

K - Avrei bisogno di altri due o tre cambiamenti sul database...

Ripetete il tutto per una ventina di volte...

Ad un certo punto Bart mi compare accanto. No, in effetti era li' da un po' che cercava di attirare la mia attenzione, solo che ero troppo concentrato per guardarlo.

Bart - E' pronto il server per l'applicazione? Cosi' domani vado in co-lo ad installarlo.
IO - Pronto e' pronto. Solo che non sono sicuro di quali indirizzi IP dovrebbe avere.
Bart - Be', se lo sistemiamo lo metto in auto cosi' domani vado la' direttamente.
IO - Ma non possiamo farlo dopo?
Bart - Guarda che sono le 5.40...

Mortacc... corri a cercare l'indirizzo ip giusto, riconfigura il coso, scrivi il tutto nel malefico database di configurazione, spegni tutto e molla il server nella mani di Bart.

Se non altro, K e DaBoss se ne sono andati a casa e non possono piu' rompere. Finisco il tutto alle 20.25, lascio un messaggio a T sul quali sono gli script giusti, aggiorno la copia in subversion e me ne vado a casa. Secondo me quella cosa non va' "live" venerdi'... Io comunque per non saper ne' leggere ne' scrivere spengo il cellofono.

Davide
01/06/2009 08:00

Previous Next

Comments are added when and more important if I have the time to review them and after removing Spam, Crap, Phishing and the like. So don't hold your breath. And if your comment doesn't appear, is probably becuase it wasn't worth it.

19 messages this document does not accept new posts
WM... le cose cambiano By WM - posted 01/06/2009 08:37
ciao davide, buon lunedi'

a differenza delle altre volte (qui domani e' festa e io "ponteggio") oggi riesco a leggere presto il tuo racconto, o forse dovrei chiamarlo "la tua odissea"

come hanno gia' suggerito altri ho la netta sensazione che che se non e' gia' pronta almeno stai gia' preparando la valigia (con buona pace dello zingarelli :-\( )

buona giornata
WM

--
WM


VladPrimo?!?!?!?! By Vlad - posted 01/06/2009 08:38

Non saprei cosa scrivere...

Ma sono l'unico che legge BigD al lavoro stamattina???

Vlad

--
Vlad


Davide Inglima-AT- Vlad By Davide Inglima - posted 01/06/2009 10:01

> Non saprei cosa scrivere...
>
> Ma sono l'unico che legge BigD al lavoro stamattina???

Quale parte di "NO" non ti é chiara? ;D

--
http://limacat.blogspot.com


argaar-AT- Vlad By argaar - posted 01/06/2009 10:15

> Non saprei cosa scrivere...
>
> Ma sono l'unico che legge BigD al lavoro stamattina???
>
> Vlad
> --
> Vlad

no no eccoci...fedelissimi come sempre, mercoledi parto ma oggi da gran lavoratore non posso ponteggiare...D. c'è un'altra storia dopo che parla del disastro della messa in live dell'accrocchio o è semplicemente sadismo? a me piaceva sapere se almeno ha funzionato...

--
Noi esploriamo...e ci chiamate criminali...


Davide Bianchi-AT- argaar By Davide Bianchi - posted 01/06/2009 10:26

> D. c'è un'altra storia dopo che parla del disastro della messa in live dell'accrocchio o è semplicemente sadismo? a me piaceva sapere se almeno ha funzionato...

Anche piu' d'una... non ti preoccupare.

--
Davide Bianchi


argaar-AT- Davide Bianchi By argaar - posted 01/06/2009 11:27

> > D. c'è un'altra storia dopo che parla del disastro della messa in live dell'accrocchio o è semplicemente sadismo? a me piaceva sapere se almeno ha funzionato...
>
> Anche piu' d'una... non ti preoccupare.
>
> --
> Davide Bianchi

sempre sicuro che non t'abbiano fatto il malocchio eh? che ne sai magari da piccolo....

--
Noi esploriamo...e ci chiamate criminali...


Nausicaa-AT- Vlad By Nausicaa - posted 01/06/2009 12:04

> Non saprei cosa scrivere...
>
> Ma sono l'unico che legge BigD al lavoro stamattina???
>

No non sei l'unico, solo che qualcuno ha lavorato anche ieri nel tentativo di travasare un pc da un case a un altro (cosa tutto sommato semplice direte voi), e la scheda video nuova di pacca è defunta solo per il passaggio...
Oggi pomeriggio almeno mi diverto a spianare un xp e a passarci sopra una ubuntu.

--
Nausicaa


anonymousdeja' vu By anonymous - posted 01/06/2009 08:44

Mah, non so perche' ma mi sembra si aver un deja' vu pauroso...
Il fatto e' che io non vivo e lavoro in Olanda... :-\(

--
anonymous


Matteo Jurmanstress, cosa l'e'??? By Matteo Jurman - posted 01/06/2009 08:48

ma ricordo male o ai vecchi tempi "mancanza di organizzazione da parte tua non e' un'urgenza da parte mia"? ti sei ammorbidito con gli anni?

"michela e michela (giuro le mie colleghe si chiamano davvero cosi'), io sono in ferie dal giorno x al giorno x+7, il telefono sara' acceso fino alle 930, poi essendo sulle piste/in piscina/in giro con l'Erede lo tengo staccato fino alle 19 (che tanto loro l'ufficio e' gia' chiuso), se avete bisogno perche' DaBoss si e' perso di nuovo la pwd di scaip entro quell'ora dovete chiamarmi"
giorno uno delle ferie, telefonata ore 925, Erede gia' con gli scarponi addosso, io poco via: "dov'e' il contratto tal dei tali? DaBoss vuole vedere cosa hai fatto..." "lo ha lui sulla sua scrivania, nella cartella "contratti da visionare" "... ah, si e' vero, grazie, scusa!" <spegn' l'aggegg'>
giorno due delle ferie, telefonata ore 928, Erede gia' con gli scarponi, io gia' con gli scarponi, sci e snowboard sotto braccio: "dov'e' la cartella delle offerte del 2008 sul server? DaBoss deve farne una nuova simile a quella che hai fatto tu per $cliente_importante" "vai sulla cartella carta intestata, offerte, $babbomatteo, anno2008" "... ah, si e' vero, grazie, scusa!" <spegn' l'aggegg'>
dal terzo giorno in poi il cellofono e' rimasto spento fino all'ora di pranzo (ogni giorno due o tre chiamate in segreteria)...
ma non ero in ferie io???

non credo saro' il primo, comunque BUONA SETTIMANA A TUTTI!!!

--

---
BabboMatteo


A. TortellaSQL Server By A. Tortella - posted 01/06/2009 08:56

> io ho abbandonato SQL Server alla versione 6.5, 10 anni fa!

Beato te, io è da un paio di settimane che ho dovuto metterci le mani e già mi viene da piangere...

--
A. Tortella


Luca BarbaModifiche al DB By Luca Barba - posted 01/06/2009 15:00

Ma la giornata comincia subito male perche' K arriva a chiedermi se posso fare dei cambiamenti sul database usato dall'applicazione.

La risposta giusta e' una sola.

NO

--
Luca Barba


Riccardo Cagnassoquello succede anche a me By Riccardo Cagnasso - posted 01/06/2009 15:51

Son li che sviluppo qualcosa e:
map [1..10] (\x->"Puoi guardare questo ticket?")

Poi a fine mese "Ma hai segnato quante ore hai dedicato a ogni ticket"?
Ma #&$"

--
Riccardo Cagnasso


camilloconsolati By camillo - posted 01/06/2009 17:35

venerdi ho mandato in produzione un'applicazione che dieci minuti prima di installarla sui server stava ancora compilando. di testing ovviamente zero... ah, le tempistiche...

--
camillo


LucaScript By Luca - posted 02/06/2009 04:11

Ero curioso di sapere in che linguaggio sono stati scritti gli script vecchi e quelli nuovi e perche'.

Grazie e buon giugno a tutti!


--
Luca

Davide Bianchi-AT- Luca By Davide Bianchi - posted 02/06/2009 08:08

> Ero curioso di sapere in che linguaggio sono stati scritti gli script vecchi e quelli nuovi e perche'.

Sempre Perl, perche' a) e' rapido, b) e' facile e c) ha tutto quello che mi serve ed anche di piu'.

--
Davide Bianchi


kallsuDomandina ... By kallsu - posted 02/06/2009 12:05

Scusa D, quando hai visto le 3 tabelle e subito dopo la tabella che conteneva i dati di tutte e tre, non ti è venuta in mente di fare un controllo sui record dell'ultima e delle tre ? Per poi fare un test di congruenza con il "vecchio" db ?

Come hai sempre insegnato tu, diffidare sempre delle $Applicazioni fatte in modo pisquano.

Comunque io mi sarei fatto offrire pranzo da K, e colazione da T, Bart e DB, visto che ti hanno sfrugugliato tutto il tempo.

Salve D,

--
kallsu


Davide Bianchi-AT- kallsu By Davide Bianchi - posted 02/06/2009 12:21

> Scusa D, quando hai visto le 3 tabelle e subito dopo la tabella che conteneva i dati di tutte e tre, non ti è venuta in mente di fare un controllo sui record dell'ultima e delle tre?

Si', mi e' venuto, solo che tra il tempo non proprio "ottimale" ed il fatto che o faccio i controlli o controllo gli scripts...

--
Davide Bianchi


Simoneil lavoro By Simone - posted 03/06/2009 08:44

ah cero anche io lunedì, e ho fedelmente letto la storia ma purtroppo non ho avuto un gran tempo visto che ero da solo a tenere il forte (l'ufficio)... qua stranamente cera un gran numero di CL in circolazione.
Bhe ora mi aspettano 2 settimane col mio collega UL windowss' lover.... forse era meglio tenere il forte da solo....
Bhe al massimo ci scappa qualche storia alla D. !!
Buon resto della settimana a tutti!

--
- Simone


Danieleah... le ferie... By Daniele - posted 03/06/2009 17:22

> ho gia' detto che il mio piano consisteva nel fare due giorni di ferie giovedi/venerdi?

E di che ti lamenti... Almeno te li hanno lasciati!
A me li avrebbero fatti saltare esattamente mezz'ora prima delle 18 del mercoledi!

--
Daniele


19 messages this document does not accept new posts

Previous Next


This site is made by me with blood, sweat and gunpowder, if you want to republish or redistribute any part of it, please drop me (or the author of the article if is not me) a mail.


This site was composed with VIM, now is composed with VIM and the (in)famous CMS FdT.

This site isn't optimized for vision with any specific browser, nor it requires special fonts or resolution.
You're free to see it as you wish.

Web Interoperability Pleadge Support This Project
Powered By Gojira