cache search results to avoid server request