[
https://issues.apache.org/jira/browse/SOLR-9217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15958633#comment-15958633
]
Mikhail Khludnev edited comment on SOLR-9217 at 4/6/17 9:19 AM:
----------------------------------------------------------------
[~gopikannan], you can reproduce it with {{q=filter(\{!join from=id to=id
score=none}id:G*)}} that particular range query with space can be fixed with
v=$nested. Yep, the query syntax lacks of predictability.
If you set {{<filterCache showItems="100"...}} and execute that
{{filter(\{!join score=...}) you'll see
{{item_TermsQuery\{field=id}:org.apache.solr.search.SortedIntDocSet@​75fee8b0}}
entry in {{filterCache}} and this is a problem since {{TermsQuery}} enumerates
id values and it might consume a lot of heap. You can see that it's not a case
if you run classic join query without score local param.
was (Author: mkhludnev):
[~gopikannan], you can reproduce it with {{q=filter({!join from=id to=id
score=none}id:G*)}} that particular range query with space can be fixed with
v=$nested. Yep, the query syntax lacks of predictability.
If you set {{<filterCache showItems="100"...}} and execute that {{filter({!join
score=...}) you'll see
{{item_TermsQuery{field=id}:org.apache.solr.search.SortedIntDocSet@​75fee8b0}}
entry in {{filterCache}} and this is a problem since {{TermsQuery}} enumerates
id values and it might consume a lot of heap. You can see that it's not a case
if you run classic join query without score local param.
> {!join score=..}.. should delay join to createWeight
> ----------------------------------------------------
>
> Key: SOLR-9217
> URL: https://issues.apache.org/jira/browse/SOLR-9217
> Project: Solr
> Issue Type: Improvement
> Components: query parsers
> Affects Versions: 6.1
> Reporter: Mikhail Khludnev
> Priority: Minor
> Labels: newbie, newdev
>
> {{ScoreJoinQParserPlugin.XxxCoreJoinQuery}} executes
> {{JoinUtil.createJoinQuery}} on {{rewrite()}}, but it's inefficient in
> {{filter(...)}} syntax -or fq- (!) I suppose it's {{filter()}} only problem,
> not fq. It's better to do that in {{createWeigh()}} as it's done in classic
> Solr {{JoinQuery}}, {{JoinQParserPlugin}}.
> All existing tests is enough, we just need to assert rewrite behavior - it
> should rewrite on enclosing range query or so, and doesn't on plain term
> query.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]