Nikolay Khitrin created SOLR-13227: -------------------------------------- Summary: 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
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