[ https://issues.apache.org/jira/browse/SOLR-2894?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Hoss Man updated SOLR-2894: --------------------------- Attachment: SOLR-2894.patch bq. By the looks of things, it looks the problem seems to be poping up when a refinement constraint in a multi-level pivot involves the empty string (and/or missing values?) Hmmm... both cases definitely seem to be problematic: * refining on values that are the empty string {{""}} * refining against the {{null}} psuedo-values when using {{facet.missing}} (Note: TestCloudPivotFacet currently doesn't even try facet.missing -- need to rememedy that in a future patch) ---- The attached patch update modifies DistributedFacetPivotLargeTest to add a new "special_s" field to a handful of docs -- some of which get the value of SPECIAL ({{final String SPECIAL = "";}} and it goes into a loop here... {code} // refine on empty string rsp = query( "q", "*:*", "rows", "0", "facet","true", "facet.limit","1", FacetParams.FACET_OVERREQUEST_RATIO, "0", // force refine FacetParams.FACET_OVERREQUEST_COUNT, "0", // force refine "facet.pivot","special_s,company_t"); {code} {noformat} [junit4] 2> 32409 T43 C21 oasc.SolrCore.execute [collection1] webapp=/po_cuf path=/select params={shard.url=[ff01::083]:33332/po_cuf|[ff01::213]:33332/po_cuf|http://127.0.0.1:37920/po_cuf&NOW=1403920234230&rows=0&isShard=true&distrib=false&wt=javabin&fpt2938=&facet.pivot.mincount=-1&facet.overrequest.count=0&q=*:*&version=2&facet.pivot={!fpt%3D2938}special_s,company_t&facet.overrequest.ratio=0&facet=true&facet.limit=1} hits=357 status=0 QTime=0 [junit4] 2> 32413 T42 C21 oasc.SolrCore.execute [collection1] webapp=/po_cuf path=/select params={shard.url=[ff01::083]:33332/po_cuf|[ff01::213]:33332/po_cuf|http://127.0.0.1:37920/po_cuf&NOW=1403920234230&rows=0&isShard=true&distrib=false&wt=javabin&fpt2939=&facet.pivot.mincount=-1&facet.overrequest.count=0&q=*:*&version=2&facet.pivot={!fpt%3D2939}special_s,company_t&facet.overrequest.ratio=0&facet=true&facet.limit=1} hits=357 status=0 QTime=0 {noformat} (Note the {{...&fpt2938=&...}} and {{...&fpt2939=&...}}) Even if you redefine SPECIAL to be some other constant (ie: {{SPECIAL = "SPECIAL";}}) the code still goes into a loop in the next call, where facet.missing is used and refinement is needed on the "missing" value... {code} // refine on empty string & facet.missing rsp = query( "q", "*:*", "fq", "-place_s:0placeholder", "rows", "0", "facet","true", "facet.limit","1", "facet.missing","true", FacetParams.FACET_OVERREQUEST_RATIO, "0", // force refine FacetParams.FACET_OVERREQUEST_COUNT, "0", // force refine "facet.pivot","special_s,company_t"); {code} {noformat} [junit4] 2> 26798 T53 C19 oasc.SolrCore.execute [collection1] webapp=/do_ path=/select params={facet.overrequest.ratio=0&wt=javabin&facet.missing=true&facet.limit=1&facet.pivot.mincount=-1&facet.pivot={!fpt%3D2151}special_s,company_t&fpt2151=null,microsoft&distrib=false&version=2&shard.url=[ff01::083]:33332/do_|[ff01::213]:33332/do_|https://127.0.0.1:36955/do_|[ff01::114]:33332/do_&facet=true&q=*:*&rows=0&fq=-place_s:0placeholder&NOW=1403920466501&isShard=true&facet.overrequest.count=0} hits=202 status=0 QTime=0 [junit4] 2> 26802 T54 C19 oasc.SolrCore.execute [collection1] webapp=/do_ path=/select params={facet.overrequest.ratio=0&wt=javabin&facet.missing=true&facet.limit=1&facet.pivot.mincount=-1&facet.pivot={!fpt%3D2153}special_s,company_t&distrib=false&version=2&shard.url=[ff01::083]:33332/do_|[ff01::213]:33332/do_|https://127.0.0.1:36955/do_|[ff01::114]:33332/do_&facet=true&q=*:*&rows=0&fpt2153=null,microsoft&fq=-place_s:0placeholder&NOW=1403920466501&isShard=true&facet.overrequest.count=0} hits=202 status=0 QTime=1 {noformat} (Note the {{...&fpt2151=null,microsoft&...}} and {{...&fpt2153=null,microsoft&...}}) ---- It looks like we need to rethink how the values are encoded into a path for the purpose of refinement so we can account for and differentiate between missing values, the empty string (0 chars), and the literal string "null" (4 chars) > Implement distributed pivot faceting > ------------------------------------ > > Key: SOLR-2894 > URL: https://issues.apache.org/jira/browse/SOLR-2894 > Project: Solr > Issue Type: Improvement > Reporter: Erik Hatcher > Assignee: Hoss Man > Fix For: 4.9, 5.0 > > Attachments: SOLR-2894-mincount-minification.patch, > 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.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-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org