Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-5743 Faceting with BlockJoin support
  3. SOLR-8643

remove BlockJoinFacetComponent; was: UnsupportedOperationException in FakeScorer

    Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 6.2, 7.0
    • Component/s: faceting
    • Labels:
      None

      Description

      TODO

      Let's remove BlockJoinFacetComponent because it doesn't work with BooleanScorer aka term-at-time. It's advised to use BlockJoinDocSetFacetComponent instead.

      Original Description

      query like this:

      http://localhost:8983/solr/core0/bjqfacet?q=*:*%20{!parent+which%3Dtype_s:parent}type_s:child&facet=true&child.facet.field=SIZE_s
      

      throws:

      java.lang.UnsupportedOperationException
              at org.apache.lucene.search.FakeScorer.getChildren(FakeScorer.java:60)
              at org.apache.solr.search.join.BlockJoinFacetCollector.getToParentScorer(BlockJoinFacetCollector.java:66)
              at org.apache.solr.search.join.BlockJoinFacetCollector.setScorer(BlockJoinFacetCollector.java:55)
              at org.apache.lucene.search.BooleanScorer.score(BooleanScorer.java:319)
              at org.apache.lucene.search.BulkScorer.score(BulkScorer.java:39)
              at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:821)
              at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:535)
              at org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:207)
      

      Not that this query makes much sence, but don't expect naked exception.

      This only happens when using BlockJoinFacetComponent - BlockJoinDocSetFacetComponent seems to do OK.

      1. SOLR-8643.patch
        22 kB
        Mikhail Khludnev

        Issue Links

          Activity

          Hide
          mkhludnev Mikhail Khludnev added a comment -

          the patch makes BlockJoinFacetComponent just an empty subclass of BlockJoinDocSetFacetComponent because the former couldn't handle pure disjunction queries. The purpose of this trick is to avoid config changes for users.

          Show
          mkhludnev Mikhail Khludnev added a comment - the patch makes BlockJoinFacetComponent just an empty subclass of BlockJoinDocSetFacetComponent because the former couldn't handle pure disjunction queries. The purpose of this trick is to avoid config changes for users.
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 915e6e33b21cdceccd0c7dccdd907ab5c8708fc2 in lucene-solr's branch refs/heads/master from Mikhail Khludnev
          [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=915e6e3 ]

          SOLR-8643: made BlockJoinFacetComponent just a shortcut for BlockJoinDocSetFacetComponent, which supports pure disjunctions

          Show
          jira-bot ASF subversion and git services added a comment - Commit 915e6e33b21cdceccd0c7dccdd907ab5c8708fc2 in lucene-solr's branch refs/heads/master from Mikhail Khludnev [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=915e6e3 ] SOLR-8643 : made BlockJoinFacetComponent just a shortcut for BlockJoinDocSetFacetComponent, which supports pure disjunctions
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 15bfeb6b0c902b5b40855064788ffca21f2d1275 in lucene-solr's branch refs/heads/branch_6x from Mikhail Khludnev
          [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=15bfeb6 ]

          SOLR-8643: made BlockJoinFacetComponent just a shortcut for BlockJoinDocSetFacetComponent, which supports pure disjunctions

          Show
          jira-bot ASF subversion and git services added a comment - Commit 15bfeb6b0c902b5b40855064788ffca21f2d1275 in lucene-solr's branch refs/heads/branch_6x from Mikhail Khludnev [ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=15bfeb6 ] SOLR-8643 : made BlockJoinFacetComponent just a shortcut for BlockJoinDocSetFacetComponent, which supports pure disjunctions
          Show
          mkhludnev Mikhail Khludnev added a comment - followup CHANGES.txt fix https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;a=commit;h=3e64a9759736bf907cb1f768c18f1c3cdc211eff
          Hide
          mikemccand Michael McCandless added a comment -

          Bulk close resolved issues after 6.2.0 release.

          Show
          mikemccand Michael McCandless added a comment - Bulk close resolved issues after 6.2.0 release.

            People

            • Assignee:
              mkhludnev Mikhail Khludnev
              Reporter:
              ilyak Ilya Kasnacheev
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development