Patents by Inventor Roger J. Bamford
Roger J. Bamford 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).
-
Patent number: 6363396Abstract: A method and system are provided for reconfiguring a multiple node system after an epoch change in a manner that reduces the overhead and system unavailability typically incurred during reconfiguration. A resource-to-master mapping is established using the combination of a resource-to-bucket hash function and a bucket-to-node hash function. The resource-to-bucket hash function is not changed in response to an epoch change. The bucket-to-node hash function does change in response to epoch changes. Techniques are disclosed for adjusting the dynamic bucket-to-node hash function after an epoch change in a manner that load balances among the new number of nodes in the system. Further, the changes to the bucket-to-node assignments are performed in a way that reduces the number of resources that have to be remastered. In one embodiment, only those resources that lose their masters during an epoch change are assigned new masters during an initial reconfiguration.Type: GrantFiled: December 21, 1998Date of Patent: March 26, 2002Assignee: Oracle CorporationInventors: Boris Klots, Roger J. Bamford, Jeffrey Fischer, Ravi Mirchandaney
-
Patent number: 6353836Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: GrantFiled: November 24, 1998Date of Patent: March 5, 2002Assignee: Oracle CorporationInventors: Roger J. Bamford, Boris Klots
-
Publication number: 20020016795Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: ApplicationFiled: June 27, 2001Publication date: February 7, 2002Inventors: Roger J. Bamford, Boris Klots
-
Publication number: 20010047380Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: ApplicationFiled: June 27, 2001Publication date: November 29, 2001Inventors: Roger J. Bamford, Boris Klots
-
Publication number: 20010042066Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: ApplicationFiled: June 27, 2001Publication date: November 15, 2001Inventors: Roger J. Bamford, Boris Klots
-
Publication number: 20010037326Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: ApplicationFiled: June 27, 2001Publication date: November 1, 2001Inventors: Roger J. Bamford, Boris Klots
-
Publication number: 20010037343Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: ApplicationFiled: June 27, 2001Publication date: November 1, 2001Inventors: Roger J. Bamford, Boris Klots
-
Publication number: 20010037342Abstract: A method and apparatus are provided for transferring a resource from the cache of one database server to the cache of another database server without first writing the resource to disk. When a database server (Requestor) desires to modify a resource, the Requestor asks for the current version of the resource. The database server that has the current version (Holder) directly ships the current version to the Requestor. Upon shipping the version, the Holder loses permission to modify the resource, but continues to retain the resource in memory. When the retained version of the resource, or a later version thereof, is written to disk, the Holder can discard the retained version of the resource. Otherwise, the Holder does not discard the retained version. Using this technique, single-server failures are recovered without having to merge the recovery logs of the various database servers that had access to the resource.Type: ApplicationFiled: June 27, 2001Publication date: November 1, 2001Inventors: Roger J. Bamford, Boris Klots
-
Patent number: 6243702Abstract: A method and system for removing propagation delays between a plurality of database servers that have access to a common database is provided. According to the method, each database server is associated with a logical clock. In response to initiating a commit of a transaction executing on a database server, a commit time for the transaction is determined and broadcast to one or more other database servers. The broadcast is overlapped with a transaction log force. Upon receiving the commit time, the database servers compare the transmitted commit time to the time indicated by their logical clock. If the commit time is greater than the time indicated by their logical clock, the database server sets its logical time to reflect a time that is at least as recent as the time reflected by the transmitted commit time.Type: GrantFiled: June 22, 1998Date of Patent: June 5, 2001Assignee: Oracle CorporationInventors: Roger J. Bamford, William H. Bridge, Jr., J. William Lee, Alok Srivastava
-
Patent number: 6237001Abstract: A method and an apparatus for managing access to data on a distributed database system is provided. A snapshot list is generated for a transaction executing on the distributed database system. The snapshot list specifies snapshot times for a plurality of locations in the distributed database system. The snapshot times are determined based upon the location of a data item and the location where the transaction is executing. The selection of a version of the data item to be provided to the transaction is made based upon the snapshot time for the location associated with the data.Type: GrantFiled: June 10, 1998Date of Patent: May 22, 2001Assignee: Oracle CorporationInventors: Roger J. Bamford, Boris Klots
-
Patent number: 6185577Abstract: A method and apparatus for incremental undo is provided. A process, executing in a database system, establishes a rollback entry in an undo log file as a current rollback entry. The rollback entry, which was selected from a set of rollback entries contained in an undo record, contains data that indicates a change made by a transaction to a data block in the database system. The process first determines whether the rollback entry has been applied by testing a status flag. In one embodiment, the status flag is a bit in a bit vector in the undo block. If the rollback entry has been applied to the database, then the rollback entry is not re-applied; rather, a next rollback entry is established from the set of rollback entries and the process repeats. If the rollback entry has not been applied, then undo information from the rollback entry is retrieved from the undo block and change is generated.Type: GrantFiled: June 23, 1998Date of Patent: February 6, 2001Assignee: Oracle CorporationInventors: Bhagat Nainani, Gary C. Ngai, Wei Huang, Jonathan D. Klein, Roger J. Bamford
-
Patent number: 6173313Abstract: A distributed object is hosted in a distributed system by invoking a global hash function on a generated name for the distributed object. The name for the distributed object is generated with knowledge of the global hash function so that the result of invoking the global hash function upon the name results in the selection of a predetermined node in the distributed system. The predetermined node may be selected based on the affinity of the node to the distributed object for reducing network messaging and communications overhead.Type: GrantFiled: June 24, 1998Date of Patent: January 9, 2001Assignee: Oracle CorporationInventors: Boris Klots, Amit Ganesh, Roger J. Bamford
-
Patent number: 6144983Abstract: A method and apparatus for dynamic lock granularity escalation and de-escalation in a computer system is provided. Upon receiving a request for a resource, a scope of a previously granted lock is modified. According to one embodiment, hash lock de-escalation is employed. In hash lock de-escalation, the scope of the previously granted lock held on a set of resources is reduced by de-escalating the previously granted lock from a coarser-grain lock to one or more finer-grain locks on members of the set. According to another embodiment, hash lock escalation is employed. In hash lock escalation, the scope of previously granted locks held on one or more members of the set of resources are released and promoted into a coarser-grain lock that covers the set of resources as well as the requested resource.Type: GrantFiled: June 9, 1998Date of Patent: November 7, 2000Assignee: Oracle CorporationInventors: Boris Klots, Roger J. Bamford
-
Patent number: 6112281Abstract: A method and apparatus for I/O forwarding in a cache coherent shared disk computer system is provided. According to the method, a requesting node transmits a request for requested data to a managing node. The managing node receives the read request from the requesting node and grants a lock on the requested data. The managing node then forwards data that identifies the requested data to a disk controller. The disk controller receives the data that identifies the requested data from the managing node and reads a data item, based on the data that identifies the requested data, from a shared disk. After reading the data item from the shared disk, the disk controller transmits the data item to the requesting node. In one embodiment, an I/O destination handle is generated that identifies a read request and a buffer cache address to which the data item should be copied.Type: GrantFiled: October 7, 1997Date of Patent: August 29, 2000Assignee: Oracle CorporationInventors: Roger J. Bamford, Boris Klots
-
Patent number: 6012060Abstract: A method for preventing multiple pings. An embodiment of the invention detects requests of data blocks entailing pings likely to cause additional pings. The servicing of requests involving a pings likely to cause additional pings is deferred until a service enabling conditions occurs. Another embodiment of the invention detects situations where by further updating a data block before pinging the data block use of resources on the remote node requesting the data block are reduced. The servicing of the request for the data block is deferred until a service enabling conditions occurs.Type: GrantFiled: May 30, 1997Date of Patent: January 4, 2000Assignee: Oracle CorporationInventors: Juan R. Loaiza, Neil Macnaughton, Roger J. Bamford, William H. Bridge, Boris Klots
-
Patent number: 5963960Abstract: A method for updating and reading data stored in a static memory in a computer system is disclosed. An update queue stores one or more update records in dynamic memory that specify changes made by a transaction to data stored in the static memory. If a transaction requests data for which the transaction has previously generated an update record updated data is generated in dynamic memory, where the updated data reflecting the changes specified by the update records. The updated data is then supplied to the transaction.Type: GrantFiled: October 29, 1996Date of Patent: October 5, 1999Assignee: Oracle CorporationInventors: Garret F. Swart, Roger J. Bamford, Boris Klots
-
Patent number: 5870761Abstract: A method and system are provided for duplicating at a destination site changes made to data at a source site. According to the method a plurality of streams are established between the source site and the destination site. The plurality of streams are used in parallel to propagate changes made at the source site to the destination site. A record of transactions that made changes that need to be propagated from the source site to the destination site is maintained at the source site. Before propagating changes made by a transaction to the destination site on a stream of the plurality of streams, the record of transactions is inspected to identify a set of transactions whose changes are not known to have been made permanent at the destination site. It is then determined whether the transaction could possibly depend on any transaction in the set of transactions.Type: GrantFiled: December 19, 1996Date of Patent: February 9, 1999Assignee: Oracle CorporationInventors: Alan Demers, James Stamos, Sandeep Jain, Brian Oki, Roger J. Bamford
-
Patent number: 5870758Abstract: A method and system for providing isolation levels in a database system is provided. A serializable isolation level is provided by causing all statements in a transaction to see a "snapshot" of the database. A snapshot includes only those changes made to the database by a particular set of transactions. For example, the snapshot for a given transaction may include only the changes made by transactions that committed prior to the execution of the given transaction. The set of all transactions whose changes are included in a particular snapshot of the database is referred to as the snapshot set. Concurrently executing transactions may update the database while a serializable transaction is being executed. Updates that are not included in the snapshot of the serializable transaction are undone prior to processing each statement in the serializable transaction to recreate the data as it existed in the snapshot.Type: GrantFiled: March 11, 1996Date of Patent: February 9, 1999Assignee: Oracle CorporationInventors: Roger J. Bamford, Kenneth R. Jacobs
-
Patent number: 5832516Abstract: A method and apparatus for recovering an object that includes logged data and a set of non-logged data is provided. According to the method, a copy of the object resides in volatile memory. A change is made to the copy of the object. If the change does not change any data within the object other than the non-logged data, then the change is made to the copy of the object without generating redo information. If the change changes any data within the object other than the non-logged data, then redo information is generated in response to the change. The redo information is stored on non-volatile storage. After a failure, the redo information is used to restore all data within the object other than the non-logged data. The non-logged data may be restored by retrieving the non-logged data from a different object for which redo information was generated for the non-logged data. A description of how this technique may be used to efficiently perform selective non-deferred block cleanout is also provided.Type: GrantFiled: January 21, 1997Date of Patent: November 3, 1998Assignee: Oracle CorporationInventors: Roger J. Bamford, Leng Leng Tan
-
Patent number: 5832521Abstract: A method and apparatus for supplying a particular version of a data item to a transaction executing in a first database server is provided. The data item is in a database accessible by the first database server and one or more other database servers. The method involves determining whether a current version of the data item resides in a cache that is remote relative to the first database server. If the current version of the data item does not reside in a cache that is remote relative to the first database server, then a first derivation mechanism that is local to the first database server to derives the particular version of the data item from the current version of the data item. If the current version of the data item resides in a cache that is remote relative to the first database server, then a second derivation mechanism that is local to the cache derives the particular version of the data item from the current version of the data item.Type: GrantFiled: February 28, 1997Date of Patent: November 3, 1998Assignee: Oracle CorporationInventors: Boris Klots, Roger J. Bamford