From 4482d7b391150dbb679b17b0a1fb65e9ec78ff97 Mon Sep 17 00:00:00 2001 From: evan-miller-jumpmind <70151986+evan-miller-jumpmind@users.noreply.github.com> Date: Tue, 12 Dec 2023 13:55:04 -0500 Subject: [PATCH] 0006153: Added parameters that can disable specific types of conflict resolution --- .../symmetric/common/ParameterConstants.java | 3 ++ .../load/AbstractDataLoaderFactory.java | 6 +++ .../resources/symmetric-default.properties | 46 +++++++++++++++---- .../data/writer/DatabaseWriterSettings.java | 27 +++++++++++ ...DefaultDatabaseWriterConflictResolver.java | 37 +++++++++++---- 5 files changed, 100 insertions(+), 19 deletions(-) diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java index 1dd7f1c7e2..9c8c8f3b47 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java @@ -122,6 +122,9 @@ private ParameterConstants() { public final static String AUTO_RESOLVE_FOREIGN_KEY_VIOLATION_REVERSE = "auto.resolve.foreign.key.violation.reverse"; public final static String AUTO_RESOLVE_FOREIGN_KEY_VIOLATION_REVERSE_PEERS = "auto.resolve.foreign.key.violation.reverse.peers"; public final static String AUTO_RESOLVE_FOREIGN_KEY_VIOLATION_REVERSE_RELOAD = "auto.resolve.foreign.key.violation.reverse.reload"; + public final static String AUTO_RESOLVE_FOREIGN_KEY_VIOLATION_DELETE = "auto.resolve.foreign.key.violation.delete"; + public final static String AUTO_RESOLVE_PRIMARY_KEY_VIOLATION = "auto.resolve.primary.key.violation"; + public final static String AUTO_RESOLVE_UNIQUE_INDEX_VIOLATION = "auto.resolve.unique.index.violation"; public final static String AUTO_RESOLVE_UNIQUE_INDEX_IGNORE_NULL_VALUES = "auto.resolve.unique.index.ignore.null.values"; public final static String AUTO_INSERT_REG_SVR_IF_NOT_FOUND = "auto.insert.registration.svr.if.not.found"; public final static String AUTO_SYNC_CONFIGURATION = "auto.sync.configuration"; diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/load/AbstractDataLoaderFactory.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/load/AbstractDataLoaderFactory.java index 3f0dde78ff..7d2e455a2b 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/load/AbstractDataLoaderFactory.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/load/AbstractDataLoaderFactory.java @@ -54,6 +54,12 @@ public DatabaseWriterSettings buildParameterDatabaseWriterSettings(List