From ebd49ba3d29803a0c06d6df28e3f6a155472370d Mon Sep 17 00:00:00 2001 From: Shijie Sheng Date: Tue, 3 Jun 2025 13:23:35 -0700 Subject: [PATCH] fix updateDomainRequest mapper bug --- .../cadence/internal/compatibility/proto/RequestMapper.java | 2 +- .../com/uber/cadence/internal/compatibility/ProtoObjects.java | 4 ++++ .../internal/compatibility/proto/RequestMapperTest.java | 1 - 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/uber/cadence/internal/compatibility/proto/RequestMapper.java b/src/main/java/com/uber/cadence/internal/compatibility/proto/RequestMapper.java index d15746f0a..319d3e5ea 100644 --- a/src/main/java/com/uber/cadence/internal/compatibility/proto/RequestMapper.java +++ b/src/main/java/com/uber/cadence/internal/compatibility/proto/RequestMapper.java @@ -800,7 +800,7 @@ public static UpdateDomainRequest updateDomainRequest(com.uber.cadence.UpdateDom fields.add(DomainUpdateVisibilityArchivalURIField); } } - DomainReplicationConfiguration replicationConfiguration = new DomainReplicationConfiguration(); + DomainReplicationConfiguration replicationConfiguration = t.getReplicationConfiguration(); if (replicationConfiguration != null) { if (replicationConfiguration.getActiveClusterName() != null) { request.setActiveClusterName(replicationConfiguration.getActiveClusterName()); diff --git a/src/test/java/com/uber/cadence/internal/compatibility/ProtoObjects.java b/src/test/java/com/uber/cadence/internal/compatibility/ProtoObjects.java index cda73db7d..c12ae0ea5 100644 --- a/src/test/java/com/uber/cadence/internal/compatibility/ProtoObjects.java +++ b/src/test/java/com/uber/cadence/internal/compatibility/ProtoObjects.java @@ -1172,6 +1172,8 @@ public final class ProtoObjects { .setHistoryArchivalUri("historyArchivalUri") .setVisibilityArchivalStatus(ArchivalStatus.ARCHIVAL_STATUS_DISABLED) .setVisibilityArchivalUri("visibilityArchivalUri") + .addAllClusters(ImmutableList.of(CLUSTER_REPLICATION_CONFIGURATION)) + .setActiveClusterName("activeCluster") .setDeleteBadBinary("deleteBadBinary") .setFailoverTimeout(seconds(1)) .setUpdateMask( @@ -1185,6 +1187,8 @@ public final class ProtoObjects { .addPaths("history_archival_uri") .addPaths("visibility_archival_status") .addPaths("visibility_archival_uri") + .addPaths("active_cluster_name") + .addPaths("clusters") .addPaths("delete_bad_binary") .addPaths("failover_timeout") .build()) diff --git a/src/test/java/com/uber/cadence/internal/compatibility/proto/RequestMapperTest.java b/src/test/java/com/uber/cadence/internal/compatibility/proto/RequestMapperTest.java index db5345f33..ace637b69 100644 --- a/src/test/java/com/uber/cadence/internal/compatibility/proto/RequestMapperTest.java +++ b/src/test/java/com/uber/cadence/internal/compatibility/proto/RequestMapperTest.java @@ -236,7 +236,6 @@ public static Iterable cases() { "emitMetric"), // Thrift has this field but proto doens't have it testCase( ThriftObjects.UPDATE_DOMAIN_REQUEST, - // Data and replicationConfiguration are copied incorrectly due to a bug :( ProtoObjects.UPDATE_DOMAIN_REQUEST, RequestMapper::updateDomainRequest), testCase(