Skip to content

Commit fe123e5

Browse files
committed
Fix handling of additional-hosts with Mongo
Closes gh-36441
1 parent 28b5b7a commit fe123e5

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/mongo/PropertiesMongoConnectionDetails.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ public ConnectionString getConnectionString() {
6161
builder.append(this.properties.getPort());
6262
}
6363
if (this.properties.getAdditionalHosts() != null) {
64+
builder.append(",");
6465
builder.append(String.join(",", this.properties.getAdditionalHosts()));
6566
}
6667
builder.append("/");

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/mongo/PropertiesMongoConnectionDetailsTests.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616

1717
package org.springframework.boot.autoconfigure.mongo;
1818

19+
import java.util.List;
20+
1921
import com.mongodb.ConnectionString;
2022
import org.junit.jupiter.api.Test;
2123

@@ -102,6 +104,15 @@ void replicaSetCanBeConfiguredWithDatabase() {
102104
assertThat(connectionString.getRequiredReplicaSetName()).isEqualTo("test");
103105
}
104106

107+
@Test
108+
void whenAdditionalHostsAreConfiguredThenTheyAreIncludedInHostsOfConnectionString() {
109+
this.properties.setHost("mongo1.example.com");
110+
this.properties.setAdditionalHosts(List.of("mongo2.example.com", "mongo3.example.com"));
111+
ConnectionString connectionString = getConnectionString();
112+
assertThat(connectionString.getHosts()).containsExactly("mongo1.example.com", "mongo2.example.com",
113+
"mongo3.example.com");
114+
}
115+
105116
private PropertiesMongoConnectionDetails createConnectionDetails() {
106117
return new PropertiesMongoConnectionDetails(this.properties);
107118
}

0 commit comments

Comments
 (0)