I resolved this issue by extending the class to SearchComponent instead of
QueryComponent. It seems that SearchComponent sits at a higher level of
abstraction than QueryComponent and is useful when you want to work on a
layer above shards.

On Wed, Mar 10, 2021 at 8:05 PM gnandre <arnoldbron...@gmail.com> wrote:

> I have a simple Solr query component that does some exact match processing
> by replacing qf and pf params in incoming search requests with new values
> that point to the fields that do not do stemming, synonymization etc.
>
> This works as expected. However in a distributed context (not using
> SolrCloud, just using shards param), although it works as expected, the
> facets counts are off.
>
> Facet counts are double of what they should be. Also, I noticed that I get
> two "response" objects in JSON response in a distributed context. Please
> note that I have already added following so that I do not get two responses
> back:
>
>   @Override
>   public void process(ResponseBuilder rb) throws IOException
>   {
>     // do nothing - needed so we don't execute the query here.
>   }
>
> This is what my prepare function looks like:
>   @Override
>   public void prepare( ResponseBuilder rb ) throws IOException
>   {
>     if (exactMatchQueryProcessor != null) {
>       exactMatchQueryProcessor.modifyForExactMatch(rb);
>     }
>   }
>

Reply via email to