Database Replication Constraint Violation Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database replication systems face challenges in identifying and resolving constraint violations, leading to potential data inconsistencies and incorrect data replication across different data centers, especially in active-active configurations where constraint violations are often silenced to maintain data replication.

Innovation Solution

A method and system that detect database changes causing constraint violations, determine the type of violation, write the change to an error table, and update the target database with the latest error record, ensuring data integrity by locking the main record associated with the unique identifier and comparing error records to maintain data consistency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If constraint violations are silenced to ensure data replication continues, then data replication continuity is maintained, but data integrity and accuracy deteriorate

Engineering Contradiction:
Improvedata replication continuityVSAvoiddata integrity
Core Design Contradiction:
ReliabilityVSManufacturing precision

Solution Approach 1:

The patent segments constraint violations into different categories (silentable vs. non-silentable) based on their severity and impact. Non-critical violations are handled silently to maintain replication continuity, while critical violations trigger explicit error handling mechanisms. This segmentation allows the system to maintain both replication continuity and data integrity by applying different strategies to different types of violations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of constraint violation handling from a binary silent/non-silent approach to a multi-level classification system. By introducing parameters such as violation severity, data criticality, and recovery priority, the system can dynamically adjust its response to constraint violations, thereby maintaining both replication continuity and data integrity simultaneously.

Inventive Principle:
Principle #35Parameter changes

2Manufacturing precision

If constraint violations are handled explicitly to maintain data integrity, then data accuracy is improved, but data replication continuity may be disrupted

Engineering Contradiction:
Improvedata integrityVSAvoiddata replication continuity
Core Design Contradiction:
Manufacturing precisionVSReliability

Solution Approach 1:

The patent introduces dynamic error handling mechanisms that adapt to the specific context of each constraint violation. The system dynamically determines whether to silence or explicitly handle a violation based on real-time assessment of the violation's impact on data integrity. This dynamic approach allows the system to maintain data integrity when necessary while preserving replication continuity when possible.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements feedback mechanisms that monitor constraint violations and adjust replication behavior accordingly. When a constraint violation is detected, the system provides feedback to determine the appropriate handling strategy, and continues to monitor the results to ensure data integrity is maintained without unnecessarily disrupting replication continuity.

Inventive Principle:
Principle #23Feedback

3Manufacturing precision

If error records are locked and compared to determine the latest record, then data consistency is improved, but processing time increases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary actions by locking error records immediately upon detection of constraint violations, before replication operations proceed. This preliminary locking prevents subsequent operations from creating inconsistent states, thereby ensuring data consistency without requiring extensive post-processing time for conflict resolution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of error records in a dedicated error table, allowing the system to compare and determine the latest record without affecting the original replication process. This copying mechanism enables data consistency verification to proceed in parallel with replication operations, minimizing the impact on processing time.

Inventive Principle:
Principle #26Copying

4Device complexity

If silent failure handling is used to maintain replication, then system simplicity is maintained, but data correctness deteriorates

Engineering Contradiction:
Improvesystem simplicityVSAvoiddata correctness
Core Design Contradiction:
Device complexityVSManufacturing precision

Solution Approach 1:

The patent applies local quality by implementing different error handling strategies for different parts of the replication system. Critical components that require high data correctness receive explicit error handling with locking and comparison mechanisms, while non-critical components continue to use simple silent failure handling. This localized approach maintains system simplicity overall while ensuring data correctness where necessary.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11288276B2Method, system, and computer program product for identifying and resolving constraint violations in a database replication system
Publication Date: 2022.03.29 VISA INTERNATIONAL SERVICE ASSOCIATION
  • US11288276B2 patent drawing
  • US11288276B2 patent drawing
  • US11288276B2 patent drawing

AI summary

A method, system, and computer program product for identifying and resolving constraint violations in a database replication system determine a predetermined type of constraint violation and, in response thereto, write a record that failed to replicate into an error table on a target database and create a trigger on the error table to automatically and immediately handle the error record, based on why the record failed to replicate.