Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitfce6b7b

Browse files
authored
fix: fix eager name resolution (#328)
1 parent575cf96 commitfce6b7b

File tree

9 files changed

+55
-23
lines changed

9 files changed

+55
-23
lines changed

‎src/main/java/io/kurrent/dbclient/ClientTelemetryTags.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,9 @@ Builder withServerTagsFromGrpcChannel(ManagedChannel channel) {
3636
BuilderwithServerTagsFromClientSettings(KurrentDBClientSettingssettings) {
3737
if (settings ==null || !settings.isDnsDiscover())returnthis;
3838

39-
InetSocketAddressdns =settings.getHosts()[0];
39+
Endpointdns =settings.getHosts()[0];
4040

41-
returnwithServerTags(dns.getAddress().toString(),String.valueOf(dns.getPort()));
41+
returnwithServerTags(dns.getHost(),String.valueOf(dns.getPort()));
4242
}
4343

4444
privateBuilderwithServerTags(Stringaddress,Stringport) {

‎src/main/java/io/kurrent/dbclient/ConnectionSettingsBuilder.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public class ConnectionSettingsBuilder {
2929
privateboolean_tlsVerifyCert =true;
3030
privateUserCredentials_defaultCredentials;
3131
privateClientCertificate_defaultClientCertificate;
32-
privateLinkedList<InetSocketAddress>_hosts =newLinkedList<>();
32+
privateLinkedList<Endpoint>_hosts =newLinkedList<>();
3333
privatelong_keepAliveTimeout =Consts.DEFAULT_KEEP_ALIVE_TIMEOUT_IN_MS;
3434
privatelong_keepAliveInterval =Consts.DEFAULT_KEEP_ALIVE_INTERVAL_IN_MS;
3535
privateLong_defaultDeadline =null;
@@ -54,7 +54,7 @@ public KurrentDBClientSettings buildConnectionSettings() {
5454
_tlsVerifyCert,
5555
_defaultCredentials,
5656
_defaultClientCertificate,
57-
_hosts.toArray(newInetSocketAddress[0]),
57+
_hosts.toArray(newEndpoint[0]),
5858
_keepAliveTimeout,
5959
_keepAliveInterval,
6060
_defaultDeadline,
@@ -155,14 +155,15 @@ public ConnectionSettingsBuilder defaultClientCertificate(ClientCertificate defa
155155
* Adds an endpoint the client will use to connect.
156156
*/
157157
publicConnectionSettingsBuilderaddHost(Stringhost,intport) {
158-
returnaddHost(newInetSocketAddress(host,port));
158+
this._hosts.add(newEndpoint(host,port));
159+
returnthis;
159160
}
160161

161162
/**
162163
* Adds an endpoint the client will use to connect.
163164
*/
164165
publicConnectionSettingsBuilderaddHost(InetSocketAddresshost) {
165-
this._hosts.push(host);
166+
this._hosts.push(newEndpoint(host.getHostName(),host.getPort()));
166167
returnthis;
167168
}
168169

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
packageio.kurrent.dbclient;
2+
3+
publicclassEndpoint {
4+
privatefinalStringhost;
5+
privatefinalintport;
6+
7+
publicEndpoint(Stringhost,intport) {
8+
this.host =host;
9+
this.port =port;
10+
}
11+
12+
publicStringgetHost() {
13+
returnhost;
14+
}
15+
16+
publicintgetPort() {
17+
returnport;
18+
}
19+
}

‎src/main/java/io/kurrent/dbclient/KurrentDBClientSettings.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public class KurrentDBClientSettings {
3434
privatefinalbooleantlsVerifyCert;
3535
privatefinalUserCredentialsdefaultCredentials;
3636
privatefinalClientCertificatedefaultClientCertificate;
37-
privatefinalInetSocketAddress[]hosts;
37+
privatefinalEndpoint[]hosts;
3838
privatefinallongkeepAliveTimeout;
3939
privatefinallongkeepAliveInterval;
4040
privatefinalLongdefaultDeadline;
@@ -117,7 +117,7 @@ public ClientCertificate getDefaultClientCertificate() {
117117
* The list of endpoints that the client uses to connect.
118118
* @return hosts to connect to.
119119
*/
120-
publicInetSocketAddress[]getHosts() {
120+
publicEndpoint[]getHosts() {
121121
returnhosts;
122122
}
123123

@@ -177,7 +177,7 @@ public String getTlsCaFile() {
177177
booleantlsVerifyCert,
178178
UserCredentialsdefaultCredentials,
179179
ClientCertificatedefaultClientCertificate,
180-
InetSocketAddress[]hosts,
180+
Endpoint[]hosts,
181181
longkeepAliveTimeout,
182182
longkeepAliveInterval,
183183
LongdefaultDeadline,

‎src/main/java/io/kurrent/dbclient/SingleNodeDiscovery.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@
44
importjava.util.concurrent.CompletableFuture;
55

66
classSingleNodeDiscoveryimplementsDiscovery {
7-
privatefinalInetSocketAddressendpoint;
7+
privatefinalEndpointendpoint;
88

9-
SingleNodeDiscovery(InetSocketAddressendpoint) {
9+
SingleNodeDiscovery(Endpointendpoint) {
1010
this.endpoint =endpoint;
1111
}
1212

1313
@Override
1414
publicCompletableFuture<Void>run(ConnectionStatestate) {
15-
returnCompletableFuture.runAsync(() ->state.connect(endpoint));
15+
returnCompletableFuture.runAsync(() ->state.connect(newInetSocketAddress(this.endpoint.getHost(),this.endpoint.getPort())));
1616
}
1717
}
Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,20 @@
11
packageio.kurrent.dbclient.resolution;
22

3+
importio.kurrent.dbclient.Endpoint;
4+
35
importjava.net.InetSocketAddress;
46
importjava.util.Collections;
57
importjava.util.List;
68

79
publicclassDeferredNodeResolutionimplementsNodeResolution {
8-
privatefinalInetSocketAddressaddress;
10+
privatefinalEndpointaddress;
911

10-
publicDeferredNodeResolution(InetSocketAddressaddress) {
12+
publicDeferredNodeResolution(Endpointaddress) {
1113
this.address =address;
1214
}
1315

1416
@Override
1517
publicList<InetSocketAddress>resolve() {
16-
returnCollections.singletonList(address);
18+
returnCollections.singletonList(newInetSocketAddress(address.getHost(),address.getPort()));
1719
}
1820
}

‎src/main/java/io/kurrent/dbclient/resolution/DeprecatedNodeResolution.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
packageio.kurrent.dbclient.resolution;
22

3+
importio.kurrent.dbclient.Endpoint;
4+
35
importjava.net.InetAddress;
46
importjava.net.InetSocketAddress;
57
importjava.net.UnknownHostException;
@@ -8,16 +10,16 @@
810
importjava.util.stream.Collectors;
911

1012
publicclassDeprecatedNodeResolutionimplementsNodeResolution {
11-
privatefinalInetSocketAddressaddress;
13+
privatefinalEndpointaddress;
1214

13-
publicDeprecatedNodeResolution(InetSocketAddressaddress) {
15+
publicDeprecatedNodeResolution(Endpointaddress) {
1416
this.address =address;
1517
}
1618

1719
@Override
1820
publicList<InetSocketAddress>resolve() {
1921
try {
20-
returnArrays.stream(InetAddress.getAllByName(address.getHostName()))
22+
returnArrays.stream(InetAddress.getAllByName(address.getHost()))
2123
.map(addr ->newInetSocketAddress(addr,address.getPort()))
2224
.collect(Collectors.toList());
2325
}catch (UnknownHostExceptione) {
Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,26 @@
11
packageio.kurrent.dbclient.resolution;
22

3+
importio.kurrent.dbclient.Endpoint;
4+
35
importjava.net.InetSocketAddress;
6+
importjava.util.ArrayList;
47
importjava.util.Arrays;
58
importjava.util.List;
69

710
publicclassFixedSeedsNodeResolutionimplementsNodeResolution {
8-
privatefinalInetSocketAddress[]seeds;
11+
privatefinalEndpoint[]seeds;
912

10-
publicFixedSeedsNodeResolution(InetSocketAddress[]seeds) {
13+
publicFixedSeedsNodeResolution(Endpoint[]seeds) {
1114
this.seeds =seeds;
1215
}
1316

1417
@Override
1518
publicList<InetSocketAddress>resolve() {
16-
returnArrays.asList(seeds);
19+
List<InetSocketAddress>addresses =newArrayList<>(seeds.length);
20+
21+
for (Endpointseed :seeds)
22+
addresses.add(newInetSocketAddress(seed.getHost(),seed.getPort()));
23+
24+
returnaddresses;
1725
}
1826
}

‎src/test/java/io/kurrent/dbclient/misc/ParseValidConnectionStringTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ public void assertEquals(KurrentDBClientSettings settings, KurrentDBClientSettin
145145

146146
Assertions.assertEquals(settings.getHosts().length,other.getHosts().length);
147147
IntStream.range(0,settings.getHosts().length).forEach((i) -> {
148-
Assertions.assertEquals(settings.getHosts()[i].getHostName(),other.getHosts()[i].getHostName());
148+
Assertions.assertEquals(settings.getHosts()[i].getHost(),other.getHosts()[i].getHost());
149149
Assertions.assertEquals(settings.getHosts()[i].getPort(),other.getHosts()[i].getPort());
150150
});
151151
}
@@ -227,7 +227,7 @@ private KurrentDBClientSettings parseJson(String input) throws JsonProcessingExc
227227
}
228228

229229
tree.get("hosts").elements().forEachRemaining((host) -> {
230-
builder.addHost(newInetSocketAddress(host.get("address").asText(),host.get("port").asInt()));
230+
builder.addHost(host.get("address").asText(),host.get("port").asInt());
231231
});
232232

233233
if (tree.get("features") !=null) {

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp