[ https://issues.apache.org/jira/browse/LUCENE-6427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14499509#comment-14499509 ]
Luc Vanlerberghe commented on LUCENE-6427: ------------------------------------------ I updated my pull request: * Deleted obsolete doc comments on @Override methods * TestFixedBitSet: Made an accidentally public method private again * org.apache.solr.search.TestFiltering: Corrected possible generation of 'ghost' bits for FixedBitSet bq. But it doesn't bring anything either since this method is not used anywhere for now? I did find a case where it would be useful: In oals.SloppyPhraseScorer there's this code: {code} // collisions resolved, now re-queue // empty (partially) the queue until seeing all pps advanced for resolving collisions int n = 0; // TODO would be good if we can avoid calling cardinality() in each iteration! int numBits = bits.length(); // larges bit we set while (bits.cardinality() > 0) { PhrasePositions pp2 = pq.pop(); rptStack[n++] = pp2; if (pp2.rptGroup >= 0 && pp2.rptInd < numBits // this bit may not have been set && bits.get(pp2.rptInd)) { bits.clear(pp2.rptInd); } } {code} and some places that assert that .cardinality() == 0. > BitSet fixes - assert on presence of 'ghost bits' and others > ------------------------------------------------------------ > > Key: LUCENE-6427 > URL: https://issues.apache.org/jira/browse/LUCENE-6427 > Project: Lucene - Core > Issue Type: Bug > Components: core/other > Reporter: Luc Vanlerberghe > > Fixes after reviewing org.apache.lucene.util.FixedBitSet, LongBitSet and > corresponding tests: > * Some methods rely on the fact that no bits are set after numBits (what I > call 'ghost' bits here). > ** cardinality, nextSetBit, intersects and others may yield wrong results > ** If ghost bits are present, they may become visible after ensureCapacity is > called. > ** The tests deliberately create bitsets with ghost bits, but then do not > detect these failures > * FixedBitSet.cardinality scans the complete backing array, even if only > numWords are in use -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org