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: 20080270609
    Abstract: 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: Application
    Filed: June 30, 2008
    Publication date: October 30, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: 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: 20080271114
    Abstract: 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: Application
    Filed: July 2, 2008
    Publication date: October 30, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: PAUL M. BIRD, GAYATHIRI R. CHANDRAN, CURT L. COTNER, ADRIAN B. LOBO, JAMES W. PICKEL, WALID RJAIBI
  • Patent number: 7433950
    Abstract: 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: Grant
    Filed: December 4, 2003
    Date of Patent: October 7, 2008
    Assignee: International Business Machines Corporation
    Inventors: 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: 7370049
    Abstract: 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: Grant
    Filed: April 14, 2003
    Date of Patent: May 6, 2008
    Assignee: International Business Machines Corporation
    Inventors: Douglas J. Doole, Paul M. Bird
  • Patent number: 7099863
    Abstract: 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: Grant
    Filed: April 29, 2003
    Date of Patent: August 29, 2006
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Michael J. Snowbell
  • Patent number: 7010517
    Abstract: 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: Grant
    Filed: December 10, 2002
    Date of Patent: March 7, 2006
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Timothy J. Vincent
  • Patent number: 7007016
    Abstract: 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: Grant
    Filed: December 11, 2002
    Date of Patent: February 28, 2006
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Timothy J. Vincent
  • Patent number: 7007150
    Abstract: 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: Grant
    Filed: March 27, 2003
    Date of Patent: February 28, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gary Valentin, Paul M. Bird, Matthew A Huras, Xun Xue
  • Patent number: 6959305
    Abstract: 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: Grant
    Filed: December 10, 2002
    Date of Patent: October 25, 2005
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Timothy J. Vincent, Curt L. Cotner
  • Patent number: 6850942
    Abstract: 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: Grant
    Filed: April 26, 2002
    Date of Patent: February 1, 2005
    Assignee: International Business Machines Corporation
    Inventors: Curt L. Cotner, Paul M. Bird, Timothy J. Vincent
  • Publication number: 20040205053
    Abstract: 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: Application
    Filed: April 29, 2003
    Publication date: October 14, 2004
    Applicant: International Business Machines Corporation
    Inventors: Paul M. Bird, Michael J. Snowbell
  • Patent number: 6735605
    Abstract: 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: Grant
    Filed: February 28, 2001
    Date of Patent: May 11, 2004
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Yuk Kuen Chan, Jesse Lee, Hebert W. Pereyra, Yeung-Kuen See, Michael J. Snowbell, Catharina K. Wong
  • Publication number: 20030204504
    Abstract: 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: Application
    Filed: March 17, 2003
    Publication date: October 30, 2003
    Inventors: Michael A.F. Stuy, Paul M. Bird
  • Publication number: 20030204505
    Abstract: 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: Application
    Filed: April 26, 2002
    Publication date: October 30, 2003
    Inventors: Curt L. Cotner, Paul M. Bird, Timothy J. Vincent
  • Publication number: 20030200214
    Abstract: 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: Application
    Filed: April 14, 2003
    Publication date: October 23, 2003
    Inventors: Douglas J. Doole, Paul M. Bird
  • Publication number: 20030196062
    Abstract: 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: Application
    Filed: March 27, 2003
    Publication date: October 16, 2003
    Applicant: INTERNATIONAL BUSINESS MACHINES COPORATION
    Inventors: Gary Valentin, Paul M. Bird, Matthew A. Huras, Xun Xue
  • Patent number: 6615214
    Abstract: 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: Grant
    Filed: July 12, 2000
    Date of Patent: September 2, 2003
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Yuk-kuen Chan, Michael J. Snowbell
  • Publication number: 20030120636
    Abstract: 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: Application
    Filed: December 10, 2002
    Publication date: June 26, 2003
    Applicant: International Business Machines Corporation
    Inventors: Paul M. Bird, Timothy J. Vincent, Curt L. Cotner
  • Publication number: 20030120648
    Abstract: 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: Application
    Filed: December 11, 2002
    Publication date: June 26, 2003
    Inventors: Paul M. Bird, Timothy J. Vincent
  • Publication number: 20030120643
    Abstract: 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: Application
    Filed: December 10, 2002
    Publication date: June 26, 2003
    Applicant: International Business Machines Corporation
    Inventors: Paul M. Bird, Timothy J. Vincent