aboutsummaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2009-11-23 17:42:45 +0100
committerCarl Worth <cworth@cworth.org>2009-11-23 18:14:47 +0100
commitbc0a873b18cd77572c53369e5899134102f93e5e (patch)
treed527f00758971d4dcdd608fca1c1d260a02af1a8 /TODO
parent793cbf80495b8230e0b4de6ac609e2ca88b7dd4b (diff)
search : Extend "intial burst" optimization to return all results by chunks
This way, the user gets a steady (but bursty) stream of reults. We double the chunk size each time since each successive chunk has to redo work from all previous chunks. Of course, the overall time is thereby slower, as the price we pay for increased responsiveness. With a search returning about 17000 thread results I measured a total time of 48.8 seconds before this change and 58.4 seconds afterwards.
Diffstat (limited to 'TODO')
-rw-r--r--TODO5
1 files changed, 5 insertions, 0 deletions
diff --git a/TODO b/TODO
index 65d6c75..da8f7c9 100644
--- a/TODO
+++ b/TODO
@@ -134,6 +134,11 @@ Add support for configuring "virtual tags" which are a tuple of
(tag-name, search-specification). The database is responsible for
ensuring that the virtual tag is always consistent.
+Think about optimizing chunked searches (max-threads > 0) to avoid
+repeating work. That would be saving state from the previous chunk and
+reusing it if the next search is the next chunk with the same search
+string.
+
General
-------
Audit everything for dealing with out-of-memory (and drop xutil.c).