A method and system for detecting and recovering from errors in trace data
is provided. The trace data records selected events for executing
routines, and the routines corresponding to the events are represented as
one or more nodes in a tree structure. The events may be entries and exits
to executing methods. A trace record identifying a routine is read, and an
error condition is detected in which the identified routine does not match
a routine corresponding to a current node in the tree structure. The tree
structure is searched for a node that corresponds to the identified
routine. Performance statistics, such as execution time, are attributed to
nodes in the tree structure. In response to a determination that the
current node is a root node of the tree structure, then a new node for the
identified routine is added to the tree structure as a child node of the
root node and spliced into the tree at the root node.
Un metodo e un sistema per la rilevazione e recuperare dagli errori nei dati della traccia è fornito. Gli eventi selezionati delle annotazioni di dati della traccia per l'esecuzione delle procedure e le procedure che corrispondono agli eventi sono rappresentati come uno o più nodi in una struttura arborescente. Gli eventi possono essere entrate ed uscite ad eseguire i metodi. Un'annotazione della traccia che identifica una procedura è letta e una condizione di errore è rilevata in cui la procedura identificata non abbina una procedura che corrisponde ad un nodo corrente nella struttura arborescente. La struttura arborescente è cercata un nodo che corrisponde alla procedura identificata. Le statistiche di prestazioni, quale tempo di esecuzione, sono attribuite ai nodi nella struttura arborescente. In risposta ad una determinazione che il nodo corrente è un nodo della radice della struttura arborescente, allora un nuovo nodo per la procedura identificata è aggiunto alla struttura arborescente come nodo del bambino del nodo della radice ed è impiombato nell'albero al nodo della radice.