From 2621e04025cf9dcd437b54143ce4d6a8672e0214 Mon Sep 17 00:00:00 2001 From: catbref Date: Fri, 21 Jun 2019 14:45:59 +0100 Subject: [PATCH] Change Peer ping interval to below that of SOCKET_TIMEOUT, used by blocking read()s --- src/main/java/org/qora/network/Peer.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/qora/network/Peer.java b/src/main/java/org/qora/network/Peer.java index 3cab08de..c4457ddd 100644 --- a/src/main/java/org/qora/network/Peer.java +++ b/src/main/java/org/qora/network/Peer.java @@ -41,10 +41,23 @@ public class Peer extends Thread { private static final Logger LOGGER = LogManager.getLogger(Peer.class); + /** Maximum time to allow connect() to remote peer to complete. (ms) */ private static final int CONNECT_TIMEOUT = 1000; // ms + + /** Maximum time to wait for a message reply to arrive from peer. (ms) */ private static final int RESPONSE_TIMEOUT = 5000; // ms - private static final int PING_INTERVAL = 20000; // ms - just under every 30s is usually ideal to keep NAT mappings refreshed + + /** + * Interval between PING messages to a peer. (ms) + *

+ * Just under every 30s is usually ideal to keep NAT mappings refreshed,
+ * BUT must be lower than {@link Peer#SOCKET_TIMEOUT}! + */ + private static final int PING_INTERVAL = 8000; // ms + + /** Maximum time a socket read() will block before closing connection due to timeout. (ms) */ private static final int SOCKET_TIMEOUT = 10000; // ms + private static final int UNSOLICITED_MESSAGE_QUEUE_CAPACITY = 10; private volatile boolean isStopping = false;