Skip to content

Commit 77e8552

Browse files
committed
Added exposeAddress TransportConfig setting
1 parent c540c88 commit 77e8552

File tree

5 files changed

+16
-3
lines changed

5 files changed

+16
-3
lines changed

cluster/src/main/java/io/scalecube/cluster/fdetector/FailureDetectorImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import reactor.core.publisher.Sinks;
2828
import reactor.core.scheduler.Scheduler;
2929

30+
@SuppressWarnings({"FieldCanBeLocal", "unused"})
3031
public final class FailureDetectorImpl implements FailureDetector {
3132

3233
private static final Logger LOGGER = LoggerFactory.getLogger(FailureDetector.class);

cluster/src/main/java/io/scalecube/cluster/gossip/GossipProtocolImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import reactor.core.publisher.Sinks;
3131
import reactor.core.scheduler.Scheduler;
3232

33+
@SuppressWarnings({"FieldCanBeLocal", "unused"})
3334
public final class GossipProtocolImpl implements GossipProtocol {
3435

3536
private static final Logger LOGGER = LoggerFactory.getLogger(GossipProtocol.class);

cluster/src/main/java/io/scalecube/cluster/membership/MembershipProtocolImpl.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,7 @@ private void doSync() {
349349

350350
Message message = prepareSyncDataMsg(SYNC, null);
351351
LOGGER.debug("[{}][doSync] Send Sync to {}", localMember, addresses);
352-
send(transport, addresses, message)
352+
send(transport, addresses, 0, message)
353353
.subscribe(
354354
null,
355355
ex ->
@@ -889,4 +889,15 @@ private Mono<Void> spreadMembershipGossip(MembershipRecord record) {
889889
.then();
890890
});
891891
}
892+
893+
private static Mono<Void> send(
894+
Transport transport, List<Address> addresses, int currentIndex, Message request) {
895+
if (currentIndex >= addresses.size()) {
896+
return Mono.error(new RuntimeException("All addresses have been tried and failed"));
897+
}
898+
899+
return transport
900+
.send(addresses.get(currentIndex), request)
901+
.onErrorResume(th -> send(transport, addresses, currentIndex + 1, request));
902+
}
892903
}

cluster/src/test/java/io/scalecube/cluster/gossip/GossipDelayTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void testMessageDelayMoreThanGossipSweepTime() throws InterruptedExceptio
5757
gossipProtocol3.listen().subscribe(message -> protocol3GossipCounter.incrementAndGet());
5858

5959
for (int i = 0; i < 3; i++) {
60-
final Member member = gossipProtocol1.getMember();
60+
final Member member = BaseTest.getField(gossipProtocol1, "localMember");
6161
gossipProtocol1
6262
.spread(Message.builder().sender(member).data("message: " + i).build())
6363
.subscribe();

cluster/src/test/java/io/scalecube/cluster/gossip/GossipProtocolTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ void testGossipProtocol(int membersNum, int lossPercent, int meanDelay) throws E
148148
// Spread gossip, measure and verify delivery metrics
149149
long start = System.currentTimeMillis();
150150
final GossipProtocolImpl gossipProtocol = gossipProtocols.get(0);
151-
final Member member = gossipProtocol.getMember();
151+
final Member member = BaseTest.getField(gossipProtocol, "localMember");
152152
gossipProtocol.spread(Message.builder().sender(member).data(gossipData).build()).subscribe();
153153
latch.await(2 * gossipTimeout, TimeUnit.MILLISECONDS); // Await for double gossip timeout
154154
disseminationTime = System.currentTimeMillis() - start;

0 commit comments

Comments
 (0)