Skip to content

Commit 40cd55a

Browse files
committed
feat(net): set relay node flag
1 parent 712dab6 commit 40cd55a

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

framework/src/main/java/org/tron/core/net/peer/PeerConnection.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.net.InetSocketAddress;
88
import java.util.Deque;
99
import java.util.HashSet;
10+
import java.util.List;
1011
import java.util.Locale;
1112
import java.util.Map;
1213
import java.util.Set;
@@ -28,6 +29,7 @@
2829
import org.tron.core.Constant;
2930
import org.tron.core.capsule.BlockCapsule.BlockId;
3031
import org.tron.core.config.Parameter.NetConstants;
32+
import org.tron.core.config.args.Args;
3133
import org.tron.core.metrics.MetricsKey;
3234
import org.tron.core.metrics.MetricsUtil;
3335
import org.tron.core.net.TronNetDelegate;
@@ -50,6 +52,8 @@
5052
@Scope("prototype")
5153
public class PeerConnection {
5254

55+
private static List<InetSocketAddress> relayNodes = Args.getInstance().getFastForwardNodes();
56+
5357
@Getter
5458
private PeerStatistics peerStatistics = new PeerStatistics();
5559

@@ -61,7 +65,7 @@ public class PeerConnection {
6165

6266
@Getter
6367
@Setter
64-
private boolean isRelayPeer;
68+
private volatile boolean isRelayPeer;
6569

6670
@Getter
6771
@Setter
@@ -143,6 +147,9 @@ public class PeerConnection {
143147

144148
public void setChannel(Channel channel) {
145149
this.channel = channel;
150+
if (relayNodes.contains(channel.getInetSocketAddress())) {
151+
this.isRelayPeer = true;
152+
}
146153
this.nodeStatistics = TronStatsManager.getNodeStatistics(channel.getInetAddress());
147154
}
148155

0 commit comments

Comments
 (0)