summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2015-12-11 11:40:23 +0000
committerErik Johnston <erik@matrix.org>2015-12-11 11:40:23 +0000
commitd9a5c56930c22b02268f5deca4df84eba345ec2c (patch)
tree7a4b184b793021e96b8897a683503e43a6749118 /synapse/handlers
parentUse more efficient query form (diff)
downloadsynapse-d9a5c56930c22b02268f5deca4df84eba345ec2c.tar.xz
Include approximate count of search results
Diffstat (limited to 'synapse/handlers')
-rw-r--r--synapse/handlers/search.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/handlers/search.py b/synapse/handlers/search.py
index bc79564287..99ef56871c 100644
--- a/synapse/handlers/search.py
+++ b/synapse/handlers/search.py
@@ -152,11 +152,15 @@ class SearchHandler(BaseHandler):
 
         highlights = set()
 
+        count = None
+
         if order_by == "rank":
             search_result = yield self.store.search_msgs(
                 room_ids, search_term, keys
             )
 
+            count = search_result["count"]
+
             if search_result["highlights"]:
                 highlights.update(search_result["highlights"])
 
@@ -207,6 +211,8 @@ class SearchHandler(BaseHandler):
                 if search_result["highlights"]:
                     highlights.update(search_result["highlights"])
 
+                count = search_result["count"]
+
                 results = search_result["results"]
 
                 results_map = {r["event"].event_id: r for r in results}
@@ -359,7 +365,7 @@ class SearchHandler(BaseHandler):
 
         rooms_cat_res = {
             "results": results,
-            "count": len(results),
+            "count": count,
             "highlights": list(highlights),
         }