Stack Trace

venerdì 5 gennaio 2007 alle 05:10 | Pubblicato su Performance Tuning | Lascia un commento

Scrivere, testare e trovare errori nei programmi PL/SQL non è facile, con l’esperienza si impara ad aggiungere manualmente una serie di linee di codice che tracciano, registrano cosa fa il programma in modo da poter analizzare cosa fa realmente il programma. In inglese tale tecnica viene chiamata “instrumentig the code”. Lo stesso codice del kernel di Oracle è molto attrezzato, si tratta della “Oracle Wait Interface” il motore Oracle registra un gran numero di eventi per ogni operazione che fa, tali eventi sono visibili su una serie di viste documentate, i cui nomi cominciano con V$.

Una mancanza sentita nella gestione delle eccezioni dei programmi PL/SQL era il fatto che se l’eccezione veniva gestita si perdeva l’informazione sulla riga di codice dove tale eccezione era stata sollevata. Uso il tempo passato perchè dalla versione 10g Oracle ha colmato tale mancanza la funzione DBMS_UTILITY.FORMAT_ERROR_BACKTRACE().

Io ero fermo all’utilizzo delle variabili SQLCODE e SQLERRM. Nella sezione in cui gestivo le eccezioni salvavo il valore di tali variabili nella mia tabellina di log. Però spesso ho trovato errori subdoli, salvati nella mia tabellina di log, ma senza capire dove avvenivano esattamente nel codice, mancando l’informazione sulla riga di codice. Ora potrò colmare tale lacuna salvando l’output della funzione DBMS_UTILITY.FORMAT_ERROR_BACKTRACE().

Lascia un commento »

RSS feed for comments on this post. TrackBack URI

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

Crea un sito o un blog gratuitamente presso WordPress.com.
Entries e commenti feeds.

%d blogger cliccano Mi Piace per questo: