summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--synapse/federation/transaction_queue.py7
1 files 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, )