diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APICollectionRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APICollectionRepository.java index d4cbda5233a..2b79b32108e 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APICollectionRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APICollectionRepository.java @@ -122,7 +122,7 @@ public class APICollectionRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("sourceHash", original.getSourceHash(), updated.getSourceHash()); } } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APIEndpointRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APIEndpointRepository.java index ee86ea06cee..30f1a4ff33b 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APIEndpointRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/APIEndpointRepository.java @@ -396,7 +396,7 @@ public class APIEndpointRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("endpointURL", original.getEndpointURL(), updated.getEndpointURL()); recordChange("requestMethod", original.getRequestMethod(), updated.getRequestMethod()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/AppRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/AppRepository.java index 1c7cab44492..1452249f667 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/AppRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/AppRepository.java @@ -386,7 +386,7 @@ public class AppRepository extends EntityRepository { } @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange( "appConfiguration", original.getAppConfiguration(), updated.getAppConfiguration()); recordChange("appSchedule", original.getAppSchedule(), updated.getAppSchedule()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/BotRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/BotRepository.java index 423c4711f65..e766c3536de 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/BotRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/BotRepository.java @@ -97,7 +97,7 @@ public class BotRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateUser(original, updated); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ChartRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ChartRepository.java index 6efeb8000a9..970eab36408 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ChartRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ChartRepository.java @@ -127,7 +127,7 @@ public class ChartRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("chartType", original.getChartType(), updated.getChartType()); recordChange("sourceUrl", original.getSourceUrl(), updated.getSourceUrl()); recordChange("sourceHash", original.getSourceHash(), updated.getSourceHash()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ClassificationRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ClassificationRepository.java index 03635db04a0..23f9eaab971 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ClassificationRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ClassificationRepository.java @@ -158,7 +158,7 @@ public class ClassificationRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { // Mutually exclusive cannot be updated updated.setMutuallyExclusive(original.getMutuallyExclusive()); recordChange("disabled", original.getDisabled(), updated.getDisabled()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ContainerRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ContainerRepository.java index 9ab85ac3c2b..ded12ad9a03 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ContainerRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ContainerRepository.java @@ -270,7 +270,7 @@ public class ContainerRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateDataModel(original, updated); recordChange("prefix", original.getPrefix(), updated.getPrefix()); List addedItems = new ArrayList<>(); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DashboardDataModelRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DashboardDataModelRepository.java index d8bf4e3833c..75767753da7 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DashboardDataModelRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DashboardDataModelRepository.java @@ -210,7 +210,7 @@ public class DashboardDataModelRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { update( Entity.CHART, "charts", diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataProductRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataProductRepository.java index b32fb61e013..ff9f463d98a 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataProductRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataProductRepository.java @@ -135,7 +135,7 @@ public class DataProductRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateAssets(); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseRepository.java index 00593019b22..a0d035413f8 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseRepository.java @@ -246,7 +246,7 @@ public class DatabaseRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("retentionPeriod", original.getRetentionPeriod(), updated.getRetentionPeriod()); recordChange("sourceUrl", original.getSourceUrl(), updated.getSourceUrl()); recordChange("sourceHash", original.getSourceHash(), updated.getSourceHash()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseSchemaRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseSchemaRepository.java index 528ef99baa1..a07e2f8174f 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseSchemaRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DatabaseSchemaRepository.java @@ -223,7 +223,7 @@ public class DatabaseSchemaRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("retentionPeriod", original.getRetentionPeriod(), updated.getRetentionPeriod()); recordChange("sourceUrl", original.getSourceUrl(), updated.getSourceUrl()); recordChange("sourceHash", original.getSourceHash(), updated.getSourceHash()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DocumentRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DocumentRepository.java index b49499d4ee1..4dd23ec4a2c 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DocumentRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DocumentRepository.java @@ -144,7 +144,7 @@ public class DocumentRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateEmailTemplatePlaceholders(original, updated); recordChange("data", original.getData(), updated.getData(), true); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DomainRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DomainRepository.java index 707c9f3f97a..40943f8bc18 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DomainRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DomainRepository.java @@ -147,7 +147,7 @@ public class DomainRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("domainType", original.getDomainType(), updated.getDomainType()); } } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java index e3ab2c72569..221da3625c8 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java @@ -2668,7 +2668,7 @@ public abstract class EntityRepository { "In session change consolidation. Reverting to previous version {}", previous.getVersion()); updated = previous; - updateInternal(); + updateInternal(true); LOG.info( "In session change consolidation. Reverting to previous version {} completed", previous.getVersion()); @@ -2686,6 +2686,12 @@ public abstract class EntityRepository { /** Compare original and updated entities and perform updates. Update the entity version and track changes. */ @Transaction private void updateInternal() { + updateInternal(false); + } + + /** Compare original and updated entities and perform updates. Update the entity version and track changes. */ + @Transaction + private void updateInternal(boolean consolidatingChanges) { if (operation.isDelete()) { // Soft DELETE Operation updateDeleted(); } else { // PUT or PATCH operations @@ -2704,11 +2710,11 @@ public abstract class EntityRepository { updateStyle(); updateLifeCycle(); updateCertification(); - entitySpecificUpdate(); + entitySpecificUpdate(consolidatingChanges); } } - protected void entitySpecificUpdate() { + protected void entitySpecificUpdate(boolean consolidatingChanges) { // Default implementation. Override this to add any entity specific field updates } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EventSubscriptionRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EventSubscriptionRepository.java index 6a57298fb28..2eefbef7945 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EventSubscriptionRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EventSubscriptionRepository.java @@ -134,7 +134,7 @@ public class EventSubscriptionRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateName(original, updated); // Mutually exclusive cannot be updated updated.setMutuallyExclusive(original.getMutuallyExclusive()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java index 4e01a8cb944..2631fefd715 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java @@ -934,9 +934,9 @@ public class GlossaryTermRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { validateParent(); - updateStatus(original, updated); + updateStatus(original, updated, consolidatingChanges); updateSynonyms(original, updated); updateReferences(original, updated); updateRelatedTerms(original, updated); @@ -1000,12 +1000,14 @@ public class GlossaryTermRepository extends EntityRepository { } } - private void updateStatus(GlossaryTerm origTerm, GlossaryTerm updatedTerm) { + private void updateStatus( + GlossaryTerm origTerm, GlossaryTerm updatedTerm, boolean consolidatingChanges) { if (origTerm.getStatus() == updatedTerm.getStatus()) { return; } // Only reviewers can change from IN_REVIEW status to APPROVED/REJECTED status - if (origTerm.getStatus() == Status.IN_REVIEW + if (!consolidatingChanges + && origTerm.getStatus() == Status.IN_REVIEW && (updatedTerm.getStatus() == Status.APPROVED || updatedTerm.getStatus() == Status.REJECTED)) { checkUpdatedByReviewer(origTerm, updatedTerm.getUpdatedBy()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/IngestionPipelineRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/IngestionPipelineRepository.java index 49832487f95..a3f3b5262ab 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/IngestionPipelineRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/IngestionPipelineRepository.java @@ -300,7 +300,7 @@ public class IngestionPipelineRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateToRelationship( "dataInsightChart", KPI, diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MetricRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MetricRepository.java index 9d24737d112..94d33e38cdc 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MetricRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MetricRepository.java @@ -109,7 +109,7 @@ public class MetricRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("granularity", original.getGranularity(), updated.getGranularity()); recordChange("metricType", original.getMetricType(), updated.getMetricType()); recordChange( diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MlModelRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MlModelRepository.java index 596a346b36c..e2b582ecb7c 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MlModelRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/MlModelRepository.java @@ -322,7 +322,7 @@ public class MlModelRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateAlgorithm(original, updated); updateDashboard(original, updated); updateMlFeatures(original, updated); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PersonaRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PersonaRepository.java index b714dffaa77..a9745cfde4e 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PersonaRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PersonaRepository.java @@ -95,7 +95,7 @@ public class PersonaRepository extends EntityRepository { } @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateUsers(original, updated); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PipelineRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PipelineRepository.java index 8d5cafd6b53..8aaf4db08d8 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PipelineRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PipelineRepository.java @@ -469,7 +469,7 @@ public class PipelineRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateTasks(original, updated); recordChange("sourceUrl", original.getSourceUrl(), updated.getSourceUrl()); recordChange("concurrency", original.getConcurrency(), updated.getConcurrency()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PolicyRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PolicyRepository.java index d7f8ecdac07..e2fc11da4b1 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PolicyRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/PolicyRepository.java @@ -165,7 +165,7 @@ public class PolicyRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange(ENABLED, original.getEnabled(), updated.getEnabled()); updateRules(original.getRules(), updated.getRules()); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/QueryRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/QueryRepository.java index 392da07d24f..a47da0df937 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/QueryRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/QueryRepository.java @@ -246,7 +246,7 @@ public class QueryRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateFromRelationships( "users", USER, diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/RoleRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/RoleRepository.java index e5448e85942..5d8c398faba 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/RoleRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/RoleRepository.java @@ -128,7 +128,7 @@ public class RoleRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updatePolicies(listOrEmpty(original.getPolicies()), listOrEmpty(updated.getPolicies())); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SearchIndexRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SearchIndexRepository.java index 4bc11613342..76233753bc9 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SearchIndexRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SearchIndexRepository.java @@ -376,7 +376,7 @@ public class SearchIndexRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { if (updated.getFields() != null) { updateSearchIndexFields( "fields", diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ServiceEntityRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ServiceEntityRepository.java index c5444a9bfdb..03d5d24510e 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ServiceEntityRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/ServiceEntityRepository.java @@ -117,7 +117,7 @@ public abstract class ServiceEntityRepository< @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateConnection(); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/StoredProcedureRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/StoredProcedureRepository.java index 9a879a27dce..60ad7db78d2 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/StoredProcedureRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/StoredProcedureRepository.java @@ -130,7 +130,7 @@ public class StoredProcedureRepository extends EntityRepository @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { // storedProcedureCode is a required field. Cannot be null. if (updated.getStoredProcedureCode() != null) { recordChange( diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TableRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TableRepository.java index cb3902fd06b..0247bf0b7cd 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TableRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TableRepository.java @@ -1156,7 +1156,7 @@ public class TableRepository extends EntityRepository { } @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { Table origTable = original; Table updatedTable = updated; DatabaseUtil.validateColumns(updatedTable.getColumns()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TagRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TagRepository.java index ef0d1a15876..23fb53088cf 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TagRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TagRepository.java @@ -307,7 +307,7 @@ public class TagRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange( "mutuallyExclusive", original.getMutuallyExclusive(), updated.getMutuallyExclusive()); recordChange("disabled", original.getDisabled(), updated.getDisabled()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TeamRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TeamRepository.java index e812740cffc..5c4d2e09834 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TeamRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TeamRepository.java @@ -876,7 +876,7 @@ public class TeamRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { if (original.getTeamType() != updated.getTeamType()) { // A team of type 'Group' cannot be updated if (GROUP.equals(original.getTeamType())) { diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestCaseRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestCaseRepository.java index 6275206704c..1c6e807e520 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestCaseRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestCaseRepository.java @@ -678,7 +678,7 @@ public class TestCaseRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { EntityLink origEntityLink = EntityLink.parse(original.getEntityLink()); EntityReference origTableRef = EntityUtil.validateEntityLink(origEntityLink); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestConnectionDefinitionRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestConnectionDefinitionRepository.java index 3d65d900ab2..0b293bca7c7 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestConnectionDefinitionRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestConnectionDefinitionRepository.java @@ -79,7 +79,7 @@ public class TestConnectionDefinitionRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("testPlatforms", original.getTestPlatforms(), updated.getTestPlatforms()); recordChange( "supportedDataTypes", original.getSupportedDataTypes(), updated.getSupportedDataTypes()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestSuiteRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestSuiteRepository.java index 291c55cb077..7d4b486e8f0 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestSuiteRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TestSuiteRepository.java @@ -508,7 +508,7 @@ public class TestSuiteRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { List origTests = listOrEmpty(original.getTests()); List updatedTests = listOrEmpty(updated.getTests()); List origTestCaseResultSummary = diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TopicRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TopicRepository.java index 0154d8f3b6f..d1d62934362 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TopicRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TopicRepository.java @@ -379,7 +379,7 @@ public class TopicRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange( "maximumMessageSize", original.getMaximumMessageSize(), updated.getMaximumMessageSize()); recordChange( diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java index 66b546094cf..1d9078a264f 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java @@ -270,7 +270,7 @@ public class TypeRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { updateCustomProperties(); } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/UserRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/UserRepository.java index 2647cb97aae..2e77c9af93c 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/UserRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/UserRepository.java @@ -625,7 +625,7 @@ public class UserRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { // LowerCase Email updated.setEmail(original.getEmail().toLowerCase()); diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/WorkflowDefinitionRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/WorkflowDefinitionRepository.java index f7ea1360c2f..aff180015d8 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/WorkflowDefinitionRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/WorkflowDefinitionRepository.java @@ -73,7 +73,7 @@ public class WorkflowDefinitionRepository extends EntityRepository { @Transaction @Override - public void entitySpecificUpdate() { + public void entitySpecificUpdate(boolean consolidatingChanges) { recordChange("status", original.getStatus(), updated.getStatus()); recordChange("response", original.getResponse(), updated.getResponse(), true); } diff --git a/openmetadata-service/src/test/java/org/openmetadata/service/resources/glossary/GlossaryTermResourceTest.java b/openmetadata-service/src/test/java/org/openmetadata/service/resources/glossary/GlossaryTermResourceTest.java index 90e9a3b3e2d..c2e15538a3a 100644 --- a/openmetadata-service/src/test/java/org/openmetadata/service/resources/glossary/GlossaryTermResourceTest.java +++ b/openmetadata-service/src/test/java/org/openmetadata/service/resources/glossary/GlossaryTermResourceTest.java @@ -266,20 +266,29 @@ public class GlossaryTermResourceTest extends EntityResourceTest { const { page, afterAction, apiContext } = await performAdminLogin(browser); const glossary1 = new Glossary(); const glossaryTerm1 = new GlossaryTerm(glossary1); - const glossaryTerm2 = new GlossaryTerm(glossary1); - glossary1.data.terms = [glossaryTerm1, glossaryTerm2]; + glossary1.data.terms = [glossaryTerm1]; + + /* We are creating another Glossary in order to avoid glossaryTerm2 to be moved to IN_REVIEW Status. */ + const glossary2 = new Glossary(); + const glossaryTerm2 = new GlossaryTerm(glossary2); + glossary2.data.terms = [glossaryTerm2]; + const user3 = new UserClass(); const user4 = new UserClass(); + await glossary1.create(apiContext); + await glossary2.create(apiContext); await glossaryTerm1.create(apiContext); await glossaryTerm2.create(apiContext); await user3.create(apiContext); @@ -285,6 +292,7 @@ test.describe('Glossary tests', () => { await glossaryTerm1.delete(apiContext); await glossaryTerm2.delete(apiContext); await glossary1.delete(apiContext); + await glossary2.delete(apiContext); await user3.delete(apiContext); await user4.delete(apiContext); await afterAction();