summary refs log tree commit diff
diff options
context:
space:
mode:
authorKegan Dougal <kegan@matrix.org>2015-03-26 10:11:52 +0000
committerKegan Dougal <kegan@matrix.org>2015-03-26 10:11:52 +0000
commit32206dde3f8dd59412490cd6f590304438c900f4 (patch)
tree7e842d9ff6d7581a63425ee076ec5d5240c12701
parentMerge branch 'develop' into application-services-txn-reliability (diff)
downloadsynapse-32206dde3f8dd59412490cd6f590304438c900f4.tar.xz
Fixes from PR comments
-rw-r--r--synapse/appservice/scheduler.py3
-rw-r--r--synapse/storage/appservice.py4
2 files changed, 4 insertions, 3 deletions
diff --git a/synapse/appservice/scheduler.py b/synapse/appservice/scheduler.py
index 3cedd479a2..59b0b1f4ac 100644
--- a/synapse/appservice/scheduler.py
+++ b/synapse/appservice/scheduler.py
@@ -112,7 +112,7 @@ class _ServiceQueuer(object):
     def _send_request(self, service, events):
         # send request and add callbacks
         d = self.txn_ctrl.send(service, events)
-        d.addCallback(self._on_request_finish)
+        d.addBoth(self._on_request_finish)
         d.addErrback(self._on_request_fail)
         self.pending_requests[service.id] = d
 
@@ -154,6 +154,7 @@ class _TransactionController(object):
                     self._start_recoverer(service)
         except Exception as e:
             logger.exception(e)
+            self._start_recoverer(service)
         # request has finished
         defer.returnValue(service)
 
diff --git a/synapse/storage/appservice.py b/synapse/storage/appservice.py
index 06b3a04afc..93304a745f 100644
--- a/synapse/storage/appservice.py
+++ b/synapse/storage/appservice.py
@@ -37,7 +37,7 @@ class ApplicationServiceStore(SQLBaseStore):
     def __init__(self, hs):
         super(ApplicationServiceStore, self).__init__(hs)
         self.services_cache = []
-        self.cache_defer = self._populate_cache()
+        self.cache_defer = self._populate_appservice_cache()
         self.cache_defer.addErrback(log_failure)
 
     @defer.inlineCallbacks
@@ -337,7 +337,7 @@ class ApplicationServiceStore(SQLBaseStore):
         return service_list
 
     @defer.inlineCallbacks
-    def _populate_cache(self):
+    def _populate_appservice_cache(self):
         """Populates the ApplicationServiceCache from the database."""
         sql = ("SELECT r.*, a.* FROM application_services AS a LEFT JOIN "
                "application_services_regex AS r ON a.id = r.as_id")