lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hoss Man (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SOLR-2894) Implement distributed pivot faceting
Date Fri, 16 May 2014 10:37:04 GMT

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

Hoss Man commented on SOLR-2894:
--------------------------------

bq. I've done the work on the MinCount and simplified the logic and made it a fair bit easier
to read and fixed the issue with pivot facets. The example you showed with the second query
failing to return results has been rectified.

awesome.

bq. What under the covers is used to make _fpt_2 match up to fpt=2 ? The one-to-many relation
alters my understanding of how this works.

I haven't been getting much sleep lately, so forgive me if i'm misunderstanding your question
or if my answer is obvious giberish:  I think what i had in mind before was just a few lines
of new code in the pivot-refinement logic that runs on the shards to construct a param name
for hte top levle multi-valued param using the numeric id, that the pivot could would lookup
directly instead of relying on local param variable dereferencing -- which as mentioned, doesn't
support any sort of 1-to-many variable refs.

(i don't have the patch in front of me in an editor, so i'll make up variable names and do
this mostly in psuedo-code)...

{code}
SolrParams reqParams = req.getParams()
String[] allPivots = reqParams.getParams("facet.pivot")
for (String pivot : allPivots) {
  SolrParams localParams = parseLocalParams(pivot)
  String refine_id = localParams.get("fpt")
  if (refine_id == null) {
    // TODO: not a refinement ... do full pivoting
  } else {
    String[] refinements = reqParams.getParams("_fpt_" + refine_id)
    for (String r : refinements) {
      // TODO: compute the refinement count for "r" relative to the current "pivot"
    }
  }
}
{code}

...does that make sense?

> Implement distributed pivot faceting
> ------------------------------------
>
>                 Key: SOLR-2894
>                 URL: https://issues.apache.org/jira/browse/SOLR-2894
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Erik Hatcher
>             Fix For: 4.9, 5.0
>
>         Attachments: SOLR-2894-reworked.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch,
SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch,
SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch,
SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch, SOLR-2894.patch,
SOLR-2894_cloud_test.patch, dateToObject.patch, pivot_mincount_problem.sh
>
>
> Following up on SOLR-792, pivot faceting currently only supports undistributed mode.
 Distributed pivot faceting needs to be implemented.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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


Mime
View raw message