Search results cache

By caching the results of search queries, search.cgi can avoid having to repeat time-consuming CPU and disk operations needed to generate the search results. This helps search.cgi to respond very quickly in case if the same search query was done recently, as well as when the user is navigating through the pages of the same result seeing documents 11-20, 21-30, and so on.

Note: mnoGoSearch 3.3.8 introduced a new type of search result cache, which is activated using the QCache=yes parameter to DBAddr.

The new search result cache stores its data in the qcache table in the mnoGoSearch database. New search result cache implementation additionally supports the search in found feature, also often referenced to as refine your search.

Search result cache is automatically invalidated when indexer -Eblob is executed.

When checking if a previously cached search result exists for the current search query, search.cgi also verifies that all search parameters that may affect the way search query is executed match in the current and the cached queries. This guarantees that search.cgi normally returns exactly the same results, with query cache enabled or disabled. However, search.cgi does not check if any of search.htm commands have changed between the times of executions of the cached query and the current query. That means, if you change any of the commands affecting score, make sure to clear query cache.

Clearing search result cache

To clear search result cache please use TRUNCATE TABLE qcache or a similar SQL statement (depending on your database software).