From a68fe4409fcee3e189b8d1db1aa810c1a42da47f Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 29 Jul 2013 15:41:01 +0530 Subject: [PATCH] Do not search virtual fields on when searching 'all' Searching virtual fields (such as marked) ona prefix less search disables search caching. --- src/calibre/db/search.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/calibre/db/search.py b/src/calibre/db/search.py index d5a620ba58..9eeacc24b5 100644 --- a/src/calibre/db/search.py +++ b/src/calibre/db/search.py @@ -619,7 +619,10 @@ class Parser(SearchQueryParser): # {{{ if x.startswith('@'): continue if fm['search_terms'] and x != 'series_sort': - all_locs.add(x) + if x not in self.virtual_fields: + # We dont search virtual fields because if we do, search + # caching will not be used + all_locs.add(x) field_metadata[x] = fm if fm['datatype'] in {'composite', 'text', 'comments', 'series', 'enumeration'}: text_fields.add(x)