[ 
https://issues.apache.org/jira/browse/SOLR-7918?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14741725#comment-14741725
 ] 

Yonik Seeley commented on SOLR-7918:
------------------------------------

bq. Was there really any benefit to initializing the FixedBitSet manually 
versus simply creating it and calling set() ?

Yep, there did seem to be a perf increase... it happens sometimes.  See 
BooleanScorer as well:
{code}
  // This is basically an inlined FixedBitSet... seems to help with bound checks
  final long[] matching = new long[SET_SIZE];
{code}

bq. I saw the size threshold numerous times — maxDoc >> 6 + 5.

Yeah, that actually appears in other places (like SolrIndexSearcher) too, and 
sometimes just as maxDoc>>6.  They should all arguably have a small constant 
added for better test coverage of both small and large DocSets.

bq. The private method createDocSetByIterator appears unused. What's the story 
there?

I started off by just porting DocSetUtil, but this code isn't used (yet).  It 
can be removed for now.

> speed up term->DocSet production
> --------------------------------
>
>                 Key: SOLR-7918
>                 URL: https://issues.apache.org/jira/browse/SOLR-7918
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Yonik Seeley
>             Fix For: 5.4
>
>         Attachments: SOLR-7918.patch
>
>
> We can use index statistics to figure out before hand what type of doc set 
> (sorted int or bitset) we should create.  This should use less memory than 
> the current approach as well as increase performance.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to