E' la vigilia di un giorno di festa: domani nessuno lavora.
Un ottimo momento per fare un'operazione un po' intrusiva sui nostri sistemi, così se qualcosa va storto o per le lunghe, c'è tutto il tempo di recuperare.
Devo svuotare un paio di tabelle temporanee che vengono utilizzate dal nostro sito. Entrambe hanno oltre nove milioni di record. Le strade possibili sono due:
svuotare direttamente le tabelle da SQL Server e cambiare il contenuto "sotto al naso" del nostro Application Server. Soluzione performante, ma non è che l'Application Server "si arrabbia"?
Cambiare alcuni parametri "magici" dell'Application Server in modo che sia lui a dare i comandi a SQL Server per svuotare le tabelle.
Siccome ne ho viste tante, decido di andare sul sicuro: scelgo la seconda strada, quella conservativa
Modifico i parametri e mi aspetto che dopo una mezz'oretta il sistema inizi a chiedere a SQL Server di svuotare le tabelle temporanee (che, mentre l'applicativo è in piedi, vengono di continuo utilizzate).
Dopo un po' torno a vedere che succede: non mi sembra che le cose stiano andando bene (le tabelle sono ancora piene) e il sito non risponde più, pur senza dare alcun errore.
Inizio un bel troubleshooting, ma prima di descrivervelo vi faccio una domanda: voi cosa fate per capire cosa sta davvero facendo SQL Server?