aboutsummaryrefslogtreecommitdiffhomepage
path: root/bindings/python/setup.py
diff options
context:
space:
mode:
authorGravatar Austin Clements <amdragon@MIT.EDU>2010-11-17 14:28:26 -0500
committerGravatar Carl Worth <cworth@cworth.org>2010-12-07 16:40:05 -0800
commitb3caef1f0659dac8183441357c8fee500a940889 (patch)
treec8da072401a13637e0ef40f432372b15367cde3d /bindings/python/setup.py
parente2556542325a74bb0284ae21764c58249dd7bef7 (diff)
Optimize thread search using matched docid sets.
This reduces thread search's 1+2t Xapian queries (where t is the number of matched threads) to 1+t queries and constructs exactly one notmuch_message_t for each message instead of 2 to 3. notmuch_query_search_threads eagerly fetches the docids of all messages matching the user query instead of lazily constructing message objects and fetching thread ID's from term lists. _notmuch_thread_create takes a seed docid and the set of all matched docids and uses a single Xapian query to expand this docid to its containing thread, using the matched docid set to determine which messages in the thread match the user query instead of using a second Xapian query. This reduces the amount of time required to load my inbox from 4.523 seconds to 3.025 seconds (1.5X faster).
Diffstat (limited to 'bindings/python/setup.py')
0 files changed, 0 insertions, 0 deletions