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: 8301593
    Abstract: 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: Grant
    Filed: June 12, 2009
    Date of Patent: October 30, 2012
    Assignee: Gravic, Inc.
    Inventors: John R. Hoffmann, Paul J. Holenstein, Gary E. Strickler, Bruce D. Holenstein
  • Patent number: 8086661
    Abstract: 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: Grant
    Filed: March 12, 2009
    Date of Patent: December 27, 2011
    Assignee: Gravic, Inc.
    Inventors: Bruce D. Holenstein, Gary E. Strickler, Eugene P. Jarema, Paul J. Holenstein
  • Patent number: 7962458
    Abstract: 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: Grant
    Filed: February 17, 2010
    Date of Patent: June 14, 2011
    Assignee: Gravic, Inc.
    Inventors: Bruce D. Holenstein, Paul J. Holenstein, John R. Hoffmann, Wilbur H. Highleyman, Gary E. Strickler
  • Patent number: 7882062
    Abstract: 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: Grant
    Filed: January 8, 2008
    Date of Patent: February 1, 2011
    Assignee: Gravic, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Patent number: 7853561
    Abstract: 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: Grant
    Filed: January 8, 2008
    Date of Patent: December 14, 2010
    Assignee: Gravic, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Publication number: 20100191884
    Abstract: 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: Application
    Filed: February 17, 2010
    Publication date: July 29, 2010
    Applicant: GRAVIC, INC.
    Inventors: Bruce D. HOLENSTEIN, Paul J. HOLENSTEIN, John R. HOFFMANN, Wilbur H. HIGHLEYMAN, Gary E. STRICKLER
  • Publication number: 20090313311
    Abstract: 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: Application
    Filed: June 12, 2009
    Publication date: December 17, 2009
    Applicant: GRAVIC, INC.
    Inventors: John R. Hoffmann, Paul J. Holenstein, Gary E. Strickler, Bruce D. Holenstein
  • Patent number: 7613740
    Abstract: 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: Grant
    Filed: March 3, 2006
    Date of Patent: November 3, 2009
    Assignee: Gravic, Inc.
    Inventors: Bruce D. Holenstein, Gary E. Strickler, Eugene P. Jarema, Paul J. Holenstein
  • Patent number: 7603389
    Abstract: 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: Grant
    Filed: March 3, 2006
    Date of Patent: October 13, 2009
    Assignee: Gravic, Inc.
    Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler, William A. Grimm, Wilbur H. Highleyman
  • Publication number: 20090177710
    Abstract: 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: Application
    Filed: March 12, 2009
    Publication date: July 9, 2009
    Applicant: GRAVIC, INC.
    Inventors: Bruce D. HOLENSTEIN, Gary E. STRICKLER, Eugene P. JAREMA, Paul J. HOLENSTEIN
  • Patent number: 7523110
    Abstract: 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: Grant
    Filed: March 3, 2006
    Date of Patent: April 21, 2009
    Assignee: Gravic, Inc.
    Inventors: Bruce D. Holenstein, Gary E. Strickler, Eugene P. Jarema, Paul J. Holenstein
  • Patent number: 7321904
    Abstract: 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: Grant
    Filed: May 25, 2004
    Date of Patent: January 22, 2008
    Assignee: Gravic, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Patent number: 7103586
    Abstract: 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: Grant
    Filed: March 29, 2002
    Date of Patent: September 5, 2006
    Assignee: Gravic, Inc.
    Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler
  • Patent number: 7003531
    Abstract: 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: Grant
    Filed: December 10, 2002
    Date of Patent: February 21, 2006
    Assignee: Gravic, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Publication number: 20040215670
    Abstract: 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: Application
    Filed: May 25, 2004
    Publication date: October 28, 2004
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Patent number: 6745209
    Abstract: 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: Grant
    Filed: August 15, 2001
    Date of Patent: June 1, 2004
    Assignee: ITI, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Patent number: 6662196
    Abstract: 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: Grant
    Filed: March 16, 2001
    Date of Patent: December 9, 2003
    Assignee: ITI, Inc.
    Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler
  • Publication number: 20030187884
    Abstract: 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: Application
    Filed: March 16, 2001
    Publication date: October 2, 2003
    Applicant: ITI, Inc.
    Inventors: Bruce D. Holenstein, Paul J. Holenstein, Gary E. Strickler
  • Publication number: 20030131027
    Abstract: 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: Application
    Filed: December 10, 2002
    Publication date: July 10, 2003
    Applicant: ITI, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler
  • Publication number: 20030037029
    Abstract: 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: Application
    Filed: August 15, 2001
    Publication date: February 20, 2003
    Applicant: ITI, Inc.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Gary E. Strickler