[ https://issues.apache.org/jira/browse/SOLR-13227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16761712#comment-16761712 ]
Nikolay Khitrin edited comment on SOLR-13227 at 2/6/19 12:47 PM: ----------------------------------------------------------------- Example of profiler data on this spot: !profiler.png|width=998,height=566! was (Author: khitrin): Example of profiler data on this spot: !profiler.png! > 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 > Priority: Major > Attachments: 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: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org