Patents by Inventor Paul M. Bird
Paul M. Bird has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20080270609Abstract: In a system for avoiding section collision for application server requests over a single database connection, the database server assigns query identifiers to each instance of the same cursor opened for the same processing level within an application, allowing multiple instances of the same cursor to be processed in parallel without section collision. The application server assigns a command source identifier to each statement sent over a single database connection to uniquely identify the application source of the statement. This applies for multiples of the same statement sent by different application sources within the same application, for a single statement containing multiple application sources, and for multiple statements from different applications multiplexed over a single database connection. These statements can be processed separately from and in parallel with the each other without section collision.Type: ApplicationFiled: June 30, 2008Publication date: October 30, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Paul M. Bird, William R. Bireley, Curt L. Cotner, Tammie Dang, Margaret A. Dong, Georgia C. Fuller, Michelle D. Lam, James W. Pickel, Frankie K. Sun
-
Publication number: 20080271114Abstract: A system for establishing a connection between a data server and a middleware server is disclosed. The system includes defining a plurality of trust attributes corresponding to a trusted context between the middleware server and the data server and validating the plurality of trust attributes against a plurality of attributes corresponding to the middleware server. The plurality of attributes provided in a connection request. The system also includes establishing the trusted context based on the validating the plurality of trust attributes.Type: ApplicationFiled: July 2, 2008Publication date: October 30, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: PAUL M. BIRD, GAYATHIRI R. CHANDRAN, CURT L. COTNER, ADRIAN B. LOBO, JAMES W. PICKEL, WALID RJAIBI
-
Patent number: 7433950Abstract: In a method for avoiding section collision for application server requests over a single database connection, the database server assigns query identifiers to each instance of the same cursor opened for the same processing level within an application, allowing multiple instances of the same cursor to be processed in parallel without section collision. The application server assigns a command source identifier to each statement sent over a single database connection to uniquely identify the application source of the statement. This applies for multiples of the same statement sent by different application sources within the same application, for a single statement containing multiple application sources, and for multiple statements from different applications multiplexed over a single database connection. These statements can be processed separately from and in parallel with the each other without section collision.Type: GrantFiled: December 4, 2003Date of Patent: October 7, 2008Assignee: International Business Machines CorporationInventors: Paul M. Bird, William R. Bireley, Curt L. Cotner, Tammie Dang, Margaret A. Dong, Georgia C. Fuller, Michelle D. Lam, James W. Pickel, Frankie K. Sun
-
Patent number: 7370049Abstract: Conflict checking for writing operations in an SQL database system is carried out for nested statements invoked by a parent statement. Each statement has an associated table access data structure defined at compile-time indicating the tables in the database that the statement accesses and the mode of access. At execution-time the table access data structure for each nested statement is accessed and the information is compared with a list of tables maintained for the parent statement to determine if there is a read/write or write/write conflict possible if the nested statement is executed. Where there is no conflict detected, the information from the table access data structure is copied to the list of tables.Type: GrantFiled: April 14, 2003Date of Patent: May 6, 2008Assignee: International Business Machines CorporationInventors: Douglas J. Doole, Paul M. Bird
-
Patent number: 7099863Abstract: In a database system that supports object name overloading, database query statements are compiled and cached as data structures so that object level privileges are correctly resolved. Database query statements stored in the cached data structures are utilized when appropriate and a new compilation is performed when an incorrect resolution would result. The data structures are stored in a predefined order to ensure that a deterministic search of the cache is efficiently performed.Type: GrantFiled: April 29, 2003Date of Patent: August 29, 2006Assignee: International Business Machines CorporationInventors: Paul M. Bird, Michael J. Snowbell
-
Patent number: 7010517Abstract: Working memory in an SQL database system is organized in workspaces. Agent workspaces are defined into which working copies of SQL executable logic information are loaded. Application workspaces are also defined for the loading of working copies of SQL executable logic information. Reference copies of the SQL information are available in a global SQL cache. An application SQL context data structure is used as an entry point to access working copies of SQL information in the agent or application workspaces. An application workspace is associated with an application and is maintained until the last application in the set is not active. An agent workspace is associated with an agent in the database system and is maintained until the agent is no longer active.Type: GrantFiled: December 10, 2002Date of Patent: March 7, 2006Assignee: International Business Machines CorporationInventors: Paul M. Bird, Timothy J. Vincent
-
Patent number: 7007016Abstract: An SQL database management system for executing SQL requests from applications. The SQL database management system includes a hierarchical arrangement of data structures comprising packages, section entries, sibling control blocks and sections, for representing SQL context information and SQL statement information. Each package represents SQL context information on an application component-level basis. Each section entry is associated with a package and corresponds to a set of SQL actions. Each section entry is potentially associated with one or more sibling control blocks. Each sibling control block is associated with one section and represents context information relating to a unique SQL request. Each section includes logic for a specific SQL statement.Type: GrantFiled: December 11, 2002Date of Patent: February 28, 2006Assignee: International Business Machines CorporationInventors: Paul M. Bird, Timothy J. Vincent
-
Patent number: 7007150Abstract: Memory balancing and optimization services (MBOS) control a size of a plurality of memory heaps, and a memory optimizer for allocating and de-allocating memory for a plurality of respective memory consumers. The MBOS may be instantiated within an application program such as a database management system providing services to memory consumers within the application. Alternatively, the MBOS may be instantiated within an operating system for providing services to memory consumers that are applications such as database management systems, e-commerce engines, operating systems, customer relationship management (CRM), enterprise resource planning (ERP), or supply chain management (SCM). Alternatively, an MBOS is instantiated within the operating system to provide services to applications and an MBOS is instantiated within each application to provide services to memory consumers within the application.Type: GrantFiled: March 27, 2003Date of Patent: February 28, 2006Assignee: International Business Machines CorporationInventors: Gary Valentin, Paul M. Bird, Matthew A Huras, Xun Xue
-
Patent number: 6959305Abstract: A cursor query identifier is defined to uniquely identify cursors in a relational database system that supports nested routine invocation. The identifier includes a cursor nesting level value that corresponds to the nested level at which the cursor is opened. The identifier also includes a invocation identifier that corresponds to the routine within which a cursor is opened. The third part of the identifier is a unique cursor counter. The definition of the cursor query identifier permits cursors to be opened within nested levels of the same relational database context and to be uniquely identified for reference by database system and by applications accessing the system.Type: GrantFiled: December 10, 2002Date of Patent: October 25, 2005Assignee: International Business Machines CorporationInventors: Paul M. Bird, Timothy J. Vincent, Curt L. Cotner
-
Patent number: 6850942Abstract: A method for providing database connections in a network includes: (a) mapping a first plurality of logical connections for a transaction at the application server to a physical connection between the application server and the database server; (b) sending a request of the transaction to the database server utilizing one of the first plurality of logical connections, where the request is sent utilizing the physical connection; and (c) processing the request by a logical agent on the database server, where the logical agent is associated with the transaction, where the request is maintained in one of a second plurality of logical connections within the logical agent. In this manner, connections are logically separated from one another with minimal storage implications. Conflicts and unpredictable behavior can also be avoided.Type: GrantFiled: April 26, 2002Date of Patent: February 1, 2005Assignee: International Business Machines CorporationInventors: Curt L. Cotner, Paul M. Bird, Timothy J. Vincent
-
Publication number: 20040205053Abstract: In a database system that supports object name overloading, database query statements are compiled and cached as data structures so that object level privileges are correctly resolved. Database query statements stored in the cached data structures are utilized when appropriate and a new compilation is performed when an incorrect resolution would result. The data structures are stored in a predefined order to ensure that a deterministic search of the cache is efficiently performed.Type: ApplicationFiled: April 29, 2003Publication date: October 14, 2004Applicant: International Business Machines CorporationInventors: Paul M. Bird, Michael J. Snowbell
-
Patent number: 6735605Abstract: A multi-node relational database management system is provided that can be embodied in software for managing a database having declared temporary tables associated with respective software application programs. The system comprises a plurality of nodes. The nodes include a catalog node for maintaining a list of identifiers for declared temporary tables associated with any application; a coordinator node for an application; at least one subordinate node for the application, the subordinate node having at least one partition of the declared temporary tables of the application; and a declared temporary table manager for causing the coordinator node to maintain for the application a list of declared temporary tables.Type: GrantFiled: February 28, 2001Date of Patent: May 11, 2004Assignee: International Business Machines CorporationInventors: Paul M. Bird, Yuk Kuen Chan, Jesse Lee, Hebert W. Pereyra, Yeung-Kuen See, Michael J. Snowbell, Catharina K. Wong
-
Publication number: 20030204504Abstract: A method and system for improving access concurrency to information stored in at least one table in a relational database system is disclosed. The method comprises providing a data cache, which stores a portion of the at least one table. The data cache includes a plurality of cache entries, wherein each cache entry comprises a first data item, a second data item, and a cache entry state. The method further comprises retrieving from the at least one table and storing in a cache entry's first data item a representation of committed information for a user, and retrieving from the at least one table and storing in the cache entry's second data item a representation of changes applied to the committed information, but not yet committed in the database system.Type: ApplicationFiled: March 17, 2003Publication date: October 30, 2003Inventors: Michael A.F. Stuy, Paul M. Bird
-
Publication number: 20030204505Abstract: A method for providing database connections in a network includes: (a) mapping a first plurality of logical connections for a transaction at the application server to a physical connection between the application server and the database server; (b) sending a request of the transaction to the database server utilizing one of the first plurality of logical connections, where the request is sent utilizing the physical connection; and (c) processing the request by a logical agent on the database server, where the logical agent is associated with the transaction, where the request is maintained in one of a second plurality of logical connections within the logical agent. In this manner, connections are logically separated from one another with minimal storage implications. Conflicts and unpredictable behavior can also be avoided.Type: ApplicationFiled: April 26, 2002Publication date: October 30, 2003Inventors: Curt L. Cotner, Paul M. Bird, Timothy J. Vincent
-
Publication number: 20030200214Abstract: Conflict checking for writing operations in an SQL database system is carried out for nested statements invoked by a parent statement. Each statement has an associated table access data structure defined at compile-time indicating the tables in the database that the statement accesses and the mode of access. At execution-time the table access data structure for each nested statement is accessed and the information is compared with a list of tables maintained for the parent statement to determine if there is a read/write or write/write conflict possible if the nested statement is executed. Where there is no conflict detected, the information from the table access data structure is copied to the list of tables.Type: ApplicationFiled: April 14, 2003Publication date: October 23, 2003Inventors: Douglas J. Doole, Paul M. Bird
-
Publication number: 20030196062Abstract: Memory balancing and optimization services (MBOS) control a size of a plurality of memory heaps, and a memory optimizer for allocating and de-allocating memory for a plurality of respective memory consumers. The MBOS may be instantiated within an application program such as a database management system providing services to memory consumers within the application. Alternatively, the MBOS may be instantiated within an operating system for providing services to memory consumers that are applications such as database management systems, e-commerce engines, operating systems, customer relationship management (CRM), enterprise resource planning (ERP), or supply chain management (SCM). Alternatively, an MBOS is instantiated within the operating system to provide services to applications and an MBOS is instantiated within each application to provide services to memory consumers within the application.Type: ApplicationFiled: March 27, 2003Publication date: October 16, 2003Applicant: INTERNATIONAL BUSINESS MACHINES COPORATIONInventors: Gary Valentin, Paul M. Bird, Matthew A. Huras, Xun Xue
-
Patent number: 6615214Abstract: A relational database management system which determines the shareable status of an executable object (section) in an cache. The shareable status is defined for a section in a cache by the system maintaining an identification list which has reference to database entities which are affected by a statement in the current unit of work. When a statement is compiled, the compiler generates a list of dependencies, which list is compared with the identification list. If the statement data dependencies are on the identification list, the statement will be treated as non-shareable until the completion of the current unit of work.Type: GrantFiled: July 12, 2000Date of Patent: September 2, 2003Assignee: International Business Machines CorporationInventors: Paul M. Bird, Yuk-kuen Chan, Michael J. Snowbell
-
Publication number: 20030120636Abstract: A cursor query identifier is defined to uniquely identify cursors in a relational database system that supports nested routine invocation. The identifier includes a cursor nesting level value that corresponds to the nested level at which the cursor is opened. The identifier also includes a invocation identifier that corresponds to the routine within which a cursor is opened. The third part of the identifier is a unique cursor counter. The definition of the cursor query identifier permits cursors to be opened within nested levels of the same relational database context and to be uniquely identified for reference by database system and by applications accessing the system.Type: ApplicationFiled: December 10, 2002Publication date: June 26, 2003Applicant: International Business Machines CorporationInventors: Paul M. Bird, Timothy J. Vincent, Curt L. Cotner
-
Publication number: 20030120648Abstract: An SQL database management system for executing SQL requests from applications. The SQL database management system includes a hierarchical arrangement of data structures comprising packages, section entries, sibling control blocks and sections, for representing SQL context information and SQL statement information. Each package represents SQL context information on an application component-level basis. Each section entry is associated with a package and corresponds to a set of SQL actions. Each section entry is potentially associated with one or more sibling control blocks. Each sibling control block is associated with one section and represents context information relating to a unique SQL request. Each section includes logic for a specific SQL statement.Type: ApplicationFiled: December 11, 2002Publication date: June 26, 2003Inventors: Paul M. Bird, Timothy J. Vincent
-
Publication number: 20030120643Abstract: Working memory in an SQL database system is organized in workspaces. Agent workspaces are defined into which working copies of SQL executable logic information are loaded. Application workspaces are also defined for the loading of working copies of SQL executable logic information. Reference copies of the SQL information are available in a global SQL cache. An application SQL context data structure is used as an entry point to access working copies of SQL information in the agent or application workspaces. An application workspace is associated with an application and is maintained until the last application in the set is not active. An agent workspace is associated with an agent in the database system and is maintained until the agent is no longer active.Type: ApplicationFiled: December 10, 2002Publication date: June 26, 2003Applicant: International Business Machines CorporationInventors: Paul M. Bird, Timothy J. Vincent