Gli "Ospiti" della Sala Macchine


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Imposta lingua:en it | Login/Register


Nota: i miei commenti (quando ci sono) sono in italico

Non sono stato io!!!

"Negare, negare, sempre negare!"

Deve essere questa la frase con cui inizia e termina ogni lezione del corso: "Come fingersi SysAdmin e spillare molti soldi a manager senza cervello"

O, almeno, deve essere lo standard del LuserSysAdmin con cui lavoro io, suppongo...

Ma fatemi andare con ordine:

E' lunedi' di settimana scorsa, quando la mia casella di posta del lavoro si riempie di ben 4 mail da SL (il nostro SurferLuser), perche' dico si riempie? Perche', solitamente, e' tanto se ne ricevo un paio alla settimana... Comunque, in queste mail SL fa presente che si verificano errori nel sito di un loro cliente, chiamiamolo ${ficchiamo il naso nei vostri affari}.

Ora, c'e' da aprire una parentesi su questo sito, ma non solo, su quasi tutti i siti di $AziendaWebDesignerPatetica di SL: la maggior parte di 'ste siti sono banalissime pagine HTML, ma, in alcuni, ci sono delle vere e proprie Web App, pensate col culo e scritte coi piedi, da l'ex programmatrice della ditta di SL, CL per le genti. Questa tipa, aveva, ed ha suppongo, una certa abilita' nella grafica (nota: GRAFICA intesa come senso estetico e capacita' di design, NON fare grafica, dato che ogni volta che leggo i suoi CSS mi viene un ictus), ma nel resto e' una completa incompetente, per non dire di peggio.

Bene, capita talvolta, che in una di queste Web App sorgano problemi, o bug mai notate (o notate, ma ignorate dai CL), la maggior parte sono cagate da 10 minuti, ma talvolta ce ne sono alcune un po' strane che richiedono un po' di lavoro (tipo riscivere l'applicazione...). Beh, questa non era ne' il primo, ne' il secondo tipo, infatti, si verificava un problema su di una procedura che aveva sempre funzionato.

Mmmm, una procedura che ha sempre funzionato come un orologio svizzero, tutto d'un tratto non funziona piu'. Questo mi puzza di problemi con il swerver, gestito da, ricordo, il BHFH.

Sono li, pronto a LARTare via mail il BHFH, quando butto un occhio alla terza mail, in cui SL dice sostanzialmente "Aspetta pero', che BHFH ha fatto delle modifiche sul server e forse e' colpa sua". WOW, miracolo, piovera': SL ha ragionato ed ha trovato una soluzione (vero che non sarebbe la prima volta in cui la causa di un problema e' "BHFH"). Ma l'ultima mail mi taglia le gambe, SL mi comunica che il BHFH non ha toccato la partizione del server con installato Winsozz, quindi mi tocca rimboccarmi le maniche e darci un'occhiata.

Vabbe', mi loggo via FTP e mi scarico il file che da problemi (ASP), ma gia' li noto qualcosa che non va: ci sono un sacco di file temporanei, nella root del sito. Noto quasi subito che i file sono in realta' i report PDF che la procedura che non funziona crea, invia come attachment alla risposta e poi cancella, solo che non dovrebbero essere li, ma in una sottodirectory chiamata fpdf e poi dovrebbero essere cancellati... Qualcosa mi fa pensare che il webserver non abbia i permessi per scrivere nella directory e quindi il file venga creato nella root.

Decido, per verificare, di uploadare una versione patchata del file che genera l'errore che mi stampi anche il path del file temporaneo, per vedere se la mia teoria e' giusta, ma, indovina un po', l'utente FTP non ha i privilegi per scrivere nella directory root.

Eggia', BHFH non aveva fatto niente.

Uff, parte la mia LARTata via mail al BHFH, con CC TheBoss ed SL, ed il problema si dovrebbe risolvere.

Tra l'altro, mentre aspetto una comunicazione da qualcuno degli interessati, mi contatta CL2 (il CL di cui ho gia' detto precedentemente) dicendomi che nell'area amministrativa del sito di $cleanMe non funziona piu' l'inserimento nel database, ovviamente, Access.

Con un senso di Deja' Vu, provo un inserimento di un record e mi becco un bel, si fa per dire, error 80004005, con spiegazione "L'operazione necessita l'uso di una query aggiornabile". Un paio di colpi di google, mi rivelano che il problema e' causato da un FOTT##A MANCAZA DI PERMESSI SUL FILE .mdb O SULLA DIRECTORY CHE LO CONTIENE, AAAARGGGHHH!!!

