From eabf4a0e408c54df9582698276da1c55eab2e234 Mon Sep 17 00:00:00 2001 From: Jack Robison Date: Tue, 27 Mar 2018 21:08:01 -0400 Subject: [PATCH] remove delay from udp write --- lbrynet/dht/delay.py | 21 --------------------- lbrynet/dht/protocol.py | 8 ++------ 2 files changed, 2 insertions(+), 27 deletions(-) delete mode 100644 lbrynet/dht/delay.py diff --git a/lbrynet/dht/delay.py b/lbrynet/dht/delay.py deleted file mode 100644 index 7ef26fcc6..000000000 --- a/lbrynet/dht/delay.py +++ /dev/null @@ -1,21 +0,0 @@ -class Delay(object): - maxToSendDelay = 10 ** -3 # 0.05 - minToSendDelay = 10 ** -5 # 0.01 - - def __init__(self, start=0, getTime=None): - self._next = start - if not getTime: - from time import time as getTime - self._getTime = getTime - - # TODO: explain why this logic is like it is. And add tests that - # show that it actually does what it needs to do. - def __call__(self): - ts = self._getTime() - if ts >= self._next: - delay = self.minToSendDelay - self._next = ts + self.minToSendDelay - else: - delay = (self._next - ts) + self.maxToSendDelay - self._next += self.maxToSendDelay - return delay diff --git a/lbrynet/dht/protocol.py b/lbrynet/dht/protocol.py index 629bb070c..f9e68b515 100644 --- a/lbrynet/dht/protocol.py +++ b/lbrynet/dht/protocol.py @@ -11,7 +11,6 @@ import msgtypes import msgformat from contact import Contact from error import BUILTIN_EXCEPTIONS, UnknownRemoteException, TimeoutError -from delay import Delay log = logging.getLogger(__name__) @@ -28,7 +27,6 @@ class KademliaProtocol(protocol.DatagramProtocol): self._sentMessages = {} self._partialMessages = {} self._partialMessagesProgress = {} - self._delay = Delay(0, self._node.clock.seconds) def sendRPC(self, contact, method, args, rawResponse=False): """ Sends an RPC to the specified contact @@ -208,11 +206,9 @@ class KademliaProtocol(protocol.DatagramProtocol): def _scheduleSendNext(self, txData, address): """Schedule the sending of the next UDP packet """ - delay = self._delay() - key = object() - delayed_call, _ = self._node.reactor_callLater(delay, self._write_and_remove, key, txData, address) + delayed_call, _ = self._node.reactor_callLater(0, self._write, txData, address) - def _write_and_remove(self, key, txData, address): + def _write(self, txData, address): if self.transport: try: self.transport.write(txData, address)