This is an automated email from the ASF dual-hosted git repository. yong pushed a commit to branch branch-2.7 in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 0b3e51029a2e1d51241aee91bed45b14a7c3425b Author: Andrey Yegorov <[email protected]> AuthorDate: Mon Apr 5 10:12:53 2021 -0700 Fix: seemingly equal ClientConfigurationData's objects end up not being equal (#10091) * fixed equals for the ClientConfigurationData (found while fixing tests in pulsar-adapters repo) * added test/repro * CR feedback (cherry picked from commit 8a2c5cc2ba170ddce50712e48c053c187da98d60) --- .../pulsar/client/impl/conf/ClientConfigurationData.java | 2 +- .../pulsar/client/impl/conf/ConfigurationDataUtilsTest.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ClientConfigurationData.java b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ClientConfigurationData.java index b68caf1..ca81669 100644 --- a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ClientConfigurationData.java +++ b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/conf/ClientConfigurationData.java @@ -103,7 +103,7 @@ public class ClientConfigurationData implements Serializable, Cloneable { public Authentication getAuthentication() { if (authentication == null) { - this.authentication = new AuthenticationDisabled(); + this.authentication = AuthenticationDisabled.INSTANCE; } return authentication; } diff --git a/pulsar-client/src/test/java/org/apache/pulsar/client/impl/conf/ConfigurationDataUtilsTest.java b/pulsar-client/src/test/java/org/apache/pulsar/client/impl/conf/ConfigurationDataUtilsTest.java index a1bafbd..ba94726 100644 --- a/pulsar-client/src/test/java/org/apache/pulsar/client/impl/conf/ConfigurationDataUtilsTest.java +++ b/pulsar-client/src/test/java/org/apache/pulsar/client/impl/conf/ConfigurationDataUtilsTest.java @@ -138,4 +138,16 @@ public class ConfigurationDataUtilsTest { assertEquals(pulsarClient.getConfiguration().getStatsIntervalSeconds(), 80, "builder default should overrite if set explicitly"); } + + @Test + public void testEquals() { + ClientConfigurationData confData1 = new ClientConfigurationData(); + confData1.setServiceUrl("pulsar://unknown:6650"); + + ClientConfigurationData confData2 = new ClientConfigurationData(); + confData2.setServiceUrl("pulsar://unknown:6650"); + + assertEquals(confData1, confData2); + assertEquals(confData1.hashCode(), confData2.hashCode()); + } }
