diff --git a/ietf/doc/views_search.py b/ietf/doc/views_search.py index c0172f4e6..c500e702e 100644 --- a/ietf/doc/views_search.py +++ b/ietf/doc/views_search.py @@ -65,6 +65,7 @@ from ietf.name.models import DocTagName, DocTypeName, StreamName from ietf.person.models import Person from ietf.person.utils import get_active_ads from ietf.utils.draft_search import normalize_draftname +from ietf.utils.log import log from ietf.doc.utils_search import prepare_document_table @@ -222,12 +223,14 @@ def search(request): return HttpResponseBadRequest("form not valid: %s" % form.errors) cache_key = get_search_cache_key(get_params) - results = cache.get(cache_key) - if not results: + cached_val = cache.get(cache_key) + if cached_val: + [results, meta] = cached_val + else: results = retrieve_search_results(form) - cache.set(cache_key, results) - - results, meta = prepare_document_table(request, results, get_params) + results, meta = prepare_document_table(request, results, get_params) + cache.set(cache_key, [results, meta]) # for settings.CACHE_MIDDLEWARE_SECONDS + log(f"Search results computed for {get_params}") meta['searching'] = True else: form = SearchForm()