The Results Caching profile tool allows management of the results cache for the profile. If enabled (here), the results cache can improve search response time by caching frequently used search results: if a later query is made with the same query string parameters, it may be found in the cache, thereby saving the time needed to run the query again.
On the Results Caching profile tool page, the status of the cache manager is reported (whether it is running, and what process ID). The cache manager runs in the background, deleting old entries and refreshing the cache if requested. The size of the cache table (if it exists) is also shown, both number of entries and size in bytes. Old entries are deleted as per the current Results Caching settings (here).
Several actions can be performed on the cache, if results caching is enabled:
Clear
- Clears the results cache table. All previously
cached results will be removed. This can also be used to free up
disk space if needed.Start Refreshing
- Mark all entries for refresh. The
cache manager will then start refreshing the cache in the
background, starting with the highest-priority entries: queries
will be re-executed to ensure the cache entries reflect the latest
crawl data. This can increase load on the machine, as the cache
manager will now be executing queries (though only serially, one
at a time). Existing cache entries marked for refresh - but not
yet actually refreshed - are still otherwise valid, i.e. they may
still be used to resolve user searches.Stop Refreshing
- Mark all entries as not needing
refresh. This will stop the cache manager from executing queries
to refresh the cache, and thus may reduce machine load. The
manager will still continue to run to expire old entries, etc.Import
- Import cache queries (without results data)
from another profile, and mark for refresh. This will copy the
results cache from another profile, but since each profile's crawl
data is different, the actual search results will not be copied,
as they would be invalid. Thus, the entries will not have search
data (and cannot service requests), but will be marked for refresh
by the cache manager. This option can be used to "prime the
pump" when creating a new profile to replace an existing live
profile as the default: the existing profile's queries can be
copied over and refreshed. When the refresh is complete
(indicated by "no entries marked for refresh"), the new profile
can be made live, and will already have a largely up-to-date
cache.
Caveats: As results caching currently only takes into account the query string to differentiate requests, it should not be enabled under results authorization or other scenarios that utilize additional data (such as cookies or request headers) for search requests. The results cache is stored in the same database as the profile crawl data, so it is deleted and started anew for each New type crawl - just as the crawl data its results are based on starts anew with New type crawls. If a Refresh crawl is done that significantly changes the crawl, the cache should probably be cleared to avoid stale or out-of-date results; alternatively, the Max Cache Entry Age setting might be decreased.