Gli "Ospiti" della Sala Macchine


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Login/Register
Nota: i miei commenti (quando ci sono) sono in italico

La Maledizione del Sito Fantasma

Avevamo lasciato il nostro Eroe (io insomma...) alle prese con i postumi di una telefonata con mr. CL (il luser grafico-consultante di $societa'_di_hosting), che mi aveva lasciato distrutto dopo avermi passato il backup delle tabelle per la migrazione del DB (da MS SQL a MySQL, vittoria dell'opensource).

Bene, avendo tutto in mano, feci un po' di search&replace sui suddetti file ed ottenni delle query SQL compatibili con MySQL. A questo punto, bisognava far connettere ASP a MySQL.

Ora, premetto che io NON sono un programmatore ASP, (lo so D, non ci vuol molto ad impararlo...) mi sono quindi messo a Googlare in giro ed ho trovato un paio di hint sull'utilizzo di MyODBC.

Taccio sulle bestemmie per installare IIS ed il sito su di una macchina Winsozz che usiamo per test (nota, io NON ho MAI utilizzato IIS, mi sono sempre rifuitato, anche quando sviluppavo su Windows), taccio sulle bestemmie per capire che c4$$0 di parametro ASP necessita per impostare il Driver MyODBC. Ma, alla fine il sito sembra funzionare (dopo solo 8 ore di lavoro...)

Bene, apro con un editor di testo il file che effettua il login e do un occhiata alla query. Tutto sembra a posto. Ok, vediamo che succede...

Provo il login sul sito in locale... funziona tutto... al primo colpo...

Non riesco neanche a crederci, e' la prima volta in assoluto che...

BANG, il sito si pianta sulla prima pagina dopo il Welcome, ritornando l'errore:


ADODB.Recordset (0x800A0CB3)
Il set di record corrente non supporta i segnalibri. Potrebbe trattarsi di 
una limitazione del provider o del tipo di cursore selezionato.
E che cavolo vuol dire?!?!

Vuole dire che il driver di database con quel recordset non supporta l'opzione 'bookmark'.

Passo una buona mezz'ora cercando di capire che sono i bookmark e come vengono usati e devo dire che la documentazione sul sito di Microsoft e' davvero penosa.

Dopo un'attenta lettura della documentazione relativa ad ADO su questo magnifico sito (colgo l'occasione per ringraziarti, Davide, per la tua guida sul Modello ad Oggetti ADO. E' stata davvero preziosa! pregodiniente), mi sento pronto ad affrontare il codice, ma prima mi sorge un dubbio: e' abbastanza chiaro che se l'hosting provider dove il sito verra' installato utilizza un driver che non supporta la funzione Bookmark, l'intera storia va a ramengo... (e qui si vede la pena di lavorare con linguaggi che non conosco: che ne so io se normalmente i Bookmark vengono abilitati?)

Dopo una chiaccherata con la mia responsabile, decidiamo per prima cosa di far preparare il Repository ASP del sito e di far creare il DB MySQL.

Ai Confini Dell'Hosting

Parte una mail verso BHFH (Bastard Hosting From Hell):


From: $candidato_al_girone_bestemmiatori
To: BHFH

Salve,
sono blablabla

Mi serve blablabla

Volevo inoltre sapere se e' possibile attivare l'utilizzo dei Bookmark 
degli ADO RecordSet.
Infine, dato che il sito si connettera' a MySQL, e' possibile installare MyODBC?

E qui mi metto in attesa che il BHFH si faccia vivo. Era un martedi' di maggio mi sembra.

FastFoward to Venerdi' della stessa settimana:

Mi arriva una mail da BHFH (alla faccia della prontezza...):


Per MyODBC non c'e' problema, lo installero' domani, ma per il resto devo vedere
perche' da noi l'hosting Windows e' tendente alla scomparsa

Un po' perplesso riporto la cosa al mio capo, che mi fa:

