Patents by Inventor Paul J. Holenstein

Paul J. Holenstein 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: 11934424
    Abstract: A method and apparatus are provided for avoiding target database constraint violations in a database replication system. The database replication system includes a source database and a target database, wherein target database transactions automatically abort due to constraint violations. Each database has one or more tables and at least one of the target database tables has one or more constraints. The database replication system replicates source database transactions. For each target database transaction corresponding to a replicated source database transaction, changes made at the source database are replicated to the target database. When it is detected that a replicated change causes a constraint violation as a result of one or more of the target database tables having one or more constraints, the applying of the database change to the target database of the database change is deferred and the database change is posted to an electronic list.
    Type: Grant
    Filed: January 31, 2023
    Date of Patent: March 19, 2024
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, John R. Hoffmann, Bruce D. Holenstein, Wilbur H. Highleyman
  • Patent number: 11921748
    Abstract: An automated method and apparatus are provided for comparing a source database and a target database that are intended to be kept in synchronization with each other. An application processes database changes that are posted to the source database and replicated to the target database. The source database and the target database are made up of blocks of data. Blocks of data from the source database having database changes are collected. These blocks of data are replicated to the target database. Blocks of data from the target database that correspond to the blocks of data from the source database having database changes are read. Representations of the blocks of data from the source database having database changes are compared to representations of blocks of data from the target database that correspond to the blocks of data from the source database having database changes.
    Type: Grant
    Filed: December 5, 2023
    Date of Patent: March 5, 2024
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Paul J. Holenstein, Bruce D. Holenstein, Dylan R. Holenstein
  • Patent number: 11880386
    Abstract: An automated method and system are provided for comparing a source database and a target database that are intended to be kept in synchronization with each other. An application processes transactions that are posted to the source database and replicated to the target database. Before images of changes made to records or rows of the source database resulting from transactions posted to the source database into a first change log are collected. The before images of changes made to records or rows of the source database are replicated to the target database. Current images of records or rows of the target database that correspond to the before images of changes made to records or rows of the source database are read. Representations of the before images of changes made to records or rows of the source database are compared with representations of the current images of records or rows of the target database that correspond to the before images of changes made to records or rows of the source database.
    Type: Grant
    Filed: September 28, 2023
    Date of Patent: January 23, 2024
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Paul J. Holenstein, Bruce D. Holenstein, Dylan R. Holenstein
  • Patent number: 11880356
    Abstract: A method is provided for performing transaction processing in a system. The system includes a plurality of processors. Each processor executes a plurality of transactions. Two of the processors receive requests to process the same subset of the plurality of transactions and each of the two processors execute each of the requests to process the same subset of the plurality of transactions. Each of the two processors create local indicia from the outcome of each transaction in the same subset of the plurality of transactions. Each of the two processors assign a transaction tag to each of the local indicia, wherein the same transaction tag is assigned by each of the two processors executing the same transaction. The local indicia and the respectively assigned transaction tags from each of the two processors are queued. It is then detected when queued transaction tags from the two processors match each other. The local indicia associated with the matching transaction tags are then compared to each other.
    Type: Grant
    Filed: September 21, 2023
    Date of Patent: January 23, 2024
    Assignee: GRAVIC, INC.
    Inventors: Bruce D. Holenstein, Dylan R. Holenstein, Paul J. Holenstein
  • Patent number: 11782908
    Abstract: Methods and apparatus are provided for processing a transaction that has been aborted on a source system. Transactions are completed within a transaction processing system, and the transactions are replicated from a source database to a target database by a replication engine. Each transaction is a series of one or more transaction steps or operations. The aborted transaction on the source system was replicated and is a pre-committed transaction on the target database. Transaction pattern data in a transaction pattern table is used to predict when a pre-committed transaction is an erroneously committed transaction. The pre-committed transaction is reversed on the target database when the prediction indicates that the pre-committed transaction was erroneously committed.
    Type: Grant
    Filed: May 12, 2023
    Date of Patent: October 10, 2023
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Bruce D. Holenstein, Paul J. Holenstein
  • Patent number: 11782907
    Abstract: Methods and apparatus are provided to combine responses to a plurality of user requests in a system that validates transactions. The system includes a plurality of nodes, a transaction response combiner (TRC), and a plurality of queues located in the TRC. Each queue is associated with one of the plurality of nodes. Each node executes an instance of the same application, and each node receives each one of the plurality of user requests. The application produces a response for each one of the plurality of user requests, and each response includes response details. In operation, the TRC receives a response from each of the nodes for each of the user requests. Each response is tagged with an identifier that corresponds with the respective user request. At least some of the tagged responses for one of the plurality of nodes is inserted into a queue.
    Type: Grant
    Filed: May 4, 2023
    Date of Patent: October 10, 2023
    Assignee: GRAVIC, INC.
    Inventors: Bruce D Holenstein, Paul J. Holenstein, Dylan R. Holenstein
  • Patent number: 11775560
    Abstract: An automated method and system are provided for comparing a source database and a target database that are intended to be kept in synchronization with each other. An application processes transactions that are posted to the source database and replicated to the target database. Before images of changes made to the source database resulting from transactions posted to the source database are collected into a first change log and then replicated to the target database. Before images of changes made to the target database resulting from replication are collected into a second change log. Representations of the before images of changes in the first change log are compared with representations of the before images of changes in the second change log that correspond to the same respective changes that were made to the source database and replicated to the target database.
    Type: Grant
    Filed: September 3, 2021
    Date of Patent: October 3, 2023
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Paul J. Holenstein, Bruce D. Holenstein, Dylan R. Holenstein
  • Patent number: 11775509
    Abstract: Methods and apparatus are provided to fully process an incomplete transaction which is incomplete in either a source database or a target database. Transactions are completed within a transaction processing system that includes a non-static application. The non-static application has a transaction mix that varies over its life cycle. The transactions are replicated from the source database to the target database by a replication engine. Each transaction is a series of one or more transaction steps or operations. A plurality of transaction pattern tables are provided, and one of the transaction pattern tables are selected for use in the process depending upon a time of day or a transaction mix.
    Type: Grant
    Filed: May 12, 2023
    Date of Patent: October 3, 2023
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Bruce D. Holenstein, Paul J. Holenstein
  • Patent number: 11768822
    Abstract: A method is provided for validating transactions in a system that includes indeterministic ordering of change log events by using deterministic indicia. The system includes a plurality of nodes. Each node in the system includes an instance of a database used by an application, and a change log associated with the instance of the database used by the application. Each node executes transactions. Each transaction includes one or more data manipulation language (DML) or data definition language (DDL) operations. Results of the DML or DDL, operations are stored in the change log as change log events, wherein the order of the change log events stored in the change log on one node is in a different order than the order of change log events stored in the change log of at least one of the other nodes. For each transaction executing at each node, deterministic subunits of the change log events are defined. Indicia are then computed for each subunit of the change log events.
    Type: Grant
    Filed: April 6, 2023
    Date of Patent: September 26, 2023
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, Dylan R. Holenstein, Jonathan M. Ziegler, Joseph A. Wynn
  • Patent number: 11748212
    Abstract: An automated method is provided for resolving an unintended transaction rollback in a system that includes an audited database, a non-audited application, and a facility for converting non-audited applications to use audited database transactions, wherein the unintended transaction rollback is the result of a failure of the facility to convert the unintended transaction rollback to a commit operation, The non-audited application is operated with the facility creating database transactions against the audited database. The database transactions include one or more transaction steps or operations. The created database transactions are monitored to detect transaction rollbacks. A determination is made when a detected transaction rollback for a database transaction is an unintended transaction rollback. The one or more transaction steps or operations of the database transaction that included the unintended transaction rollback are recovered in the audited database.
    Type: Grant
    Filed: June 28, 2021
    Date of Patent: September 5, 2023
    Assignee: GRAVIC, INC.
    Inventors: Bruce D. Holenstein, Paul J. Holenstein, Keith B. Evans, Dylan R. Holenstein
  • Patent number: 11698917
    Abstract: An automated method is provided for use when replacing a currently operating data replication engine in a first system with a new data replication engine in the first system in a bidirectional data replication environment. The currently operating data replication engine in the first system and the new data replication engine in the first system replicates first database transactions from an audit trail of a first database in the first system to a second database in a second system. The new data replication engine in the first system generating a list of active database transactions in the first system, and sends the list of active database transactions to the new data replication engine in the second system as a first token.
    Type: Grant
    Filed: September 12, 2022
    Date of Patent: July 11, 2023
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, John R. Hoffmann, Wilbur H. Highleyman
  • Patent number: 11681686
    Abstract: Methods and apparatus are provided to fully process an initially incomplete replicated and committed transaction. A transaction pattern table is provided that includes a plurality of records, each record being defined by a transaction pattern identifier. Each record includes a transaction pattern and a metric of occurrence of the transaction pattern. An incomplete transaction is automatically compared to the transaction patterns in the table and a subset of transaction patterns in the table are identified that are potential candidates for matching the incomplete transaction. The incomplete transaction is categorized using the metric of occurrence of the transaction pattern for each transaction pattern in the subset. The categorization predicts when all steps or operations of the transaction which have completed in the source database have been replicated, and the incomplete transaction is committed based on this prediction.
    Type: Grant
    Filed: June 18, 2020
    Date of Patent: June 20, 2023
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Bruce D. Holenstein, Paul J. Holenstein
  • Patent number: 11599528
    Abstract: A method is provided for performing transaction processing in a system that includes a plurality of nodes. Each of the nodes include a processor, an application executing in the processor, and an instance of a database used by the application. Each node executes transactions. At least two of the nodes are dynamically selected to receive the same request to process a transaction, and the processor at each of the at least two nodes executes and validates the same request to process a transaction. One or more of the at least two nodes replicates the same request, steps and operations, and/or indicia of the transactions to one or more other nodes in the system.
    Type: Grant
    Filed: May 5, 2022
    Date of Patent: March 7, 2023
    Assignee: GRAVIC, INC.
    Inventors: Bruce D. Holenstein, Dylan R. Holenstein, Paul J. Holenstein
  • Patent number: 11580134
    Abstract: Source database precommitted transactions are resolved in a target database of a database replication system when selected source database precommitted transactions are subsequently aborted in the source database.
    Type: Grant
    Filed: December 20, 2021
    Date of Patent: February 14, 2023
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, John R. Hoffmann, Bruce D. Holenstein, Wilbur H. Highleyman
  • Patent number: 11442962
    Abstract: An automated method is provided for replacing a currently operating data replication engine with a new data replication engine. The currently operating data replication engine replicates source database transactions including any new source database transactions committed in an audit trail of the source database before the currently operating data replication engine stops replicating. All new source database transactions that the currently operating data replication engine has not completed replicating are joined. The currently operating data replication engine is stopped when all of the source database transactions that were not joined have completed replicating. All joined transactions are then voted to be committed and are replicated. The new data replication engine replicates all new source database transactions started after the currently operating data replication engine stops.
    Type: Grant
    Filed: June 1, 2021
    Date of Patent: September 13, 2022
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, John R. Hoffmann, Wilbur H. Highleyman
  • Patent number: 11327955
    Abstract: A method is provided for performing transaction processing in a system that includes a plurality of nodes. Each of the nodes include a processor, an application executing in the processor, and an instance of a database used by the application. Each node executes transactions. At least two of the nodes are selected to receive the same request to process a transaction, and the processor at each of the at least two nodes executes the same request to process a transaction. Each of the at least two nodes replicates the steps and operations of the transactions to one or more other nodes in the system. The processor at the one or more other nodes compares the replicated steps and operations of the transactions that were received from each of the at least two nodes and executes one or more remediation actions when the result of the comparison indicates that the replicated steps and operations of the replicated transactions do not match each other.
    Type: Grant
    Filed: September 4, 2019
    Date of Patent: May 10, 2022
    Assignee: GRAVIC, INC.
    Inventors: Bruce D. Holenstein, Dylan R. Holenstein, Paul J. Holenstein
  • Patent number: 11210320
    Abstract: Target database constraint violations are potentially resolved in a database replication system by replacing, converting, or removing deferred database changes.
    Type: Grant
    Filed: October 8, 2020
    Date of Patent: December 28, 2021
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, John R. Hoffmann, Bruce D. Holenstein, Wilbur H. Highleyman
  • Patent number: 11120047
    Abstract: An automated method and system are provided for comparing a source database and a target database that are intended to be kept in synchronization with each other. An application processes transactions that are posted to the source database and replicated to the target database. Changes made to the source database resulting from transactions posted to the source database are collected into a first change log and then replicated to the target database. Changes made to the target database resulting from replication are collected into a second change log. The changes in the first change log are compared with representations of the changes in the second change log that correspond to the same respective changes that were made to the source database and replicated to the target database. Corrective action is performed when the comparison indicates that the representations of the changes in the first change log do not match the representations of the changes in the second change log.
    Type: Grant
    Filed: August 22, 2019
    Date of Patent: September 14, 2021
    Assignee: GRAVIC, INC.
    Inventors: John R. Hoffmann, Paul J. Holenstein, Bruce D. Holenstein, Dylan R. Holenstein
  • Publication number: 20210209591
    Abstract: A system is provided for notifying a merchant after completion of a previous transaction by the merchant when a payment instrument used for the previous transaction has been identified as being suspect as a result of suspect activity regarding the payment instrument that is unrelated to the previous transaction. The notification is in the form of an electronically issued dispute or deactivation notification regarding any suspect payment instrument indicia that matches payment instrument indicia used for a transaction previously completed by the merchant.
    Type: Application
    Filed: March 25, 2021
    Publication date: July 8, 2021
    Inventors: Bruce D. HOLENSTEIN, Dylan R. HOLENSTEIN, Paul J. HOLENSTEIN, Wilbur H. HIGHLEYMAN
  • Patent number: 11030219
    Abstract: An automated method is provided for replacing a currently operating data replication engine with a new data replication engine. The currently operating data replication engine replicates source database transactions including any new source database transactions committed in an audit trail of the source database before the currently operating data replication engine stops replicating. A list of active database transactions is generated and recorded as a first token in the audit trail. The currently operating data replication engine is stopped when all of the database transactions in the first token have completed. The new data replication engine is started and positioned to begin processing source database transactions in the audit trail of the source database at a beginning position that is located at or prior to the position of the first token in the audit trail.
    Type: Grant
    Filed: November 11, 2019
    Date of Patent: June 8, 2021
    Assignee: GRAVIC, INC.
    Inventors: Paul J. Holenstein, Bruce D. Holenstein, John R. Hoffmann, Wilbur H. Highleyman