Dopo un 10 minuti per farmi passare il nervoso, mando una mail a CL2, con CC SL e TB, dicendogli che la soluzione posta al problema di ${ficchiamo il naso nei vostri affari} (che il BHFH faccia il suo lavoro), risolvera' anche questo problema.

Vabbe', nei giorni successivi, sembra che i problemi si risolvano, infatti l'errore che si verificava, generando il PDF, viene risolto. Purtroppo, pare che i problemi con $cleanMe (che sto cominciando ad odiare veramente quel sito) non vengano risolti. A poco valgono i miei "BHFH deve mettere a posto i permessi".

Arrivo, infine, ad ignorare la cosa, avevo altro da fare, infatti mi arriva una mail da SL che mi comunica un prossimo contatto con una creatura di un altro pianeta, ops, volevo dire con CL3, che gli gestisce un server Winsozz per un cliente importante. Server che contiene un DB in MSSQL con lo storico di tutti i turni di lavoro di una ventina di sottodivisioni in tutta Italia, per un 400 persone (mi e' sembrato di capire).

Il problema e' che, recentemente, le procedure che avevano sempre funzionato, ora non fuzionano piu'.

Pesante senso di Deja' Vu...

Dato che il server e' accessibile in Remote Desktop, entro e d'ho un'occhiata al DB. Scoprendo che in realta' sono 4 DB, chiamati $nomeApplicazione06, $nomeApplicazione07, $nomeApplicazione08 e $nomeApplicazione, con il DB dell'anno in corso in quello senza numero.

Abbastanza chiaro che, alla fine di ogni anno, utilizzino qualche procedura per spostare i dati in un altro DB.

Vabbe', dopo un po' di test sulla Web App (ed avendo scoperto che funziona SOLO su IE) sono pronto a fare Le Domande:

  1. Da quando si verificano questi problemi?
  2. E' stato fatto qualcosa sul server in quel periodo?

La risposta non si fa attendere:

  1. Sara' da una decina di giorni (era il 15 Gennaio)
  2. No, non e' stato fatto nulla sul server. (sento puzza di menzogna lontano un Kilometro)

Ok, magari, per un qualche fortuito caso, sono finito in un universo dove i CL non mentono, decido quindi di dare un'occhiata al codice per vedere se c'e' una procedura che, al primo utilizzo del nuovo anno, sposta il DB in automatico (io l'avrei fatto cosi').

Il giorno passa senza che io trovi niente di importante, l'unica cosa che mi lascia perplesso e' la causalita' con la quale si ripete il problema, infatti a volte va, a volte no.

Do un'occhiata all'ora, sono le 6 di sera, ok, e' ora di andare a casa.

Il giorno dopo, TB mi telefona che manco mi sono seduto.

TB - Ciao, D. Volevo dirti che alle 10 SL ti chiama per parlare di ${Nome della Web App che non funziona}.

Ok, tra l'altro noto che il responsabile del Swerver mi ha mandato via mail la directory con tutta la web app, quindi mi metto a scrutare piu' attentamente il tutto. Dopo una ricerca in stile Indiana Jones tra il codice peggio scritto del mondo (in ColdFusion), riesco a stabilire che "No, non c'e' alcuna procedura automatica per l'aggiornamento del DB".

Un po' interdetto, mi connetto, via RD, al SQLmanger di MSSQL e guardo un po' le date di creazione dei DB, e noto subito che il Database $nomeApplicazione08 e' stato creato, indovina un po', il 5 Gennaio (ricordo che il 15 mi avevano detto che i problemi erano iniziati 10 giorni prima). Ok, credo proprio di aver trovato il problema. Ma perche' generare un nuovo DB puo' creare un problema?!?

Mentre sono li, che mi lambicco sul come e sul perche', il mio stomaco comincia a brontolare. Guardo l'ora e noto che e' mezzogiorno.

Fuck, SL.

OVVIAMENTE, non mi ha chiamato, grrrr...

Prima di andare a pranzo lo faccio chiamare dalla nostra HR-Receptionist-E molto altro, ma SL e' desaparecidos: non e' in ufficio ed il cellofono e' spento.

Vado a pranzo, torno con calma, aspetto che ritorni l'orario di lavoro, ed alle 14 lo chiamo.

SL - ah, scusa per stamattina, ma ho finito la riunione proprio ora.
IO - Si, non c'e' problema (alla fine so bene che non puo' decidere lui la durata delle riunioni, ma poteva sprecarsi a mandarmi un messaggio)
SL - Allora, sei riuscito a capire qualcosa?
IO - Beh, il problema sembra verificarsi praticamente a caso. L'unica cosa che mi viene in mente e' che il DB si sia un po' sputtanato.
SL - Ah, si, di questo volevo parlarti.
IO - (Sentendo un tremito nella forza) Cosa?
SL - Beh, hai presente che ogni anno c'e' un DB diverso?
IO - (Sentendo l'energia aumentare) Si, l'avevo notato.
SL - Ecco c'e' una procedura che ho usato fino all'anno scorso, quando ho dato il server in mano a CL3, ma e' un po' lunga e per quest'anno CL3 ha "deciso" (quanto odio questa parola) di fare un'altra cosa.
IO - (Sentendo come se milioni di file stessero urlando tutti insieme, cerco di apparire casuale) Che cosa?
SL - Beh, hai presente che MS SQL crea dei file enormi dove contiene i DB?
IO - (che non ne ho idea, dato che MS SQL non l'ho mai usato, ma immaginando non sia troppo diverso da MySQL o FrontBase in questo) Certo.
SL - Beh, CL3 ha spento il DB, preso il file che corrispondeva all'anno in corso, ha fatto copia / incolla nella stessa cartella (e dagli con la "cartella") e l'ha rinominato con 08 alla fine, poi ha riacceso il DB.

Ora, io non sono un esperto di DB, non so una mazza di MSSQL, ma, PORCOME, COSA DEVI AVERE DI SBAGLIATO NEL PENSARE DI POTER CAZZAGGIARE COI FILE INTERNI DI MSSQL, SENZA SPUTTANARE L'INTERO ACCROCCHIO ?!?!

Poi, non so, magari se si fa con un minimo di criterio funziona anche, ma, allora, perche' dovresti avere paura di dire che sei stato tu?!?!

(Hint: perche' fai le cose alla cazzo, senza sapere se fai bene)

IO - Ecco, potrebbe essere quello il problema

Taglio sul resto, perche' tanto non e' importante, comunque, consiglio a SL di esportare i dati che servono in query SQL, creare il DB con gli strumenti di MSSQL e POI importare i dati, sempre con gli strumenti di MSSQL.

La perla venne dopo:

SL - Ok, allora lo faccio io che ho una macchina di test apposta.
IO - (gia' sollevato all'idea di mollare la patata) Ok, fammi sapere.
SL - Ah, a proposito
IO - (Preoccupato...) Si?
SL - Hai presente quell'affare di $cleanMe?
IO - (Orrore!!!) Si, che ce l'ho presente...
SL - Provalo ora.

Apro il mio browser, punto la pagina, provo l'azione e....

TUTTO FUNZIONA ALLA PERFEZIONE!!!!

IO - Funziona!! Alla fine BHFH ha messo a posto i permessi
SL - Veramente no...
IO - In che senso?
SL - Beh, sono dovuto andare io da lui e fargli vedere come si faceva
IO - Ma stai scherzando?!?!
SL - Manco un po'. E pensa che quando gli ho fatto vedere mi ha risposto "Ah, ma chi ha messo questi permessi cosi'?! Io no di certo!!!"

A quel punto, a meta' tra lo shockato ed il disgustato (shockato perche' SL ha risolto il problema in un modo quasi intelligente, disgustato da tutto il resto) ho concluso la telefonata, sprofondando in un abisso di depressione.

Insomma: io non pretendo di incontrare solo gente intelligente, capace e dotata di buon senso nel mondo del lavoro; non pretendo che SL, che ha un modo di fare parecchio alla buona, possa sperare di capire al volo le capacita' delle persone che vorrebbero lavorare per lui; non pretendo neppure che, nonostante la iterata incapacita' nel gestire le cose, la completa inefficienza, l'assoluta mancanza di cervello che dimostrano piu' e piu' volte, SL si decida a dargli una pedata nel fondo schiena, ma, dio bono, come fai a non pensare che se ti chiedo "hai fatto qualcosa al server?", non e' mia intenzione accusarti di aver fatto cazzate e farti licenziare (semmai quello viene dopo), ma cerco soltanto di diagnosticare il problema in modo preciso, sia per diminuire le ore di tempo che mi serviranno per risolverlo, sia per evitare di sbagliare di brutto ed introiare il povero server.

Cioe', tu vai dal dottore e lui ti chiede "Sente male da qualche parte?" e tu, che hai un forte dolore che parte dal braccio destro, salendo per la spalla fino al centro del petto gli dici "No, sto benissimo" ed esci felice di non essere giudicato, verso una morte orribile.

"Negare, Negare, Sempre Negare" che tanto le grane se li beccano i tapini come me.

Daniele C.
16/07/2009 15:56

Precedente elenco Successivo

le storie degli ospiti sono in ordine sparso, quindi 'precedente' e 'successiva' possono portare su storie di altri autori

I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli (io o l'autore della storia) e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.

In aggiunta: se il vostro commento non viene pubblicato non scrivetemi al riguardo, evidentemente non era degno di pubblicazione.

5 messaggi this document does not accept new posts

Zanna

Deja Vu Di Zanna postato il 23/01/2009 21:50

Hanno fatto la stessa cosa da me i luser che gestiscono il db sql delle paghe ma con danni maggiori.
$dbpagheLIVE con i dati reali di $cifrone di dipendenti
$dbpagheTEST con gli stessi dati di $dbpaghelive ma usato per gli "esperimenti" (esperimenti tipo vediamo che succede se metto un 1 qui...ZAAAPPP e db nel vhalalla).
Il pisquano aveva fatto copia/incolla di $dbpaghelive rinominandolo il $dbpaghetest e riagganciandolo in MSSQL ignorando messaggi del tipo "Database duplicato" "Non lo vuoi veramente fare fidati", "No ti prego non lo fare NOOO" da parte di SQL.
Risultato che quando i CL pensavano di lavorare su TEST in realtà stavano aggiornando LIVE... a fine mese c'è stato qualche "lievissimo e insignificante" problema con i cedolini degli stipendi... e il sysadmin coglione (IO) ha dovuto andare di restore per una notte perchè ovviamente nessuno si ricordava esattamente quando avevano iniziato ad usare TEST.

-- Zanna


Daniele C.

-AT- Zanna Di Daniele C. postato il 26/01/2009 09:26

> Hanno fatto la stessa cosa da me i luser che gestiscono il db sql delle paghe ma con danni maggiori.

Vedo che il mondo è un po' tutto paese...

> Risultato che quando i CL pensavano di lavorare su TEST in realtà stavano aggiornando LIVE...

Allora, almeno su questo, avevo ragione...

> a fine mese c'è stato qualche "lievissimo e insignificante" problema con i cedolini degli stipendi... e il sysadmin coglione (IO) ha dovuto andare di restore per una notte perchè ovviamente nessuno si ricordava esattamente quando avevano iniziato ad usare TEST.

Consolati, da quello che ho capito, quelli mica lo sanno che roba è un backup...

-- Daniele C.


Gabriele Corrieri

Not only you ... Di Gabriele Corrieri postato il 24/01/2009 20:26

è senso comune negare sempre e comunque ... lo vedo anch'io: e le nuove leve sembrano molto più spicci di noi: la colpa è sempre di altri e loro manco hanno sfiorato $questo_o_quello, peccato che poi le balle spaziali si schiantano: e il povero sottoscritto comincia a raccontare come sono andati i fatti ..., ma dall'altra parte hanno, come al solito, capito che tanto la prossima volta potranno raccontarmi una balla nuova.

Chi diceva povera italia? concordo pienamente!



--
Gabriele Corrieri

Mitiu

un po' OT... Di Mitiu postato il 21/05/2010 21:01

ma il dolore non parte dal braccio sinistro? :-\) -- Mitiu

Daniele C.

@ Mitiu Di Daniele C. postato il 24/05/2010 09:37

> ma il dolore non parte dal braccio sinistro? :-\)

Può anche essere (mica sono un dottore), ma non è questo il punto. Il fatto è che non mi sognerei mai di crede di saperne di più di un dottore e penso che neanche i pirla di cui parlo lo farebbero.
Il punto è: perché ad un dottore credi se ti parla di medicina ed a me non credi se ti parlo di PC e simili? -- "I was watching the London Marathon and saw one runner dressed as a chicken and another runner dressed as an egg. I thought: 'This could be interesting.'" -Paddy Lennox
---
D.

Precedente elenco 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 Gojira