You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Stanislav Livotov (Jira)" <ji...@apache.org> on 2019/08/26 17:41:00 UTC

[jira] [Updated] (SOLR-13720) Impossible to create effective ToParenBlockJoinQuery in custom QParser

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

Stanislav Livotov updated SOLR-13720:
-------------------------------------
    Description: 
According to Solr [ducumentation|#SolrPlugins-QParserPlugin]]  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 

  was:
According to Solr [ducumentation|[https://cwiki.apache.org/confluence/display/solr/SolrPlugins#SolrPlugins-QParserPlugin]]  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 methodsin plugin code and adding it it 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 


> Impossible to create effective ToParenBlockJoinQuery in custom QParser
> ----------------------------------------------------------------------
>
>                 Key: SOLR-13720
>                 URL: https://issues.apache.org/jira/browse/SOLR-13720
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>            Reporter: Stanislav Livotov
>            Priority: Major
>
> According to Solr [ducumentation|#SolrPlugins-QParserPlugin]]  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 



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

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