From 000d2309019a2001ec32214d512a3933dc3f885e Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Sun, 24 Feb 2019 23:19:37 +0000 Subject: fix edu batching hackery --- synapse/federation/transaction_queue.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/synapse/federation/transaction_queue.py b/synapse/federation/transaction_queue.py index 18e4d6575b..074dae12db 100644 --- a/synapse/federation/transaction_queue.py +++ b/synapse/federation/transaction_queue.py @@ -389,15 +389,18 @@ class TransactionQueue(object): else: self.pending_edus_by_dest.setdefault(destination, []).append(edu) + if destination not in self.edu_tx_time_by_dest: + txtime = self.clock.time() + EDU_BATCH_TIME * 1000 + self.edu_tx_time_by_dest[destination] = txtime + if destination in self.edu_tx_task_by_dest: # we already have a job queued to send EDUs to this destination return def send_edus(): del self.edu_tx_task_by_dest[destination] - self._send_new_transaction(destination) + self._attempt_new_transaction(destination) - self.edu_tx_time_by_dest = self.clock.time() + EDU_BATCH_TIME * 1000 self.edu_tx_task_by_dest[destination] = self.clock.call_later( EDU_BATCH_TIME, send_edus, ) -- cgit 1.5.1