[
https://issues.apache.org/jira/browse/SOLR-13227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16778561#comment-16778561
]
ASF subversion and git services commented on SOLR-13227:
--------------------------------------------------------
Commit 58beaeb74d784b74e29b0d13845cd6e82a7b46b9 in lucene-solr's branch
refs/heads/master from Mikhail Khludnev
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=58beaeb ]
SOLR-13227: don't throw exceptions for counting facet.range.other.
> Remove slow other-range checks from RangeFacetProcessor
> -------------------------------------------------------
>
> Key: SOLR-13227
> URL: https://issues.apache.org/jira/browse/SOLR-13227
> Project: Solr
> Issue Type: Improvement
> Security Level: Public(Default Security Level. Issues are Public)
> Components: faceting
> Affects Versions: 7.5, 8.0, master (9.0)
> Reporter: Nikolay Khitrin
> Assignee: Mikhail Khludnev
> Priority: Major
> Attachments: SOLR-13227.patch, SOLR-13227.patch, profiler.png
>
>
> RangeFacetProcessor.getFacetRangeCountsDocValues is checking every range name
> over FacetParams.FacetRangeOther enum via catching IllegalArgumentException
> from valueOf, rethrowing it as SolrException and picking a branch based on
> the presence of last one.
> It is very slow due to enormous cost of failed Enum.valueOf.
> Also RangeFacetRequest.FacetRange already have a field with parsed
> FacetRangeOther value for special ranges or null for ordinary ones.
> Replacing this with simple null check leads to huge performance boost here.
> In real case with a lot of intervals (~2000) whole QTime is reduced from
> 300ms to 50ms by this patch.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]