[ https://issues.apache.org/jira/browse/SOLR-390?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12537179 ]
Yonik Seeley commented on SOLR-390: ----------------------------------- Doing a quick HashDocSet construction test (below) showed the loop to be slightly faster on average than Arrays.fill()... I have no idea why, but I'll close this bug for now and it can be reopened if someone comes up with a better test (or tests on different JVMs, etc). {code}public class TestPerf { private static int VAL=-1; private static int go(int[] x) { HashDocSet ds = new HashDocSet(x,0,x.length); return ds.exists(1) ? 1 : 0; } public static void main(String[] args) { int a=0; int sz = Integer.parseInt(args[a++]); int iter = Integer.parseInt(args[a++]); int[] x = new int[sz]; int[] x2 = new int[sz]; for (int ii=0; ii<sz; ii++) { x[ii]=ii*1234567891; x2[ii]=ii*987654323; } int ret=0; long start = System.currentTimeMillis(); int num=0; for (int i=0; i<iter; i++) { if (++num>=sz) num=0; x[num] += go(x)+ret+x2[num]; ret += go(x2) + x2[num]++; } long end = System.currentTimeMillis(); System.out.println("result=" + ret); System.out.println("time=" +(end-start)); } } {code} > HashDocSet initialization of internal array is not efficient > ------------------------------------------------------------ > > Key: SOLR-390 > URL: https://issues.apache.org/jira/browse/SOLR-390 > Project: Solr > Issue Type: Bug > Components: search > Reporter: John Wang > > HashDocSet initializes the internal array but iterating it instead of using > Arrays.fill which is much faster. Patch included -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.