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

Method and apparatus for invoking a stored procedure or a user defined interpreted language function in a database management system

Assignee: International Business Machines Corp
•
Filing: 1997-11-26
•
Granted: 1999-12-21
•
Expires: 2017-11-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The invention herein provides method, means and programming for invoking a stored procedure or user defined function in an interpreted language such as Java in a database management system capable of operating on a data processing system. The invention includes a database server associated with invocation means adapted to receive a request for invokation of a stored procedure or user defined function in a specified interpreted language, such as Java. The invocation means is adapted to: load an interpreter for the specified language if the server is not already loaded, and setup an interprocess communication between the interpreter and the data the database server. The invocation means is adapted to return an error message to an application calling for invocation of the stored procedure or user defined function, without otherwise impeding operation of the database server.

Inventors

  • 👤 Patrick E. Macdonald
  • 👤 Frank C. Eigler

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 11:07
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/24; G06F16/242; G06F16/2433; G06F16/2443; Y; Y10; Y10S; Y10S707/00; Y10S707/912; Y10S707/922; Y10S707/99941; Y10S707/99944; Y10S707/99945; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 19
Claim 1
Independent Claim 230 words
Means for invoking a stored procedure or user defined function in a database management system capable of operating on a data processing system comprising: a database server being associated with invocation means adapted to receive a request for invocation of a stored procedure or user defined function in a specified interpreted language; said invocation means being adapted to: load an interpreter for said specified language if said server is not already loaded, and setup an interprocess communication between said interpreter and said database server; said invocation means being adapted to return an error message to an application calling for invocation of said stored procedure or user defined function, without otherwise impeding operation of said database server; wherein said invocation means is adapted to load a stored procedure library as if it were a library in a default programming language and run said stored procedure if it were found in said library, and otherwise read the stored procedure system catalogue of the database management system to determine the language of said stored procedure, and load the appropriate interpreter for the specified interpreted language of the stored procedure if said interpreter was not already loaded; and if said interpreter fails to load properly, returning a predefined error code to the application calling for said stored procedure; and when said interpreter is loaded, setup interprocess communication between said interpreter and said database server.
Claim 2
Dependent Claim 230 words
Means for invoking a stored procedure or user defined function in a database management system capable of operating on a data processing system comprising: a database server being associated with invocation means adapted to receive a request for invocation of a stored procedure or user defined function in a specified interpreted language; said invocation means being adapted to: load an interpreter for said specified language if said server is not already loaded, and setup an interprocess communication between said interpreter and said database server; said invocation means being adapted to return an error message to an application calling for invocation of said stored procedure or user defined function, without otherwise impeding operation of said database server; wherein said invocation means is adapted to load a stored procedure library as if it were a library in a default programming language and run said stored procedure if it were found in said library, and otherwise read the stored procedure system catalogue of the database management system to determine the language of said stored procedure, and load the appropriate interpreter for the specified interpreted language of the stored procedure if said interpreter was not already loaded; and if said interpreter fails to load properly, returning a predefined error code to the application calling for said stored procedure; and when said interpreter is loaded, setup interprocess communication between said interpreter and said database server.
Claim 3
Dependent Claim 32 words
The means of claim 1 wherein said interpreter is loaded by means of a stub dynamic link library which returns a predefined error code to the application calling for said stored procedure.
Claim 4
Dependent Claim 101 words
The means of claim 2 wherein said interprocess communication between said interpreter and said database server is accomplished by: thread scheduling means adapted for: scheduling an appropriate worker thread for said interpreted language; if no threads exist creating an immortal thread; if one or more threads exist locating an idle thread from a pool of threads; if unable to locate an idle thread in a predetermined length of time then creating a mortal thread; and, processing means adapted to use said thread to determine the appropriate method function to call based on predefined attributes such as class, method name, or signature.
Claim 5
Dependent Claim 25 words
The means of claim 3 wherein said method function to call is identified by traversing the interpreter to find the best match for said method.
Claim 6
Dependent Claim 56 words
The means of claim 4 wherein said method function to call is identified by traversing the object tree of said interpreter to locate the best matching method function based on said predefined attributes, and; if not found returns an error code to said application; and if found invokes the appropriate stored procedure of user defined procedure.
Claim 7
Dependent Claim 41 words
The means of claim 5 wherein for the case wherein said method function comprises a user defined function with a scratchpad option declared providing means for linking said user defined function to a suitable Hash table to prevent premature garbage collection.
Claim 8
Dependent Claim 18 words
The means of claim 1 wherein said interpreted language is Java and said interpreter is a Java interpreter.
Claim 9
Dependent Claim 268 words
A computer program product comprising: a computer usable medium having computer readable program code means embodied therein for invoking a stored procedure or user defined function in a database management system capable of operating on a data processing system said computer readable program code means in said computer program product comprising: computer readable program code means for causing a computer to effect a database server associated with invocation means adapted to receive a request for invocation of a stored procedure or user defined function in a specified interpreted language; said invocation means being adapted to: load an interpreter for said specified language if said server is not already loaded, and setup an interprocess communication between said interpreter and said database server; said invocation means being adapted to return an error message to an application calling for invocation of said stored procedure or user defined function, without otherwise impeding operation of said database server; and wherein said invocation means is adapted to load a stored procedure library as if it were a library in a default programming language and run said stored procedure if it were found in said library, and otherwise read the stored procedure system catalogue of the database management system to determine the language of said stored procedure, and load the appropriate interpreter for the specified interpreted language of the stored procedure if said interpreter was not already loaded; and if said interpreter fails to load properly, returning a predefined error code to the application calling for said stored procedure; and when said interpreter is loaded, setup interprocess communication between said interpreter and said database server.
Claim 10
Dependent Claim 268 words
A computer program product comprising: a computer usable medium having computer readable program code means embodied therein for invoking a stored procedure or user defined function in a database management system capable of operating on a data processing system said computer readable program code means in said computer program product comprising: computer readable program code means for causing a computer to effect a database server associated with invocation means adapted to receive a request for invocation of a stored procedure or user defined function in a specified interpreted language; said invocation means being adapted to: load an interpreter for said specified language if said server is not already loaded, and setup an interprocess communication between said interpreter and said database server; said invocation means being adapted to return an error message to an application calling for invocation of said stored procedure or user defined function, without otherwise impeding operation of said database server; and wherein said invocation means is adapted to load a stored procedure library as if it were a library in a default programming language and run said stored procedure if it were found in said library, and otherwise read the stored procedure system catalogue of the database management system to determine the language of said stored procedure, and load the appropriate interpreter for the specified interpreted language of the stored procedure if said interpreter was not already loaded; and if said interpreter fails to load properly, returning a predefined error code to the application calling for said stored procedure; and when said interpreter is loaded, setup interprocess communication between said interpreter and said database server.
Claim 11
Dependent Claim 34 words
The computer program product of claim 8 wherein said interpreter is loaded by means of a stub dynamic link library which returns a predefined error code to the application calling for said stored procedure.
Claim 12
Dependent Claim 103 words
The computer program product of claim 9 wherein said interprocess communication between said interpreter and said database server is accomplished by: thread scheduling means adapted for: scheduling an appropriate worker thread for said interpreted language; if no threads exist creating an immortal thread; if one or more threads exist locating an idle thread from a pool of threads; if unable to locate an idle thread in a predetermined length of time then creating a mortal thread; and, processing means adapted to use said thread to determine the appropriate method function to call based on predefined attributes such as class, method name, or signature.
Claim 13
Dependent Claim 27 words
The computer program product of claim 10 wherein said method function to call is identified by traversing the interpreter to find the best match for said method.
Claim 14
Dependent Claim 58 words
The computer program product of claim 11 wherein said method function to call is identified by traversing the object tree of said interpreter to locate the best matching method function based on said predefined attributes, and; if not found returns an error code to said application; and if found invokes the appropriate stored procedure of user defined procedure.
Claim 15
Dependent Claim 43 words
The computer program product of claim 12 wherein for the case wherein said method function comprises a user defined function with a scratchpad option declared providing means for linking said user defined function to a suitable Hash table to prevent premature garbage collection.
Claim 16
Dependent Claim 20 words
The computer program product of claim 8 wherein said interpreted language is Java and said interpreter is a Java interpreter.
Claim 17
Independent Claim 231 words
A method for invoking a stored procedure or user defined function in a database management system capable of operating on a data processing system comprising: associating a database server with invocation means adapted to receive a request for invocation of a stored procedure or user defined function in a specified interpreted language; said invocation means being adapted to: load an interpreter for said specified language if said server is not already loaded, and setup an interprocess communication between said interpreter and said database server; said invocation means being adapted to return an error message to an application calling for invocation of said stored procedure or user defined function, without otherwise impeding operation of said database server; and wherein said invocation means is adapted to load a stored procedure library as if it were a library in a default programming language and run said stored procedure if it were found in said library, and otherwise read the stored procedure system catalogue of the database management system to determine the language of said stored procedure, and load the appropriate interpreter for the specified interpreted language of the stored procedure if said interpreter was not already loaded; and if said interpreter fails to load properly, returning a predefined error code to the application calling for said stored procedure; and when said interpreter is loaded, setup interprocess communication between said interpreter and said database server.
Claim 18
Independent Claim 231 words
A method for invoking a stored procedure or user defined function in a database management system capable of operating on a data processing system comprising: associating a database server with invocation means adapted to receive a request for invocation of a stored procedure or user defined function in a specified interpreted language; said invocation means being adapted to: load an interpreter for said specified language if said server is not already loaded, and setup an interprocess communication between said interpreter and said database server; said invocation means being adapted to return an error message to an application calling for invocation of said stored procedure or user defined function, without otherwise impeding operation of said database server; and wherein said invocation means is adapted to load a stored procedure library as if it were a library in a default programming language and run said stored procedure if it were found in said library, and otherwise read the stored procedure system catalogue of the database management system to determine the language of said stored procedure, and load the appropriate interpreter for the specified interpreted language of the stored procedure if said interpreter was not already loaded; and if said interpreter fails to load properly, returning a predefined error code to the application calling for said stored procedure; and when said interpreter is loaded, setup interprocess communication between said interpreter and said database server.
Claim 19
Dependent Claim 32 words
The method of claim 15 wherein said interpreter is loaded by means of a stub dynamic link library which returns a predefined error code to the application calling for said stored procedure.

References Cited (Backward Citations)

US5210876A Cited
US4949255A Cited
US5787300A Cited
US5675804A Cited
US5923878A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-12-20 2003-06-21 2003-12-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-12-20 2007-06-21 2007-12-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-12-20 2011-06-21 2011-12-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag