Browse Prior Art Database

Execution Time Dynamic Data Collection at First Detection of Failure

IP.com Disclosure Number: IPCOM000112931D
Original Publication Date: 1994-Jun-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 66K

Publishing Venue

IBM

Related People

Kearney, MP: AUTHOR

Abstract

The task of collecting error information is usually done by the operating system when the operating system detects a program error and cancels the job. Thousands or millions of instructions may have been executed since the error first occurred and the symptoms lost. Disclosed is a method of collecting information about a program failure at the time of first error detection and it collects that information dynamically at execution time.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Execution Time Dynamic Data Collection at First Detection of Failure

      The task of collecting error information is usually done by the
operating system when the operating system detects a program error
and cancels the job.  Thousands or millions of instructions may have
been executed since the error first occurred and the symptoms lost.
Disclosed is a method of collecting information about a program
failure at the time of first error detection and it collects that
information dynamically at execution time.

      In summary, the existing process for software error correction,
except for P. Cobb (patent pending), embraces a methodology that
waits for a damage caused by a failure to surface.  Then, data trace
points are inserted, the problem is recreated, and the execution path
of the program is followed while large amounts of data are
accumulated, hopefully catching the data that will determine what
went wrong.  Cobb presents a superior approach, but the data
collected is defined statically before execution time.

      The proposed method of selecting error data dynamically during
execution time rather than statically before the program runs reduces
the volume of data collected and enhances the quality of the data
collected.  The method uses a pointer to the error data that is
passed at execution time pointing to the selected error data.
Several pieces of error information could be assembled from different
storage locations before passing the information to the error
collection program.  Fig. 1 shows a single piece of error information
and Fig. 2 shows how it collects multiple pieces of error
information.

               ErrorPtr = addr(BadRecord);
                call ErrorCollection( ...  ErrorPtr, ...  );

               Fig. 1.   Simple Error Data Collection

             BadData = '';
                BadData = FirstErrorInfo;
                BadData = BadData||SecondErrorInfo;
                ErrorPtr = addr(BadData);
           ...