[ 
https://issues.apache.org/jira/browse/SOLR-7116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14325154#comment-14325154
 ] 

Hoss Man commented on SOLR-7116:
--------------------------------

skimming the patch looks ok to me ... one point to clarify...

bq. ... furthermore, facet.field and facet.pivot have their own dedicated 
refinement requests and so a facet.field request should not have options for 
facet.pivot. ...

that's not entirely true.  The point behind a lot of the shard request logic is 
to try and _share_ requests to the shards whenever possible.  just like we 
piggy back facet facet refinement on PURPOSE_GET_FIELDS if we can find one, we 
also try to combine facet.field refinement with facet.pivot refinement if both 
are in use.

so for example, if you have a request with {{facet.field=XX&facet.pivot=YY,ZZ}} 
then you should see one request each shard with both facet.field=XX and 
facet.pivot=YY refinements requested at the same time -- then once YY has been 
refined, a second request to every shard with facet.pivot=YY,ZZ refinements. 
(ie: only 2 total refinement request to each shard, not 3)

I _think_ from looking at your patch, this should still be true? did you try 
this in your manual tests?

bq. I guess I could add a proper test for this by examining debug=track.

I've thought about trying to do whitebox tests to verify that a single cloud 
request triggers the expected shard requests, but i could never figure out a 
decent idea for how to do it w/o a lot of complex "mocking" up of solr ... if 
you've got an idea in mind, please open an issue with your thoughts.


> Facet refinement shard request should disable other faceting types
> ------------------------------------------------------------------
>
>                 Key: SOLR-7116
>                 URL: https://issues.apache.org/jira/browse/SOLR-7116
>             Project: Solr
>          Issue Type: Improvement
>          Components: faceting
>            Reporter: David Smiley
>            Assignee: David Smiley
>             Fix For: 5.1
>
>         Attachments: SOLR-7116__facet_refinement_opt.patch
>
>
> While examining FacetComponent in the process of adding the new facet.heatmap 
> faceting type, I observed that distributed shard refinement requests were 
> built by copying the existing parameters and then modifying ones pertinent to 
> facet.field or facet.pivot depending on the type of refinement requests 
> (which in turn only happens some of the time, not too often).  Those are the 
> only types of faceting that have a refinement phase.  These refinement 
> requests _should not_ have facet.query, facet.date, facet.range, 
> facet.interval, or facet.heatpmap since they don't participate in 
> refinement... and furthermore, facet.field and facet.pivot have their own 
> dedicated refinement requests and so a facet.field request _should not_ have 
> options for facet.pivot.  But this isn't taken care of, just facet.query is 
> removed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to