Patents by Inventor Gary E. Strickler
Gary E. Strickler 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: 8301593Abstract: A replication system that includes an asynchronous replication mode and a synchronous replication mode replicates data associated with a plurality of transactions. The replication system includes one or more target nodes connected via communication media in a topology. Each target node includes a database and a plurality of appliers allocated thereto. Each transaction has one or more transaction steps or operations. A first set of transaction steps or operations are allocated to the plurality of appliers on an object-by-object basis when the replication system operates in asynchronous replication mode. A second set of transaction steps or operations are allocated to the plurality of appliers on a transaction-by-transaction basis when the replication system operates in synchronous replication mode.Type: GrantFiled: June 12, 2009Date of Patent: October 30, 2012Assignee: Gravic, Inc.Inventors: John R. Hoffmann, Paul J. Holenstein, Gary E. Strickler, Bruce D. Holenstein
-
Patent number: 8086661Abstract: A method is provided for resolving collisions in a database replication system. The system includes a source database and a target database, wherein changes made at the source database are replicated to the target database. Each database has one or more tables, and at least one of the tables has multiple constraints. A collision is detected during data replication as a result of one of the tables having multiple constraints. One constraint that contributes to the collision is identified. The constraint that contributes to the collision is relaxed, or the cause of the constraint that contributes to the collision is removed. This process is repeated for all additional constraints that contribute to the collision. In this manner, the collision is resolved.Type: GrantFiled: March 12, 2009Date of Patent: December 27, 2011Assignee: Gravic, Inc.Inventors: Bruce D. Holenstein, Gary E. Strickler, Eugene P. Jarema, Paul J. Holenstein
-
Patent number: 7962458Abstract: An automated method is provided of replicating a locking protocol in a database environment for performing I/O operations wherein the database environment includes a plurality of databases. A locking protocol is performed that includes one or more explicit locking operations on objects in a first database of the database environment. The one or more explicit locking operations are replicated in one or more other databases in the database environment. At least some of the explicit locking operations are performed asynchronously with respect to the explicit locking operations performed in the first database. I/O operations are performed at the first database of the database environment that are associated with the one or more explicit locking operations implemented in the first database.Type: GrantFiled: February 17, 2010Date of Patent: June 14, 2011Assignee: Gravic, Inc.Inventors: Bruce D. Holenstein, Paul J. Holenstein, John R. Hoffmann, Wilbur H. Highleyman, Gary E. Strickler
-
Patent number: 7882062Abstract: A target database is synchronized with a source database and the source database is replicated to the target database in a database replication system. The source database is on-line during the synchronization. The source database is located at a first node of the system, and the target database is located at a second node of the system. Changes in the source database are replicated to the target database by sending a replication stream from the first node to the second node. Successive blocks of data are sent from the first node to the target database to synchronize or resynchronize the target database with the source database. Each block of data includes one or more rows of data. The successively sent blocks of data define a loading stream. The successively sent blocks of data are posted into the target database when the replication stream is occurring slower than the loading stream. Synchronization or resynchronization thereby occurs simultaneously with replication.Type: GrantFiled: January 8, 2008Date of Patent: February 1, 2011Assignee: Gravic, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Patent number: 7853561Abstract: A target database is synchronized with a source database and the source database is replicated to the target database in a database replication system. The source database is on-line during the synchronization. The source database is located at a first node of the system, and the target database is located at a second node of the system. Changes in the source database are replicated to the target database by sending a replication stream from the first node to the second node. Successive blocks of data are sent from the first node to the target database to synchronize or resynchronize the target database with the source database. Each block of data includes one or more rows of data. The successively sent blocks of data are inserted into the replication stream at a point when the respective blocks of data are current or consistent in the source database, and the replication stream is posted to the target database. Synchronization or resynchronization thereby occurs simultaneously with replication.Type: GrantFiled: January 8, 2008Date of Patent: December 14, 2010Assignee: Gravic, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Publication number: 20100191884Abstract: An automated method is provided of replicating a locking protocol in a database environment for performing I/O operations wherein the database environment includes a plurality of databases. A locking protocol is performed that includes one or more explicit locking operations on objects in a first database of the database environment. The one or more explicit locking operations are replicated in one or more other databases in the database environment. At least some of the explicit locking operations are performed asynchronously with respect to the explicit locking operations performed in the first database. I/O operations are performed at the first database of the database environment that are associated with the one or more explicit locking operations implemented in the first database.Type: ApplicationFiled: February 17, 2010Publication date: July 29, 2010Applicant: GRAVIC, INC.Inventors: Bruce D. HOLENSTEIN, Paul J. HOLENSTEIN, John R. HOFFMANN, Wilbur H. HIGHLEYMAN, Gary E. STRICKLER
-
Publication number: 20090313311Abstract: A replication system that includes an asynchronous replication mode and a synchronous replication mode replicates data associated with a plurality of transactions. The replication system includes one or more target nodes connected via communication media in a topology. Each target node includes a database and a plurality of appliers allocated thereto. Each transaction has one or more transaction steps or operations. A first set of transaction steps or operations are allocated to the plurality of appliers on an object-by-object basis when the replication system operates in asynchronous replication mode. A second set of transaction steps or operations are allocated to the plurality of appliers on a transaction-by-transaction basis when the replication system operates in synchronous replication mode.Type: ApplicationFiled: June 12, 2009Publication date: December 17, 2009Applicant: GRAVIC, INC.Inventors: John R. Hoffmann, Paul J. Holenstein, Gary E. Strickler, Bruce D. Holenstein
-
Patent number: 7613740Abstract: A data replication engine is controlled in a system that replicates data associated with a plurality of transactions from a source database to a target database. The system includes a change queue that contains transaction data associated with the transactions. The system maintains one or more attributes outside of the change queue which are associated with transactions. One or more attributes outside of the change queue are identified which are associated with a transaction. The one or more of the identified attributes are then used to control the replication engine.Type: GrantFiled: March 3, 2006Date of Patent: November 3, 2009Assignee: Gravic, Inc.Inventors: Bruce D. Holenstein, Gary E. Strickler, Eugene P. Jarema, Paul J. Holenstein
-
Patent number: 7603389Abstract: Transactions are replicated from a source database to a target database in a data replication system. The system includes a first memory location that persistently stores statement text associated with transactions to be replicated. Transactions to be replicated are cached by separating the transactions into statement text and statement data. A determination is made as to whether the statement text has been previously stored in the first memory location. If not, then the statement text is persistently stored to the first memory location. A similar scheme is provided for replicating I/O operations.Type: GrantFiled: March 3, 2006Date of Patent: October 13, 2009Assignee: Gravic, Inc.Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler, William A. Grimm, Wilbur H. Highleyman
-
Publication number: 20090177710Abstract: A method is provided for resolving collisions in a database replication system. The system includes a source database and a target database, wherein changes made at the source database are replicated to the target database. Each database has one or more tables, and at least one of the tables has multiple constraints. A collision is detected during data replication as a result of one of the tables having multiple constraints. One constraint that contributes to the collision is identified. The constraint that contributes to the collision is relaxed, or the cause of the constraint that contributes to the collision is removed. This process is repeated for all additional constraints that contribute to the collision. In this manner, the collision is resolved.Type: ApplicationFiled: March 12, 2009Publication date: July 9, 2009Applicant: GRAVIC, INC.Inventors: Bruce D. HOLENSTEIN, Gary E. STRICKLER, Eugene P. JAREMA, Paul J. HOLENSTEIN
-
Patent number: 7523110Abstract: Collisions are resolved in a database replication system. The system includes a plurality of nodes arranged in either a master-slave or network configuration. Each node includes a database, wherein changes made at the databases of each node are replicated to the databases at one or more of the other nodes. When a collision is detected during data replication between multiple nodes, the collision is resolved by a rule that gives precedence to certain nodes over other nodes.Type: GrantFiled: March 3, 2006Date of Patent: April 21, 2009Assignee: Gravic, Inc.Inventors: Bruce D. Holenstein, Gary E. Strickler, Eugene P. Jarema, Paul J. Holenstein
-
Patent number: 7321904Abstract: A target database is synchronized with a source database in a database replication system. Key ranges of blocks of data to be replicated are used in the replication process. Also, synchronization occurs simultaneously with replication.Type: GrantFiled: May 25, 2004Date of Patent: January 22, 2008Assignee: Gravic, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Patent number: 7103586Abstract: Database replication systems replicate blocks of transaction steps or operations with synchronous replication, and perform dual writes with queuing and blocking of transactions. Tokens are used to prepare a target database for replication from a source database and to confirm the preparation. Database replication systems switch between a synchronous replication mode and an asynchronous replication mode, and then back to a synchronous replication mode, based on detection of selected events.Type: GrantFiled: March 29, 2002Date of Patent: September 5, 2006Assignee: Gravic, Inc.Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler
-
Patent number: 7003531Abstract: In a database synchronization process, a block of data is read from a source database at the first node. A marker is assigned to the block of data, and the marker is then written to an audit trail at the first node. The marker is sent from the audit trail to a second node having a target database. The block of data is sent from the first node to the second node without passing the block of data through the audit trail. At the second node, the block of data is stored in the target database upon receipt at the second node of the block of data and the marker assigned to the block of data. This process is repeated for additional blocks of data in the source database, wherein a marker is assigned to each subsequent block of data. In this manner, some or all of the source database may be replicated to the target database without having to store or pass any data in the source database in or through the audit trail at the first node.Type: GrantFiled: December 10, 2002Date of Patent: February 21, 2006Assignee: Gravic, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Publication number: 20040215670Abstract: A target database is synchronized with a source database in a database replication system. Key ranges of blocks of data to be replicated are used in the replication process. Also, synchronization occurs simultaneously with replication.Type: ApplicationFiled: May 25, 2004Publication date: October 28, 2004Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Patent number: 6745209Abstract: In a database synchronization process, a block of data is read from a source database at the first node. A marker is assigned to the block of data, and the marker is then written to an audit trail at the first node. The marker is sent from the audit trail to a second node having a target database. The block of data is sent from the first node to the second node without passing the block of data through the audit trail. At the second node, the block of data is stored in the target database upon receipt at the second node of the block of data and the marker assigned to the block of data. This process is repeated for additional blocks of data in the source database, wherein a marker is assigned to each subsequent block of data. In this manner, some or all of the source database may be replicated to the target database without having to store or pass any data in the source database in or through the audit trail at the first node.Type: GrantFiled: August 15, 2001Date of Patent: June 1, 2004Assignee: ITI, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Patent number: 6662196Abstract: A bidirectional database replication system includes a plurality of nodes. Each transaction at an originating node is paused prior to a commit operation. Ready to commit tokens are sent to the other nodes in the system to determine if the other nodes are prepared for the commit operation for the paused transaction. If all of the ready to commit tokens properly return to the originating node from the other nodes, thereby indicating that the other nodes are prepared for the commit operation, then the transaction is commited. For lengthy transactions, ready to sync tokens are assigned at one or more predesignated intermediate points in the transaction, and propagate throughout the system in a similar manner. The transaction continues to execute as long as all ready to sync tokens properly return to the originating node. The pause-before-commit and sync point schemes are used to avoid collisions at any of the nodes.Type: GrantFiled: March 16, 2001Date of Patent: December 9, 2003Assignee: ITI, Inc.Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler
-
Publication number: 20030187884Abstract: A bidirectional database replication system includes a plurality of nodes. Each transaction at an originating node is paused prior to a commit operation. Ready to commit tokens are sent to the other nodes in the system to determine if the other nodes are prepared for the commit operation for the paused transaction. If all of the ready to commit tokens properly return to the originating node from the other nodes, thereby indicating that the other nodes are prepared for the commit operation, then the transaction is commited. For lengthy transactions, ready to sync tokens are assigned at one or more predesignated intermediate points in the transaction, and propagate throughout the system in a similar manner. The transaction continues to execute as long as all ready to sync tokens properly return to the originating node. The pause-before-commit and sync point schemes are used to avoid collisions at any of the nodes.Type: ApplicationFiled: March 16, 2001Publication date: October 2, 2003Applicant: ITI, Inc.Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler
-
Publication number: 20030131027Abstract: In a database synchronization process, a block of data is read from a source database at the first node. A marker is assigned to the block of data, and the marker is then written to an audit trail at the first node. The marker is sent from the audit trail to a second node having a target database. The block of data is sent from the first node to the second node without passing the block of data through the audit trail. At the second node, the block of data is stored in the target database upon receipt at the second node of the block of data and the marker assigned to the block of data. This process is repeated for additional blocks of data in the source database, wherein a marker is assigned to each subsequent block of data. In this manner, some or all of the source database may be replicated to the target database without having to store or pass any data in the source database in or through the audit trail at the first node.Type: ApplicationFiled: December 10, 2002Publication date: July 10, 2003Applicant: ITI, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
-
Publication number: 20030037029Abstract: In a database synchronization process, a block of data is read from a source database at the first node. A marker is assigned to the block of data, and the marker is then written to an audit trail at the first node. The marker is sent from the audit trail to a second node having a target database. The block of data is sent from the first node to the second node without passing the block of data through the audit trail. At the second node, the block of data is stored in the target database upon receipt at the second node of the block of data and the marker assigned to the block of data. This process is repeated for additional blocks of data in the source database, wherein a marker is assigned to each subsequent block of data. In this manner, some or all of the source database may be replicated to the target database without having to store or pass any data in the source database in or through the audit trail at the first node.Type: ApplicationFiled: August 15, 2001Publication date: February 20, 2003Applicant: ITI, Inc.Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler