Patent US6324683B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6324683B1 Expired / Lapsed US ⏱️ 0.0 years remaining

System, method and program for debugging external programs in client/server-based relational database management systems

Assignee: International Business Machines Corp
•
Filing: 1996-02-23
•
Granted: 2001-11-27
•
Expires: 2016-02-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a method, system, and program for debugging external programs, such as user-defined functions, stored procedures, and triggers executed in relational database management systems (RDBMS), in a client-server, i.e., distributed, environment. In the present invention, a debugger is initiated from within a process running the external program by executing a special segment of code prior to the execution of the external program. In one embodiment of the invention, this debugging function is triggered by including a variation of this special segment of program code within the external program, itself. In another embodiment of the invention, this debugging triggering function is provided within an enhanced RDBMS with extensions to SQL to activate the debugging ability in the RDBMS. The invention can be implemented by using present day serial debuggers or parallel and/or distributed debuggers. One such parallel and distributed debugger utilized in a preferred embodiment is the Parallel and Distributed Dynamic Analyzer (PDDA) debugger. In addition, although the following invention is described with reference to a debugger, the invention can be applicable for any application development tool.

Inventors

  • 👤 You-Chin Gene Fuh
  • 👤 Michael Stephen Meier
  • 👤 Hsin Pan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 04:54
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/362

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 72 words
A method for debugging an external program, said method comprising: initiating a debugger to debug an external program stored on a server, wherein the debugger is initiated from within a process running the external program by executing a special segment of code with the execution of the external program; and creating a debugger process for the initiated debugger, wherein execution breaks at a first executable statement of the external program being debugged.
Claim 2
Independent Claim 72 words
A method for debugging an external program, said method comprising: initiating a debugger to debug an external program stored on a server, wherein the debugger is initiated from within a process running the external program by executing a special segment of code with the execution of the external program; and creating a debugger process for the initiated debugger, wherein execution breaks at a first executable statement of the external program being debugged.
Claim 3
Independent Claim 68 words
A method for debugging an external program, said method comprising: initiating a debugger to debug an external program stored on a server from within a process running the DBMS external program to be debugged by executing a special segment of code with the execution of the external program; and creating a debugger process wherein execution will break at a specified executable statement of the external program being debugged.
Claim 4
Independent Claim 68 words
A method for debugging an external program, said method comprising: initiating a debugger to debug an external program stored on a server from within a process running the DBMS external program to be debugged by executing a special segment of code with the execution of the external program; and creating a debugger process wherein execution will break at a specified executable statement of the external program being debugged.
Claim 5
Independent Claim 61 words
A method for debugging an external program, said method comprising: initiating a debugger process to debug an external program stored on a server from within a process running the DBMS external program to be debugged by executing a special segment of code with the execution of the external program; and creating the debugger process to execute the external program being debugged.
Claim 6
Independent Claim 61 words
A method for debugging an external program, said method comprising: initiating a debugger process to debug an external program stored on a server from within a process running the DBMS external program to be debugged by executing a special segment of code with the execution of the external program; and creating the debugger process to execute the external program being debugged.
Claim 7
Independent Claim 71 words
A system for debugging an external program, said system comprising: means for initiating a debugger to debug an external program stored on a server from within a process running the external program to be debugged by executing a special segment of code with the execution of the external program; and means for creating a debugger process wherein execution will break at a specified executable statement of the external program being debugged.
Claim 8
Independent Claim 71 words
A system for debugging an external program, said system comprising: means for initiating a debugger to debug an external program stored on a server from within a process running the external program to be debugged by executing a special segment of code with the execution of the external program; and means for creating a debugger process wherein execution will break at a specified executable statement of the external program being debugged.
Claim 9
Independent Claim 64 words
A system for debugging an external program, said system comprising: means for initiating a debugger process to debug an external program stored on a server from within a process running the external program to be debugged by executing a special segment of code with the execution of the external program; and means for creating the debugger process to execute the external program being debugged.
Claim 10
Independent Claim 64 words
A system for debugging an external program, said system comprising: means for initiating a debugger process to debug an external program stored on a server from within a process running the external program to be debugged by executing a special segment of code with the execution of the external program; and means for creating the debugger process to execute the external program being debugged.
Claim 11
Dependent Claim 22 words
The system of claim 4 wherein the external program is a user-defined function and the external program process is a UDF process.
Claim 12
Dependent Claim 23 words
The system of claim 4 wherein the external program is a stored procedure and the external program process is a stored procedure process.
Claim 13
Dependent Claim 25 words
The system of claim 4 wherein the means for initiating the debugger from within the external program process is performed by a database management system.
Claim 14
Dependent Claim 69 words
The system of claim 8 wherein the database management system comprises means for preparing a shell command for invoking a debugger; means for spawning a new process for running the shell command as a background job while returning to a calling process; and means for keeping the new process idle for a period of time to allow attachment of the debugger before the calling process executes the external program.
Claim 15
Dependent Claim 92 words
The system of claim 9 wherein the means for preparing a shell command further comprises means for identifying the external program process being debugged; means for specifying where a source file of the external program is located; means for informing the debugger to break at a specified function; means for specifying a name of the external program to be debugged; and means for redirecting a display output and mapping input devices to an address of a machine of a user interested in debug information if the machine is remote from the debugger.
Claim 16
Dependent Claim 70 words
The system of claim 5 wherein the special segment of code comprises means for preparing a shell command for invoking a debugger; means for spawning a new process for running the shell command as a background job while returning to a calling process; and means for keeping the new process idle for a period of time to allow attachment of the debugger before the calling process executes the external program.
Claim 17
Dependent Claim 81 words
The system of claim 11 wherein the means for preparing a shell command further comprises means for identifying the external program process being debugged; means for specifying where a source file of the external program is located; means for specifying a name of the external program to be debugged; and means for redirecting a display output and mapping input devices to an address of a machine of a user interested in debug information if the machine is remote from the debugger.
Claim 18
Dependent Claim 19 words
The system of claim 5 wherein the special segment of code comprises a macro DEBUG_UDF for specifying debugging information.
Claim 19
Dependent Claim 51 words
The system of claim 5 wherein the special segment of code further comprises means for registering a current debugging session with a database management system; and means for bringing up the debugger if a current process is not being traced and no attempt was made previously to bring up the debugger.
Claim 20
Dependent Claim 74 words
The system of claim 5 wherein the special segment of code further comprises means for registering a current debugging session with a database management system; means for returning a token uniquely identifying the current debugging session if a name of the current debugging session is not an existing registered debugging session; and means for returning a token identifying a previously registered debugging session if the name of the current debugging session is previously registered.
Claim 21
Dependent Claim 42 words
The system of claim 14 wherein the means for registering the current debugging session is contained in a programming line DEBUG_UDF which specifies the debugger, a source directory of the external function, a client machine, and a name of the external function.
Claim 22
Dependent Claim 29 words
The system of claim 5 wherein the external program specifies the debugger, a source directory of the external program, a client machine, and a name of the external program.
Claim 23
Dependent Claim 27 words
The system of claim 16 further comprising means for invoking the external function; an means for bringing up the debugger and breaking at the DEBUG_UDF programming line.
Claim 24
Dependent Claim 17 words
The system of claim 18 further comprising means for displaying a debugger window on the client machine.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-11-26 2005-05-28 2005-11-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-11-26 2009-05-28 2009-11-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-11-26 2013-05-28 2013-11-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag