summary refs log tree commit diff
path: root/synapse/storage/registration.py
diff options
context:
space:
mode:
authorDaniel Wagner-Hall <dawagner@gmail.com>2015-09-22 13:59:37 +0100
committerDaniel Wagner-Hall <dawagner@gmail.com>2015-09-22 13:59:37 +0100
commitf17aadd1b52463b51b8532cda074094ff2d0339b (patch)
tree2324815f78ea2fe5eebe29472ca5d169dd274953 /synapse/storage/registration.py
parentMerge pull request #276 from matrix-org/markjh/history_for_rooms_that_have_be... (diff)
parentAdd some docstrings (diff)
downloadsynapse-f17aadd1b52463b51b8532cda074094ff2d0339b.tar.xz
Merge pull request #285 from matrix-org/daniel/metrics-2
Implement configurable stats reporting
Diffstat (limited to 'synapse/storage/registration.py')
-rw-r--r--synapse/storage/registration.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/synapse/storage/registration.py b/synapse/storage/registration.py
index c9ceb132ae..b454dd5b3a 100644
--- a/synapse/storage/registration.py
+++ b/synapse/storage/registration.py
@@ -289,3 +289,16 @@ class RegistrationStore(SQLBaseStore):
         if ret:
             defer.returnValue(ret['user_id'])
         defer.returnValue(None)
+
+    @defer.inlineCallbacks
+    def count_all_users(self):
+        """Counts all users registered on the homeserver."""
+        def _count_users(txn):
+            txn.execute("SELECT COUNT(*) AS users FROM users")
+            rows = self.cursor_to_dict(txn)
+            if rows:
+                return rows[0]["users"]
+            return 0
+
+        ret = yield self.runInteraction("count_users", _count_users)
+        defer.returnValue(ret)