Currently, if an unindexed search contains a pattern like test AND server, then the search jobs framework executes it by
Creating two separate searcher jobs, one for the pattern test, and another for server
Streaming the results back and taking a conjunction
This can be quite inefficient and use a lot of memory within the frontend service.
We're planning an update to the query language to interpret spaces as an AND between terms by default, as opposed to treating them literally. So this will result in many more unindexed AND searches. We should update searcher to just handle AND/ OR patterns directly, making the execution much more efficient.
Currently, if an unindexed search contains a pattern like
test AND server
, then the search jobs framework executes it bytest
, and another forserver
This can be quite inefficient and use a lot of memory within the frontend service.
We're planning an update to the query language to interpret spaces as an AND between terms by default, as opposed to treating them literally. So this will result in many more unindexed AND searches. We should update searcher to just handle AND/ OR patterns directly, making the execution much more efficient.
/cc @sourcegraph/search-platform