forked from Qortal/qortal
Fix Controller's processing of HEIGHT_V2 to update all peers with same ID
This commit is contained in:
parent
bdfbea3a53
commit
ad827ae01d
@ -77,6 +77,7 @@ public class Controller extends Thread {
|
||||
System.setProperty("java.util.logging.manager", "org.apache.logging.log4j.jul.LogManager");
|
||||
}
|
||||
|
||||
/** Controller start-up time (ms) taken using <tt>System.currentTimeMillis()</tt>, NOT <tt>NTP.getTime()</tt>. */
|
||||
public static final long startTime = System.currentTimeMillis();
|
||||
public static final String VERSION_PREFIX = "qora-core-";
|
||||
|
||||
@ -545,10 +546,10 @@ public class Controller extends Thread {
|
||||
ReentrantLock peerLock = connectedPeer.getPeerLock();
|
||||
peerLock.lock();
|
||||
try {
|
||||
peer.setLastHeight(heightV2Message.getHeight());
|
||||
peer.setLastBlockSignature(heightV2Message.getSignature());
|
||||
peer.setLastBlockTimestamp(heightV2Message.getTimestamp());
|
||||
peer.setLastBlockGenerator(heightV2Message.getGenerator());
|
||||
connectedPeer.setLastHeight(heightV2Message.getHeight());
|
||||
connectedPeer.setLastBlockSignature(heightV2Message.getSignature());
|
||||
connectedPeer.setLastBlockTimestamp(heightV2Message.getTimestamp());
|
||||
connectedPeer.setLastBlockGenerator(heightV2Message.getGenerator());
|
||||
} finally {
|
||||
peerLock.unlock();
|
||||
}
|
||||
|
@ -94,6 +94,7 @@ public class Network extends Thread {
|
||||
private ExecutorService peerExecutor;
|
||||
private ExecutorService mergePeersExecutor;
|
||||
private ExecutorService broadcastExecutor;
|
||||
/** Timestamp (ms) for next general info broadcast to all connected peers. Based on <tt>System.currentTimeMillis()</tt> NOT <tt>NTP.getTime()</tt>. */
|
||||
private long nextBroadcast;
|
||||
private Lock mergePeersLock;
|
||||
|
||||
|
@ -461,9 +461,9 @@ public class Peer extends Thread {
|
||||
PingMessage pingMessage = new PingMessage();
|
||||
|
||||
try {
|
||||
long before = System.currentTimeMillis();
|
||||
final long before = System.currentTimeMillis();
|
||||
Message message = peer.getResponse(pingMessage);
|
||||
long after = System.currentTimeMillis();
|
||||
final long after = System.currentTimeMillis();
|
||||
|
||||
if (message == null || message.getType() != MessageType.PING)
|
||||
peer.disconnect("no ping received");
|
||||
|
Loading…
x
Reference in New Issue
Block a user