diff --git a/synapse/push/pusherpool.py b/synapse/push/pusherpool.py
index 571d8b2f822b6d631b634cd722c708f83676b492..2e58f70ffac703a41f8613a51119c7355598ed14 100644
--- a/synapse/push/pusherpool.py
+++ b/synapse/push/pusherpool.py
@@ -19,6 +19,8 @@ from twisted.internet import defer
 from httppusher import HttpPusher
 from synapse.push import PusherConfigException
 
+from synapse.util.async import run_on_reactor
+
 import logging
 
 logger = logging.getLogger(__name__)
@@ -48,6 +50,7 @@ class PusherPool:
 
     @defer.inlineCallbacks
     def start(self):
+        yield run_on_reactor()
         pushers = yield self.store.get_all_pushers()
         self._start_pushers(pushers)