TB - Va beh, aspetta che sia pronto il repository prima di fare altro.

Da questo momento, era verso la fine di maggio, io non ho piu' saputo nulla. Ho anche mandato un paio di mail di sveglia al BHFH, ma nada, nisba, nessuna risposta.

La prima volta che ho risentito il nome $cleanme e' stato il 26 giugno, si, un mese dopo.

Mi arriva una mail dal mio capo:


From: TB
To: ${oramai a pochi passi dall'abisso}
Subject: BINGO!!!!!!!!!!!!!!!!!!

Incuriosito apro' la mail Ed e' un inoltro da parte di SL (il SurferLuser capo di $azienda_webdisigner) che dice di aver fatto spostare il DNS del dominio di $cleanme.

Ora, penso ci sia qualcosa di strano nel far aggiornare il DNS di un dominio ad un nuovo indirizzo che NON e' ancora attivo, quindi provo a puntare il browser all'indirizzo. Il server mi risponde che, si, il repository e' pronto, ma, allora, perche' nessuno si e' degnato di dirmi qualcosa?!?!

Nuova mail al BHFH, chiedendo se era stato fatto il lavoro, ma, ancora una volta, il nulla. Alla fine ci troviamo al 2 luglio, quando la calma della mia casella di posta viene turbata dal mio capo:


From: TB
To: ${Oramai prossimo ad un'ulcera}

Ho sentito SL, mi ha detto che BHFH sta ancora facendo le modifiche, ma 
il repository e' a posto. Puo' mettere la parte di FrontEnd online?

Rispondo, affermativamente, dopotutto il frontend sono una serie di pagine statiche. Procedo quindi a chiedere i dati di accesso via FTP. Ancora una volta, nessuno mi risponde. Il mio capo in un lampo di ispirazione mi suggerisce di usare i dati per l'accesso agli altri siti hostati sulla macchina, che (non ti spaventare) sono identici per ogni repository.

Mi loggo ed in effetti posso visionare il repository, ma non e' possibile caricare nulla: BHFH ha cannato i permessi sulla directory. Altra mail a 'sto ${espressione poco carina} e, miracolosamente, i permessi diventano -rw. (Nota: sono venuto a sapere che, infine, persino SL si sia stufato ed ha fatto un cazziatone a BHFH, stranamente quest'ultimo ha cominciato a rispondere alle mie mail...)

Dieci minuti dopo, il sito statico e' Online. Mission Accomplished! Contatto SL, informandolo della cosa, e gli faccio presente che i dati di accesso al DB non mi sono ancora arrivati.

E di nuovo il nulla, il silenzio, il vuoto nella mia casella di posta.

E' il 10 luglio, allegro come un condannato a morte mi metto al lavoro, nel caldo assoluto (28 gradi la mattina, mi sembra). All'improvviso - DING - e' SL che mi comunica i dati di accesso al DB. Incredibile, piovera'!

Ma il cielo resto' ben sereno, infatti, tentando di connettemi con i dati, il server mi ritorna un bel "Impossibile accedere al DB"...

Ennesima mail a BHFH, chiedendo conferme sui dati e sul lavoro fatto, e, stranamente, lui mi risponde in tempi brevissimi, indicandomi il CORRETTO indirizzo IP del DB-server (che aveva cannato a dare ad SL), infine il sito si connette al DB. Alleluja!!!

C'e' ancora il problema del Bookmark, ma, dato che mi hanno assicurato che il repository e' a posto, do un lettura a http://www.soft-land.org/documenti/adomod_res#cursortype, risolvendo il problema settando il cursortype ad adOpenKeyset ed il CursorLocation ad adUseClient.

"Il mio lavoro e' concluso!!"

Ovviamente, Mr. Murphy non era d'accordo con me.

si, ma anche te lo istighi...

Due giorni dopo, SL mi contatta dicendomi che non e' possibile connettersi al BackEnd dell'applicazione utilizzando IE. Provo e noto, con dispiacere, che SL ha proprio ragione.

Un paio di controlli dopo, mi rendo contro che IE non vuole in nessun modo creare i Cookies per il malefico sito. Ora, sorvolo sulle prove, contro prove, tentativi varii (settaggio host, riconfigurazione data di scadenza, rimaneggio del modo di creazione del Cookie stesso). Basti pensare, che ho passato due giorni, con continue E-Mail minacciose di SL, che predica bene, ma razzola male, dato che lui tanto puntuale non e', a fare tentativi, fino ad arrivare alla conclusione che il codice era giusto.

Come dice Sherlock Holmes, una volta tolto l'impossibile, quello che resta, per quanto assurdo, e' sempre colpa di BHFH. Come dite? Non era cosi'? Ma in questo caso ho assolutamente ragione: avendo smanacciato con la creazione dei cookies, ho dovuto caricare numerose volte i file sul server, quindi ho notato, piu' per caso che per abilita' mia devo dire, che le date dei file caricati non erano corrette. Erano, esattamente, un giorno antecedenti.

A questo punto sono certo che avete gia' indovinato! Ebbene si, il server aveva l'orologio impostato al giorno prima. Quindi, il cookies appena creato era, a tutti gli effetti, vecchio di un giorno, dato che la data veniva impostata sul server. Un giorno di troppo, direi.

E questo spiega anche perche' ti rispondeva in ritardo: per lui era sempre il giorno prima.

Modificato lo script in modo che il cookies scadesse il giorno dopo, tutto comincio' a funzionare perfettamente. Qui mi resta una piccola parentesi. Io avevo, ovviamente, testato il sito dopo averlo messo in produzione, e funzionava perfettamente con FireFox 3. Allora mi chiedo, ma FireFox 3 accetta Cookies scaduti?!? Mi sa proprio che ho trovato un altro baco nella versione 3.

Ma che ha Murphy contro di me?!?!?

Black Perl

Un paio di settimane fa, il mio capo mi dice che gli e' arrivata una mail con una serie di problemi, che preguidicano in maniera irreversibile il funzionamento del sito. Sbuffando, mi leggo la suddetta mail, aspettandomi di tutto.

I problemi erano: (li riporto come mi sono arrivati)

  1. la 'a' accentata in citta' non viene visualizzata correttamente, si vede un segno strano, cosi non posso lavorare!
  2. quando apro un utente per modificarlo, la "V" del campo abilitato non e' settata, devo farlo a mano, cosi non posso lavorare!
  3. non riesco a cancellare i cantieri, ma questo non e' grave.

Ok, dire che non ho capito nulla e' dir poco. Telefonata in diretta del mio capo alla tipa, con traduzione dei problemi:

  1. Nella lista dei clienti (una tabella) le diverse colonne sono ordinabili per i campi, il link del campo "Citta'" non veniva visualizzatto in modo corretto (problemi col charset), ma il link funzionava, andava tutto, ma il fatto che la parola non fosse corretta ne pregiudicava, a detta sua, il funzionamento.

    Tempo di risoluzione 30 secondi: Search&Replace il carattere incriminato con la Entity corrispondente.

  2. Alla fine ho capito che si riferiva al checkbox associato al campo abilitato. Lo script non lo indicava checked all'apertura, anche se il cliente era abilitato.

    Tempo di risoluzione: 5 minuti (di cui 4 per capire che la versione di ASP installata sul server non fa 1=true in automatico)

  3. Questa era l'unica cosa grave, com'e' che il DB non funziona?

    Tempo di risoluzione: circa 4 ore, di cui 3 passata nel seguente modo:

    • Ricerca problemi nel codice, nulla il codice e' corretto.
    • Ricerca problemi nella table del DB, mmm non c'e' la table nel DB, che sia questo il problema?
    • Ricerca di... ma che cazz... perche' ha una stringa di connessione diversa?!?
    • Ri....MAPORCOME!!! E' LEGATO AD UN FILE MDB, UN F0T77UT0 FILE MDB!!!!!!
    • Ricerca cause dell'errore, permessi non sufficienti
    • Cambia permessi sulle cartelle. Funziona? Ovviamente, no!

      intendi DIRECTORY, vero?

    • Mail al BHFH: cambiami il permesso sulla cartella tal dei tali

      intendi sempre DIRECTORY, vero?

Il tutto condito con alcune personalissime versioni del rosario. Credo che non ci sia piu' una chiesa con una vetrata integra in tutta la citta'. Ma alla fine, sembra funzionare!!!

Che sia la fine? Lo spero vivamente!!!

The End?

Daniele C.
16/07/2009 15:52

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.

9 messaggi this document does not accept new posts
Daniele C.Daniele C. Di Daniele C. - postato il 16/08/2008 17:45
Faccio umilmente le mie scuse per aver chiamato le Directory con un altro nome

GiepiGiepi Di Giepi - postato il 18/08/2008 08:56

Quale nome? Cartelle?


LART! LART! LART!


BoskBosk Di Bosk - postato il 18/08/2008 10:09

Sempre meglio "cartelle" che "indirizzari" (Trovato su un DOS Toshiba 3.1 se non ricordo male)... :\)


bhe'... non e' "peggio", e' in effetti una traduzione diretta e senz'altro migliore di 'directory'


KurganKurgan Di Kurgan - postato il 18/08/2008 11:37

"Cosi` non posso lavorare!"

Questa e` la frase che quando la sento mi fa iniziare a sbavare, ringhiare ed estrarre il LART piu` grosso e coperto di chiodi arrugginiti che trovo a portata di mano.

Soprattutto perche` nel 99% dei casi si tratta di un problema assolutamente minore, aggirabile banalmente impiegando un secondo di tempo e un fottuto neurone, ma si sa che il tempo dei luser vale un milione di volte piu` del mio, e che i neuroni del luser sono ancora tutti imballati da quando gli hanno consegnato il cervello. Temo che i luser siano collezionisti di neuroni: anziche` usarli, li tengono in una vetrinetta dentro l'imballo originale sigillato cosi` non perdono di valore.


Daniele C.Daniele C. Di Daniele C. - postato il 18/08/2008 12:19

@Kurgan
Si, anche a me causa le stesse pulsioni quella frase...
Sfortunatamente:
1- La tipa non era l e l'ho sentita solo via mail e telefono.
2- Il mio capo si rifiutato categoricamente di farmici parlare (che dite? Mi conosce bene?)

VerzasoftVerzasoft Di Verzasoft - postato il 05/09/2008 17:02

Ecco, non vorrei dirvelo ma nel manuale di MSDOS 2.0 che ho qui (ammazza che malloppo!) le directory erano tradotte come "direttorio". Rabbrividite!


che e' una traduzione quasi letterale e (sinceramente) preferibile a "cartella".


andygrainsandygrains Di andygrains - postato il 10/09/2008 19:42

@Verzasoft
Anche il mio prof di Impianti di elaborazione traduceva directory con "direttorio" e file con "contenitore"

DanDan Di Dan - postato il 04/11/2008 16:44

S, ai tempi del DOS 6.2 e dei suoi file di help atrocemente tradotti (opzione di un comando: in inglese nell'esempio di sintassi, in ITALIANO nel riferimento subito sotto. Potrei sbagliare, ma mi sembra fosse nomecomando [-a -b -antani -CASE] e sotto -CASELLA: opzione per questo e quest'altro. Yay!), a quei tempi dicevo, anch'io ricordo di aver letto il bel termine "direttorio". Che comunque preferisco a "cartella".

NiniNini Di Nini - postato il 20/11/2008 08:34

ma no, dai, direttorio no...

http://it.wikipedia.org/wiki/Direttorio


9 messaggi this document does not accept new posts

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 Gort