IP Library Granted Patent US 12,455,898
Granted Patent B1
US 12,455,898 · App. 18/605,635 · Granted Oct 28, 2025

Methods for preventing constraint violations at a target database by a database replication system where an application call, or a programmatic call by a database management system, forces a flush of a change log

Inventors: Paul J. Holenstein (Downingtown, PA); John R. Hoffmann (Kennett Square, PA); Bruce D. Holenstein (Media, PA); Wilbur H. Highleyman (Blairstown, NJ)
Assignee: GRAVIC, INC.
G06F16/27G06F3/0605G06F3/065G06F11/2023G06F11/2097G06F16/1865G06F16/2358G06F16/2365G06F16/2379
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,455,898
App. No.
18/605,635
Granted
Oct 28, 2025
Kind
B1
Abstract

Methods are provided for preventing constraint violations at a target database by a database replication system. The database replication system replicates database transactions from a change log of a source database to the target database. Each source database and each target database have one or more tables, and at least one of the target database tables has one or more constraints. The database replication system replicates database transactions from a change log for the source database to the target database. Each of the source database tables has an associated change log disk cache. For each database transaction, a database change is detected to the at least one of the source database tables that potentially causes a constraint violation at the target database as a result of one or more of the target database tables having one or more constraints. An application call, or a programmatic call by a database management system, is then made when the database change is detected to flush to a change log disk contents of the associated change log disk cache for the at least one of the source database tables which has a change log disk cache that may flush to the change log disk in a misordered manner compared to change log disk cache flushes from at least one other source database table. The application call, or the programmatic call by the database management system, prevents the potential constraint violation at the target database by the database replication system.

Claims (16)

1. A method for preventing constraint violations at a target database by a database replication system, the database replication system replicating database transactions from a change log of a source database to the target database, each database transaction having a commit operation, each source database and each target database having one or more tables, at least one of the target database tables having one or more constraints, each of the source database tables having an associated change log disk cache, the method comprising for each database transaction:

(a) detecting a database change to the at least one of the source database tables that potentially causes a constraint violation at the target database as a result of one or more of the target database tables having one or more constraints; and

(b) making an application call, when the database change in step (a) is detected, to flush to a change log disk contents of the associated change log disk cache for the at least one of the source database tables which has a change log disk cache that may flush to the change log disk in a misordered manner compared to change log disk cache flushes from at least one other source database table,

wherein step (b) occurs prior to initiation of, and independent from, the commit operation being performed for the associated database transaction, and

wherein the application call prevents the potential constraint violation at the target database by the database replication system.

2. The method of claim 1 wherein the constraint violation is detected by attempting to apply the database change.

3. The method of claim 1 wherein the constraint violation is caused by referential integrity rules.

4. The method of claim 1 wherein database changes made at the source database which are replicated to the target database are in the form of a stream of database changes.

5. A method for preventing constraint violations at a target database by a database replication system, the database replication system replicating database transactions from a change log of a source database to the target database, each database transaction having a commit operation, each source database and each target database having one or more tables, at least one of the target database tables having one or more constraints, each of the source database tables having an associated change log disk cache, the target database being part of a database management system (DBMS), the method comprising for each database transaction:

(a) detecting a database change to the at least one of the source database tables that potentially causes a constraint violation at the target database as a result of one or more of the target database tables having one or more constraints; and

(b) making a programmatic call by the DBMS, when the database change in step (a) is detected, to flush to a change log disk contents of the associated change log disk cache for the at least one of the source database tables which has a change log disk cache that may flush to the change log disk in a misordered manner compared to change log disk cache flushes from at least one other source database table,

wherein step (b) occurs prior to initiation of, and independent from, the commit operation being performed for the associated database transaction, and

wherein the programmatic call by the DBMS prevents the potential constraint violation at the target database by the database replication system.

6. The method of claim 5 wherein the constraint violation is detected by attempting to apply the database change.

7. The method of claim 5 wherein the constraint violation is caused by referential integrity rules.

8. The method of claim 5 wherein database changes made at the source database which are replicated to the target database are in the form of a stream of database changes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2024
From: HOLENSTEIN, PAUL J.; HOLENSTEIN, BRUCE D.; HOFFMANN, JOHN R.; HIGHLEYMAN, WILBUR H.
To: GRAVIC, INC.
Reel/Frame 066819/0519 →
Continuity (6)
Continuation 18103856 · Jan 31, 2023
Continuation 17556220 · Dec 20, 2021
Continuation 17065793 · Oct 8, 2020
Continuation 16282691 · Feb 22, 2019
Continuation 15839029 · Dec 12, 2017
Provisional Application 62434124 · Dec 14, 2016
References Cited (22)
US 5799305A · Bortvedt et al. · 1998 [cited by applicant]
US 6122630A · Strickler et al. · 2000 [cited by applicant]
US 7949640B2 · Holenstein et al. · 2011 [cited by applicant]
US 8086661B2 · Holenstein et al. · 2011 [cited by applicant]
US 8903779B1 · Holenstein et al. · 2014 [cited by applicant]
US 11609895B2 · Eidson · 2023 [cited by examiner]
US 12198065B1 · Gauthier · 2025 [cited by examiner]
US 20030105732A1 · Kagalwala et al. · 2003 [cited by applicant]
US 20050055382A1 · Ferrat · 2005 [cited by examiner]
US 20050192989A1 · Adiba · 2005 [cited by examiner]
US 20060047713A1 · Gornshtein · 2006 [cited by examiner]
US 20060149799A1 · Wong et al. · 2006 [cited by applicant]
US 20060178918A1 · Mikurak · 2006 [cited by applicant]
US 20070255763A1 · Beyerle et al. · 2007 [cited by applicant]
US 20080120470A1 · Dhamankar · 2008 [cited by examiner]
US 20090012962A1 · Poyourow · 2009 [cited by examiner]
US 20090300073A1 · Bourbonnais · 2009 [cited by examiner]
US 20090313311A1 · Hoffmann · 2009 [cited by examiner]
US 20110153568A1 · Shang · 2011 [cited by examiner]
US 20120278282A1 · Lu et al. · 2012 [cited by applicant]
US 20140081907A1 · Tran · 2014 [cited by examiner]
US 20210319030A1 · Guiney · 2021 [cited by examiner]