[ 
https://issues.apache.org/jira/browse/SOLR-6351?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hoss Man updated SOLR-6351:
---------------------------
    Attachment: SOLR-6351.patch


I started out focusing on fixing the +/-Infinity issue i mentioned yesterday, 
but while working on beefing up the asserts for this in 
DistributedFacetPivotSmallTest i realized the PivotField.getStatsInfos() method 
was returning List<FieldStatsInfo> which didn't really make a lot of sense - so 
i changed that to return Map<String,FieldStatsInfo> and tweaked the method name 
(consistent with how top level stats method works/is-named) and updated all of 
the affected code/tests as well.

{panel:title=summay of patch changes}

* StatsValuesFactory
** fixed NumericStatsValues so that min/max are 'null' when no values 
accumulated

* changed PivotField.getStatsInfos() to getFieldStatsInfos() and made it return 
a map -- updated the following classes...
** PivotField
** QueryResponse
** SolrExampleTests
** TestCloudPivotFacet
** DistributedFacetPivotSmallTest
** DistributedFacetPivotLargeTest
** DistributedFacetPivotLongTailTest
** DistributedFacetPivotSmallAdvancedTest

* DistributedFacetPivotSmallTest
** fixed some +/-Infinity assumptions based on NumericStatsValues fixes
** beefed up testing of diff data types in doTestPivotStatsFromOneShard

* FacetPivotSmallTest
** fixed some +/-Infinity assumptions based on NumericStatsValues fixes

{panel}



> Let Stats Hang off of Pivots (via 'tag')
> ----------------------------------------
>
>                 Key: SOLR-6351
>                 URL: https://issues.apache.org/jira/browse/SOLR-6351
>             Project: Solr
>          Issue Type: Sub-task
>            Reporter: Hoss Man
>         Attachments: SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch, 
> SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch, 
> SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch, 
> SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch, SOLR-6351.patch
>
>
> he goal here is basically flip the notion of "stats.facet" on it's head, so 
> that instead of asking the stats component to also do some faceting 
> (something that's never worked well with the variety of field types and has 
> never worked in distributed mode) we instead ask the PivotFacet code to 
> compute some stats X for each leaf in a pivot.  We'll do this with the 
> existing {{stats.field}} params, but we'll leverage the {{tag}} local param 
> of the {{stats.field}} instances to be able to associate which stats we want 
> hanging off of which {{facet.pivot}}
> Example...
> {noformat}
> facet.pivot={!stats=s1}category,manufacturer
> stats.field={!key=avg_price tag=s1 mean=true}price
> stats.field={!tag=s1 min=true max=true}user_rating
> {noformat}
> ...with the request above, in addition to computing the min/max user_rating 
> and mean price (labeled "avg_price") over the entire result set, the 
> PivotFacet component will also include those stats for every node of the tree 
> it builds up when generating a pivot of the fields "category,manufacturer"



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to