I want to use distributed search with some search components that I would like to execute only on the main server, not on the shards, because they reference some large in-memory lookup tables. After the search components get done processing the orignal query, the query may contain SpanNearQueries and DisjunctionMaxQueries. I'd like to send that query to the shards, not the original query.
I've come up with the following idea for doing this. Would people please comment on this idea or suggest a better alternative? * Subclass QueryComponent to base64 encode the serialized form of the query and send that in place of the original query. * set the queryParser on the shard servers to a custom class that unencodes and deserializes the encoded query and returns it. Thoughts on this approach, or is there a better one? Thanks, -dallan