Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-13720

Impossible to create effective ToParenBlockJoinQuery in custom QParser

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 8.2
    • Fix Version/s: 8.3
    • Component/s: query parsers
    • Labels:

      Description

      According to Solr documentation  QParser is treated as a legal plugin.

       

      However, it is impossible to create an effective ToParentBlockJoin query without copy-pasting(BitDocIdSetFilterWrapper class and getCachedFilter method from BlockJoinParentQParser) or dirty hacks(like creating org.apache.solr.search.join package with some accessor method to package-private methods in plugin code and adding it in WEB-INF/lib directory in order to be loaded by the same ClassLoader).

      I don't see a truly clean way how to fix it, but at least we can help custom plugin developers to create it a little bit easier by making BlockJoinParentQParser#getCachedFilter public and BlockJoinParentQParser#BitDocIdSetFilterWrapper and providing getter for BitDocIdSetFilterWrapper#filter. 

       

       

      In order to create 

        Attachments

        1. SOLR-13720.patch
          6 kB
          Stanislav Livotov

          Activity

            People

            • Assignee:
              mkhl Mikhail Khludnev
              Reporter:
              slivotov Stanislav Livotov
            • Votes:
              11 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: