Index: lucene/CHANGES.txt =================================================================== --- lucene/CHANGES.txt (revision 1419591) +++ lucene/CHANGES.txt (working copy) @@ -165,6 +165,9 @@ * LUCENE-4591: CompressingStoredFields{Writer,Reader} now accept a segment suffix as a constructor parameter. (Renaud Delbru via Adrien Grand) +* LUCENE-4605: Added DocsEnum.FLAG_NONE which can be passed instead of 0 as + the flag to .docs() and .docsAndPositions(). (Shai Erera) + Bug Fixes * LUCENE-1822: BaseFragListBuilder hard-coded 6 char margin is too naive. Index: lucene/codecs/src/test/org/apache/lucene/codecs/pulsing/Test10KPulsings.java =================================================================== --- lucene/codecs/src/test/org/apache/lucene/codecs/pulsing/Test10KPulsings.java (revision 1419591) +++ lucene/codecs/src/test/org/apache/lucene/codecs/pulsing/Test10KPulsings.java (working copy) @@ -87,7 +87,7 @@ for (int i = 0; i < 10050; i++) { String expected = df.format(i); assertEquals(expected, te.next().utf8ToString()); - de = _TestUtil.docs(random(), te, null, de, 0); + de = _TestUtil.docs(random(), te, null, de, DocsEnum.FLAG_NONE); assertTrue(de.nextDoc() != DocIdSetIterator.NO_MORE_DOCS); assertEquals(DocIdSetIterator.NO_MORE_DOCS, de.nextDoc()); } @@ -145,7 +145,7 @@ for (int i = 0; i < 10050; i++) { String expected = df.format(i); assertEquals(expected, te.next().utf8ToString()); - de = _TestUtil.docs(random(), te, null, de, 0); + de = _TestUtil.docs(random(), te, null, de, DocsEnum.FLAG_NONE); assertTrue(de.nextDoc() != DocIdSetIterator.NO_MORE_DOCS); assertEquals(DocIdSetIterator.NO_MORE_DOCS, de.nextDoc()); } Index: lucene/codecs/src/test/org/apache/lucene/codecs/pulsing/TestPulsingReuse.java =================================================================== --- lucene/codecs/src/test/org/apache/lucene/codecs/pulsing/TestPulsingReuse.java (revision 1419591) +++ lucene/codecs/src/test/org/apache/lucene/codecs/pulsing/TestPulsingReuse.java (working copy) @@ -60,7 +60,7 @@ Map allEnums = new IdentityHashMap(); TermsEnum te = segment.terms("foo").iterator(null); while (te.next() != null) { - reuse = te.docs(null, reuse, 0); + reuse = te.docs(null, reuse, DocsEnum.FLAG_NONE); allEnums.put(reuse, true); } @@ -101,7 +101,7 @@ Map allEnums = new IdentityHashMap(); TermsEnum te = segment.terms("foo").iterator(null); while (te.next() != null) { - reuse = te.docs(null, reuse, 0); + reuse = te.docs(null, reuse, DocsEnum.FLAG_NONE); allEnums.put(reuse, true); } Index: lucene/core/src/java/org/apache/lucene/codecs/TermsConsumer.java =================================================================== --- lucene/core/src/java/org/apache/lucene/codecs/TermsConsumer.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/codecs/TermsConsumer.java (working copy) @@ -23,6 +23,7 @@ import org.apache.lucene.index.FieldInfo; // javadocs import org.apache.lucene.index.DocsAndPositionsEnum; import org.apache.lucene.index.FieldInfo.IndexOptions; +import org.apache.lucene.index.DocsEnum; import org.apache.lucene.index.MergeState; import org.apache.lucene.index.TermsEnum; import org.apache.lucene.index.MultiDocsEnum; @@ -103,7 +104,7 @@ while((term = termsEnum.next()) != null) { // We can pass null for liveDocs, because the // mapping enum will skip the non-live docs: - docsEnumIn = (MultiDocsEnum) termsEnum.docs(null, docsEnumIn, 0); + docsEnumIn = (MultiDocsEnum) termsEnum.docs(null, docsEnumIn, DocsEnum.FLAG_NONE); if (docsEnumIn != null) { docsEnum.reset(docsEnumIn); final PostingsConsumer postingsConsumer = startTerm(term); Index: lucene/core/src/java/org/apache/lucene/index/BufferedDeletesStream.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/BufferedDeletesStream.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/index/BufferedDeletesStream.java (working copy) @@ -397,7 +397,7 @@ if (termsEnum.seekExact(term.bytes(), false)) { // we don't need term frequencies for this - DocsEnum docsEnum = termsEnum.docs(rld.getLiveDocs(), docs, 0); + DocsEnum docsEnum = termsEnum.docs(rld.getLiveDocs(), docs, DocsEnum.FLAG_NONE); //System.out.println("BDS: got docsEnum=" + docsEnum); if (docsEnum != null) { Index: lucene/core/src/java/org/apache/lucene/index/CheckIndex.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/CheckIndex.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/index/CheckIndex.java (working copy) @@ -905,7 +905,7 @@ totalTermFreq += docsNoDel.freq(); } } else { - final DocsEnum docsNoDel = termsEnum.docs(null, docs, 0); + final DocsEnum docsNoDel = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); docCount = 0; totalTermFreq = -1; while(docsNoDel.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) { @@ -991,7 +991,7 @@ } else { for(int idx=0;idx<7;idx++) { final int skipDocID = (int) (((idx+1)*(long) maxDoc)/8); - docs = termsEnum.docs(liveDocs, docs, 0); + docs = termsEnum.docs(liveDocs, docs, DocsEnum.FLAG_NONE); final int docID = docs.advance(skipDocID); if (docID == DocIdSetIterator.NO_MORE_DOCS) { break; @@ -1057,7 +1057,7 @@ } int expectedDocFreq = termsEnum.docFreq(); - DocsEnum d = termsEnum.docs(null, null, 0); + DocsEnum d = termsEnum.docs(null, null, DocsEnum.FLAG_NONE); int docFreq = 0; while (d.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) { docFreq++; @@ -1098,7 +1098,7 @@ throw new RuntimeException("seek to existing term " + seekTerms[i] + " failed"); } - docs = termsEnum.docs(liveDocs, docs, 0); + docs = termsEnum.docs(liveDocs, docs, DocsEnum.FLAG_NONE); if (docs == null) { throw new RuntimeException("null DocsEnum from to existing term " + seekTerms[i]); } @@ -1116,7 +1116,7 @@ } totDocFreq += termsEnum.docFreq(); - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); if (docs == null) { throw new RuntimeException("null DocsEnum from to existing term " + seekTerms[i]); } Index: lucene/core/src/java/org/apache/lucene/index/DocTermOrds.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/DocTermOrds.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/index/DocTermOrds.java (working copy) @@ -363,7 +363,7 @@ final int df = te.docFreq(); if (df <= maxTermDocFreq) { - docsEnum = te.docs(liveDocs, docsEnum, 0); + docsEnum = te.docs(liveDocs, docsEnum, DocsEnum.FLAG_NONE); // dF, but takes deletions into account int actualDF = 0; Index: lucene/core/src/java/org/apache/lucene/index/DocsAndPositionsEnum.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/DocsAndPositionsEnum.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/index/DocsAndPositionsEnum.java (working copy) @@ -24,6 +24,7 @@ /** Also iterates through positions. */ public abstract class DocsAndPositionsEnum extends DocsEnum { + /** Flag to pass to {@link TermsEnum#docsAndPositions(Bits,DocsAndPositionsEnum,int)} * if you require offsets in the returned enum. */ public static final int FLAG_OFFSETS = 0x1; Index: lucene/core/src/java/org/apache/lucene/index/DocsEnum.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/DocsEnum.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/index/DocsEnum.java (working copy) @@ -27,6 +27,14 @@ * NOTE: you must first call {@link #nextDoc} before using * any of the per-doc methods. */ public abstract class DocsEnum extends DocIdSetIterator { + + /** + * Flag to pass to {@link TermsEnum#docs(Bits,DocsEnum,int)} if you don't + * require term frequencies in the returned enum. When passed to + * {@link TermsEnum#docsAndPositions(Bits,DocsAndPositionsEnum,int)} means + * that no offsets and payloads will be returned. + */ + public static final int FLAG_NONE = 0x0; /** Flag to pass to {@link TermsEnum#docs(Bits,DocsEnum,int)} * if you require term frequencies in the returned enum. */ Index: lucene/core/src/java/org/apache/lucene/index/MultiTermsEnum.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/MultiTermsEnum.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/index/MultiTermsEnum.java (working copy) @@ -479,7 +479,7 @@ subDocsAndPositions[upto].slice = entry.subSlice; upto++; } else { - if (entry.terms.docs(b, null, 0) != null) { + if (entry.terms.docs(b, null, DocsEnum.FLAG_NONE) != null) { // At least one of our subs does not store // offsets or positions -- we can't correctly // produce a MultiDocsAndPositions enum Index: lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java =================================================================== --- lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java (working copy) @@ -364,7 +364,7 @@ break; } final byte termval = parser.parseByte(term); - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -437,7 +437,7 @@ break; } final short termval = parser.parseShort(term); - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -541,7 +541,7 @@ retArray = new int[maxDoc]; } - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -608,7 +608,7 @@ res = new FixedBitSet(maxDoc); } - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); // TODO: use bulk API while (true) { final int docID = docs.nextDoc(); @@ -691,7 +691,7 @@ retArray = new float[maxDoc]; } - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -779,7 +779,7 @@ retArray = new long[maxDoc]; } - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -868,7 +868,7 @@ retArray = new double[maxDoc]; } - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -1161,7 +1161,7 @@ termOrdToBytesOffset = termOrdToBytesOffset.resize(ArrayUtil.oversize(1+termOrd, 1)); } termOrdToBytesOffset.set(termOrd, bytes.copyUsingLengthPrefix(term)); - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { @@ -1277,7 +1277,7 @@ break; } final long pointer = bytes.copyUsingLengthPrefix(term); - docs = termsEnum.docs(null, docs, 0); + docs = termsEnum.docs(null, docs, DocsEnum.FLAG_NONE); while (true) { final int docID = docs.nextDoc(); if (docID == DocIdSetIterator.NO_MORE_DOCS) { Index: lucene/core/src/java/org/apache/lucene/search/MultiPhraseQuery.java =================================================================== --- lucene/core/src/java/org/apache/lucene/search/MultiPhraseQuery.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/search/MultiPhraseQuery.java (working copy) @@ -23,6 +23,7 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.DocsAndPositionsEnum; import org.apache.lucene.index.AtomicReader; +import org.apache.lucene.index.DocsEnum; import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.IndexReaderContext; import org.apache.lucene.index.Term; @@ -224,11 +225,11 @@ return null; } termsEnum.seekExact(term.bytes(), termState); - postingsEnum = termsEnum.docsAndPositions(liveDocs, null, 0); + postingsEnum = termsEnum.docsAndPositions(liveDocs, null, DocsEnum.FLAG_NONE); if (postingsEnum == null) { // term does exist, but has no positions - assert termsEnum.docs(liveDocs, null, 0) != null: "termstate found but no term exists in reader"; + assert termsEnum.docs(liveDocs, null, DocsEnum.FLAG_NONE) != null: "termstate found but no term exists in reader"; throw new IllegalStateException("field \"" + term.field() + "\" was indexed without position data; cannot run PhraseQuery (term=" + term.text() + ")"); } @@ -482,7 +483,7 @@ continue; } termsEnum.seekExact(term.bytes(), termState); - DocsAndPositionsEnum postings = termsEnum.docsAndPositions(liveDocs, null, 0); + DocsAndPositionsEnum postings = termsEnum.docsAndPositions(liveDocs, null, DocsEnum.FLAG_NONE); if (postings == null) { // term does exist, but has no positions throw new IllegalStateException("field \"" + term.field() + "\" was indexed without position data; cannot run PhraseQuery (term=" + term.text() + ")"); Index: lucene/core/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java =================================================================== --- lucene/core/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java (working copy) @@ -106,7 +106,7 @@ do { // System.out.println(" iter termCount=" + termCount + " term=" + // enumerator.term().toBytesString()); - docsEnum = termsEnum.docs(acceptDocs, docsEnum, 0); + docsEnum = termsEnum.docs(acceptDocs, docsEnum, DocsEnum.FLAG_NONE); int docid; while ((docid = docsEnum.nextDoc()) != DocIdSetIterator.NO_MORE_DOCS) { bitSet.set(docid); Index: lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java =================================================================== --- lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java (revision 1419591) +++ lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java (working copy) @@ -24,6 +24,7 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.DocsAndPositionsEnum; +import org.apache.lucene.index.DocsEnum; import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.AtomicReader; import org.apache.lucene.index.IndexReaderContext; @@ -262,7 +263,7 @@ return null; } te.seekExact(t.bytes(), state); - DocsAndPositionsEnum postingsEnum = te.docsAndPositions(liveDocs, null, 0); + DocsAndPositionsEnum postingsEnum = te.docsAndPositions(liveDocs, null, DocsEnum.FLAG_NONE); // PhraseQuery on a field that did not index // positions. Index: lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java =================================================================== --- lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java (working copy) @@ -58,7 +58,7 @@ IdentityHashMap enums = new IdentityHashMap(); MatchNoBits bits = new Bits.MatchNoBits(indexReader.maxDoc()); while ((iterator.next()) != null) { - DocsEnum docs = iterator.docs(random().nextBoolean() ? bits : new Bits.MatchNoBits(indexReader.maxDoc()), null, random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + DocsEnum docs = iterator.docs(random().nextBoolean() ? bits : new Bits.MatchNoBits(indexReader.maxDoc()), null, random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); enums.put(docs, true); } @@ -85,7 +85,7 @@ MatchNoBits bits = new Bits.MatchNoBits(open.maxDoc()); DocsEnum docs = null; while ((iterator.next()) != null) { - docs = iterator.docs(bits, docs, random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + docs = iterator.docs(bits, docs, random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); enums.put(docs, true); } @@ -94,7 +94,7 @@ iterator = terms.iterator(null); docs = null; while ((iterator.next()) != null) { - docs = iterator.docs(new Bits.MatchNoBits(open.maxDoc()), docs, random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + docs = iterator.docs(new Bits.MatchNoBits(open.maxDoc()), docs, random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); enums.put(docs, true); } assertEquals(terms.size(), enums.size()); @@ -103,7 +103,7 @@ iterator = terms.iterator(null); docs = null; while ((iterator.next()) != null) { - docs = iterator.docs(null, docs, random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + docs = iterator.docs(null, docs, random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); enums.put(docs, true); } assertEquals(1, enums.size()); @@ -135,7 +135,7 @@ DocsEnum docs = null; BytesRef term = null; while ((term = iterator.next()) != null) { - docs = iterator.docs(null, randomDocsEnum("body", term, leaves2, bits), random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + docs = iterator.docs(null, randomDocsEnum("body", term, leaves2, bits), random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); enums.put(docs, true); } assertEquals(terms.size(), enums.size()); @@ -144,7 +144,7 @@ enums.clear(); docs = null; while ((term = iterator.next()) != null) { - docs = iterator.docs(bits, randomDocsEnum("body", term, leaves2, bits), random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + docs = iterator.docs(bits, randomDocsEnum("body", term, leaves2, bits), random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); enums.put(docs, true); } assertEquals(terms.size(), enums.size()); @@ -163,7 +163,7 @@ } TermsEnum iterator = terms.iterator(null); if (iterator.seekExact(term, true)) { - return iterator.docs(bits, null, random().nextBoolean() ? DocsEnum.FLAG_FREQS : 0); + return iterator.docs(bits, null, random().nextBoolean() ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); } return null; } Index: lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestBlockPostingsFormat3.java =================================================================== --- lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestBlockPostingsFormat3.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestBlockPostingsFormat3.java (working copy) @@ -332,17 +332,17 @@ rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, DocsAndPositionsEnum.FLAG_OFFSETS)); // with positions only - assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions, 0), - rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions, 0)); - assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions, 0), - rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, 0)); + assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions, DocsEnum.FLAG_NONE), + rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions, DocsEnum.FLAG_NONE)); + assertDocsAndPositionsEnum(leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions, DocsEnum.FLAG_NONE), + rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, DocsEnum.FLAG_NONE)); assertPositionsSkipping(leftTermsEnum.docFreq(), - leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions, 0), - rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions, 0)); + leftPositions = leftTermsEnum.docsAndPositions(null, leftPositions, DocsEnum.FLAG_NONE), + rightPositions = rightTermsEnum.docsAndPositions(null, rightPositions, DocsEnum.FLAG_NONE)); assertPositionsSkipping(leftTermsEnum.docFreq(), - leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions, 0), - rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, 0)); + leftPositions = leftTermsEnum.docsAndPositions(randomBits, leftPositions, DocsEnum.FLAG_NONE), + rightPositions = rightTermsEnum.docsAndPositions(randomBits, rightPositions, DocsEnum.FLAG_NONE)); // with freqs: assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs), @@ -351,10 +351,10 @@ rightDocs = rightTermsEnum.docs(randomBits, rightDocs)); // w/o freqs: - assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, 0), - rightDocs = rightTermsEnum.docs(null, rightDocs, 0)); - assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, 0), - rightDocs = rightTermsEnum.docs(randomBits, rightDocs, 0)); + assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(null, rightDocs, DocsEnum.FLAG_NONE)); + assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(randomBits, rightDocs, DocsEnum.FLAG_NONE)); // with freqs: assertDocsSkipping(leftTermsEnum.docFreq(), @@ -366,11 +366,11 @@ // w/o freqs: assertDocsSkipping(leftTermsEnum.docFreq(), - leftDocs = leftTermsEnum.docs(null, leftDocs, 0), - rightDocs = rightTermsEnum.docs(null, rightDocs, 0)); + leftDocs = leftTermsEnum.docs(null, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(null, rightDocs, DocsEnum.FLAG_NONE)); assertDocsSkipping(leftTermsEnum.docFreq(), - leftDocs = leftTermsEnum.docs(randomBits, leftDocs, 0), - rightDocs = rightTermsEnum.docs(randomBits, rightDocs, 0)); + leftDocs = leftTermsEnum.docs(randomBits, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(randomBits, rightDocs, DocsEnum.FLAG_NONE)); } } assertNull(rightTermsEnum.next()); Index: lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java (working copy) @@ -537,7 +537,7 @@ private void verifyTermDocs(Directory dir, Term term, int numDocs) throws IOException { IndexReader reader = DirectoryReader.open(dir); - DocsEnum docsEnum = _TestUtil.docs(random(), reader, term.field, term.bytes, null, null, 0); + DocsEnum docsEnum = _TestUtil.docs(random(), reader, term.field, term.bytes, null, null, DocsEnum.FLAG_NONE); int count = 0; while (docsEnum.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) count++; Index: lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (working copy) @@ -725,7 +725,7 @@ // should be found exactly assertEquals(TermsEnum.SeekStatus.FOUND, terms.seekCeil(aaaTerm)); - assertEquals(35, countDocs(_TestUtil.docs(random(), terms, null, null, 0))); + assertEquals(35, countDocs(_TestUtil.docs(random(), terms, null, null, DocsEnum.FLAG_NONE))); assertNull(terms.next()); // should hit end of field @@ -737,12 +737,12 @@ assertEquals(TermsEnum.SeekStatus.NOT_FOUND, terms.seekCeil(new BytesRef("a"))); assertTrue(terms.term().bytesEquals(aaaTerm)); - assertEquals(35, countDocs(_TestUtil.docs(random(), terms, null, null, 0))); + assertEquals(35, countDocs(_TestUtil.docs(random(), terms, null, null, DocsEnum.FLAG_NONE))); assertNull(terms.next()); assertEquals(TermsEnum.SeekStatus.FOUND, terms.seekCeil(aaaTerm)); - assertEquals(35, countDocs(_TestUtil.docs(random(), terms,null, null, 0))); + assertEquals(35, countDocs(_TestUtil.docs(random(), terms,null, null, DocsEnum.FLAG_NONE))); assertNull(terms.next()); r.close(); Index: lucene/core/src/test/org/apache/lucene/index/TestCodecs.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestCodecs.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestCodecs.java (working copy) @@ -277,7 +277,7 @@ // make sure it properly fully resets (rewinds) its // internal state: for(int iter=0;iter<2;iter++) { - docsEnum = _TestUtil.docs(random(), termsEnum, null, docsEnum, 0); + docsEnum = _TestUtil.docs(random(), termsEnum, null, docsEnum, DocsEnum.FLAG_NONE); assertEquals(terms[i].docs[0], docsEnum.nextDoc()); assertEquals(DocIdSetIterator.NO_MORE_DOCS, docsEnum.nextDoc()); } @@ -474,7 +474,7 @@ assertEquals(status, TermsEnum.SeekStatus.FOUND); assertEquals(term.docs.length, termsEnum.docFreq()); if (field.omitTF) { - this.verifyDocs(term.docs, term.positions, _TestUtil.docs(random(), termsEnum, null, null, 0), false); + this.verifyDocs(term.docs, term.positions, _TestUtil.docs(random(), termsEnum, null, null, DocsEnum.FLAG_NONE), false); } else { this.verifyDocs(term.docs, term.positions, termsEnum.docsAndPositions(null, null), true); } @@ -494,7 +494,7 @@ assertTrue(termsEnum.term().bytesEquals(new BytesRef(term.text2))); assertEquals(term.docs.length, termsEnum.docFreq()); if (field.omitTF) { - this.verifyDocs(term.docs, term.positions, _TestUtil.docs(random(), termsEnum, null, null, 0), false); + this.verifyDocs(term.docs, term.positions, _TestUtil.docs(random(), termsEnum, null, null, DocsEnum.FLAG_NONE), false); } else { this.verifyDocs(term.docs, term.positions, termsEnum.docsAndPositions(null, null), true); } @@ -557,7 +557,7 @@ } else { postings = null; docsAndFreqs = null; - docs = _TestUtil.docs(random(), termsEnum, null, null, 0); + docs = _TestUtil.docs(random(), termsEnum, null, null, DocsEnum.FLAG_NONE); } assertNotNull(docs); int upto2 = -1; Index: lucene/core/src/test/org/apache/lucene/index/TestDocCount.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestDocCount.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestDocCount.java (working copy) @@ -70,7 +70,7 @@ FixedBitSet visited = new FixedBitSet(ir.maxDoc()); TermsEnum te = terms.iterator(null); while (te.next() != null) { - DocsEnum de = _TestUtil.docs(random(), te, null, null, 0); + DocsEnum de = _TestUtil.docs(random(), te, null, null, DocsEnum.FLAG_NONE); while (de.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) { visited.set(de.docID()); } Index: lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestDocsAndPositions.java (working copy) @@ -334,7 +334,7 @@ writer.addDocument(doc); DirectoryReader reader = writer.getReader(); AtomicReader r = getOnlySegmentReader(reader); - DocsEnum disi = _TestUtil.docs(random(), r, "foo", new BytesRef("bar"), null, null, 0); + DocsEnum disi = _TestUtil.docs(random(), r, "foo", new BytesRef("bar"), null, null, DocsEnum.FLAG_NONE); int docid = disi.docID(); assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS); assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS); @@ -342,7 +342,7 @@ // now reuse and check again TermsEnum te = r.terms("foo").iterator(null); assertTrue(te.seekExact(new BytesRef("bar"), true)); - disi = _TestUtil.docs(random(), te, null, disi, 0); + disi = _TestUtil.docs(random(), te, null, disi, DocsEnum.FLAG_NONE); docid = disi.docID(); assertTrue(docid == -1 || docid == DocIdSetIterator.NO_MORE_DOCS); assertTrue(disi.nextDoc() != DocIdSetIterator.NO_MORE_DOCS); Index: lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestDuelingCodecs.java (working copy) @@ -349,11 +349,11 @@ true); // w/o freqs: - assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, 0), - rightDocs = rightTermsEnum.docs(null, rightDocs, 0), + assertDocsEnum(leftDocs = leftTermsEnum.docs(null, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(null, rightDocs, DocsEnum.FLAG_NONE), false); - assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, 0), - rightDocs = rightTermsEnum.docs(randomBits, rightDocs, 0), + assertDocsEnum(leftDocs = leftTermsEnum.docs(randomBits, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(randomBits, rightDocs, DocsEnum.FLAG_NONE), false); // with freqs: @@ -368,12 +368,12 @@ // w/o freqs: assertDocsSkipping(leftTermsEnum.docFreq(), - leftDocs = leftTermsEnum.docs(null, leftDocs, 0), - rightDocs = rightTermsEnum.docs(null, rightDocs, 0), + leftDocs = leftTermsEnum.docs(null, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(null, rightDocs, DocsEnum.FLAG_NONE), false); assertDocsSkipping(leftTermsEnum.docFreq(), - leftDocs = leftTermsEnum.docs(randomBits, leftDocs, 0), - rightDocs = rightTermsEnum.docs(randomBits, rightDocs, 0), + leftDocs = leftTermsEnum.docs(randomBits, leftDocs, DocsEnum.FLAG_NONE), + rightDocs = rightTermsEnum.docs(randomBits, rightDocs, DocsEnum.FLAG_NONE), false); } } Index: lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java (working copy) @@ -1181,12 +1181,12 @@ // test that the terms were indexed. - assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc1field1"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); - assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc2field1"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); - assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc3field1"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); - assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc1field2"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); - assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc2field2"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); - assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc3field2"), null, null, 0).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); + assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc1field1"), null, null, DocsEnum.FLAG_NONE).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); + assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc2field1"), null, null, DocsEnum.FLAG_NONE).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); + assertTrue(_TestUtil.docs(random(), ir, "binary", new BytesRef("doc3field1"), null, null, DocsEnum.FLAG_NONE).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); + assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc1field2"), null, null, DocsEnum.FLAG_NONE).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); + assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc2field2"), null, null, DocsEnum.FLAG_NONE).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); + assertTrue(_TestUtil.docs(random(), ir, "string", new BytesRef("doc3field2"), null, null, DocsEnum.FLAG_NONE).nextDoc() != DocIdSetIterator.NO_MORE_DOCS); ir.close(); dir.close(); @@ -1258,7 +1258,7 @@ TermsEnum t = r.fields().terms("field").iterator(null); int count = 0; while(t.next() != null) { - final DocsEnum docs = _TestUtil.docs(random(), t, null, null, 0); + final DocsEnum docs = _TestUtil.docs(random(), t, null, null, DocsEnum.FLAG_NONE); assertEquals(0, docs.nextDoc()); assertEquals(DocIdSetIterator.NO_MORE_DOCS, docs.nextDoc()); count++; Index: lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java (working copy) @@ -983,7 +983,7 @@ w.addDocument(doc); SegmentReader r = getOnlySegmentReader(DirectoryReader.open(w, true)); try { - _TestUtil.docs(random(), r, "f", new BytesRef("val"), null, null, 0); + _TestUtil.docs(random(), r, "f", new BytesRef("val"), null, null, DocsEnum.FLAG_NONE); fail("should have failed to seek since terms index was not loaded."); } catch (IllegalStateException e) { // expected - we didn't load the term index Index: lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestLongPostings.java (working copy) @@ -374,7 +374,7 @@ final DocsEnum postings; if (options == IndexOptions.DOCS_ONLY) { - docs = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, 0); + docs = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, DocsEnum.FLAG_NONE); postings = null; } else { docs = postings = _TestUtil.docs(random(), r, "field", new BytesRef(term), null, null, DocsEnum.FLAG_FREQS); Index: lucene/core/src/test/org/apache/lucene/index/TestMultiFields.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestMultiFields.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestMultiFields.java (working copy) @@ -121,7 +121,7 @@ System.out.println("TEST: seek term="+ UnicodeUtil.toHexString(term.utf8ToString()) + " " + term); } - DocsEnum docsEnum = _TestUtil.docs(random(), reader, "field", term, liveDocs, null, 0); + DocsEnum docsEnum = _TestUtil.docs(random(), reader, "field", term, liveDocs, null, DocsEnum.FLAG_NONE); assertNotNull(docsEnum); for(int docID : docs.get(term)) { @@ -162,8 +162,8 @@ w.addDocument(d); IndexReader r = w.getReader(); w.close(); - DocsEnum d1 = _TestUtil.docs(random(), r, "f", new BytesRef("j"), null, null, 0); - DocsEnum d2 = _TestUtil.docs(random(), r, "f", new BytesRef("j"), null, null, 0); + DocsEnum d1 = _TestUtil.docs(random(), r, "f", new BytesRef("j"), null, null, DocsEnum.FLAG_NONE); + DocsEnum d2 = _TestUtil.docs(random(), r, "f", new BytesRef("j"), null, null, DocsEnum.FLAG_NONE); assertEquals(0, d1.nextDoc()); assertEquals(0, d2.nextDoc()); r.close(); Index: lucene/core/src/test/org/apache/lucene/index/TestParallelTermEnum.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestParallelTermEnum.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestParallelTermEnum.java (working copy) @@ -82,7 +82,7 @@ BytesRef b = te.next(); assertNotNull(b); assertEquals(t, b.utf8ToString()); - DocsEnum td = _TestUtil.docs(random(), te, liveDocs, null, 0); + DocsEnum td = _TestUtil.docs(random(), te, liveDocs, null, DocsEnum.FLAG_NONE); assertTrue(td.nextDoc() != DocIdSetIterator.NO_MORE_DOCS); assertEquals(0, td.docID()); assertEquals(td.nextDoc(), DocIdSetIterator.NO_MORE_DOCS); Index: lucene/core/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestPerSegmentDeletes.java (working copy) @@ -228,7 +228,7 @@ Terms cterms = fields.terms(term.field); TermsEnum ctermsEnum = cterms.iterator(null); if (ctermsEnum.seekExact(new BytesRef(term.text()), false)) { - DocsEnum docsEnum = _TestUtil.docs(random(), ctermsEnum, bits, null, 0); + DocsEnum docsEnum = _TestUtil.docs(random(), ctermsEnum, bits, null, DocsEnum.FLAG_NONE); return toArray(docsEnum); } return null; Index: lucene/core/src/test/org/apache/lucene/index/TestStressAdvance.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestStressAdvance.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestStressAdvance.java (working copy) @@ -82,11 +82,11 @@ System.out.println("\nTEST: iter=" + iter + " iter2=" + iter2); } assertEquals(TermsEnum.SeekStatus.FOUND, te.seekCeil(new BytesRef("a"))); - de = _TestUtil.docs(random(), te, null, de, 0); + de = _TestUtil.docs(random(), te, null, de, DocsEnum.FLAG_NONE); testOne(de, aDocIDs); assertEquals(TermsEnum.SeekStatus.FOUND, te.seekCeil(new BytesRef("b"))); - de = _TestUtil.docs(random(), te, null, de, 0); + de = _TestUtil.docs(random(), te, null, de, DocsEnum.FLAG_NONE); testOne(de, bDocIDs); } Index: lucene/core/src/test/org/apache/lucene/index/TestStressIndexing2.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestStressIndexing2.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestStressIndexing2.java (working copy) @@ -337,7 +337,7 @@ Bits liveDocs = MultiFields.getLiveDocs(r1); DocsEnum docs = null; while(termsEnum.next() != null) { - docs = _TestUtil.docs(random(), termsEnum, liveDocs, docs, 0); + docs = _TestUtil.docs(random(), termsEnum, liveDocs, docs, DocsEnum.FLAG_NONE); while(docs.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) { fail("r1 is not empty but r2 is"); } @@ -357,9 +357,9 @@ break; } - termDocs1 = _TestUtil.docs(random(), termsEnum, liveDocs1, termDocs1, 0); + termDocs1 = _TestUtil.docs(random(), termsEnum, liveDocs1, termDocs1, DocsEnum.FLAG_NONE); if (termsEnum2.seekExact(term, false)) { - termDocs2 = _TestUtil.docs(random(), termsEnum2, liveDocs2, termDocs2, 0); + termDocs2 = _TestUtil.docs(random(), termsEnum2, liveDocs2, termDocs2, DocsEnum.FLAG_NONE); } else { termDocs2 = null; } Index: lucene/core/src/test/org/apache/lucene/index/TestTermVectorsReader.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestTermVectorsReader.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestTermVectorsReader.java (working copy) @@ -225,7 +225,7 @@ //System.out.println("Term: " + term); assertEquals(testTerms[i], term); - docsEnum = _TestUtil.docs(random(), termsEnum, null, docsEnum, 0); + docsEnum = _TestUtil.docs(random(), termsEnum, null, docsEnum, DocsEnum.FLAG_NONE); assertNotNull(docsEnum); int doc = docsEnum.docID(); assertTrue(doc == -1 || doc == DocIdSetIterator.NO_MORE_DOCS); Index: lucene/core/src/test/org/apache/lucene/index/TestTermdocPerf.java =================================================================== --- lucene/core/src/test/org/apache/lucene/index/TestTermdocPerf.java (revision 1419591) +++ lucene/core/src/test/org/apache/lucene/index/TestTermdocPerf.java (working copy) @@ -124,7 +124,7 @@ final Random random = new Random(random().nextLong()); for (int i=0; i 1) { // unset potential duplicates - docs = termsEnum.docs(acceptDocs, docs, 0); + docs = termsEnum.docs(acceptDocs, docs, DocsEnum.FLAG_NONE); int doc = docs.nextDoc(); if (doc != DocIdSetIterator.NO_MORE_DOCS) { if (keepMode == KeepMode.KM_USE_FIRST_OCCURRENCE) { Index: lucene/spatial/src/java/org/apache/lucene/spatial/prefix/RecursivePrefixTreeFilter.java =================================================================== --- lucene/spatial/src/java/org/apache/lucene/spatial/prefix/RecursivePrefixTreeFilter.java (revision 1419591) +++ lucene/spatial/src/java/org/apache/lucene/spatial/prefix/RecursivePrefixTreeFilter.java (working copy) @@ -117,7 +117,7 @@ if (!termsEnum.seekExact(cellTerm, true)) continue; if (cell.getLevel() == detailLevel || cell.isLeaf()) { - docsEnum = termsEnum.docs(acceptDocs, docsEnum, 0); + docsEnum = termsEnum.docs(acceptDocs, docsEnum, DocsEnum.FLAG_NONE); addDocs(docsEnum,bits); } else {//any other intersection assert cell.getLevel() < detailLevel; //assertions help clarify logic @@ -130,7 +130,7 @@ assert StringHelper.startsWith(nextCellTerm, cellTerm); scanCell = grid.getNode(nextCellTerm.bytes, nextCellTerm.offset, nextCellTerm.length, scanCell); if (scanCell.getLevel() == cell.getLevel() && scanCell.isLeaf()) { - docsEnum = termsEnum.docs(acceptDocs, docsEnum, 0); + docsEnum = termsEnum.docs(acceptDocs, docsEnum, DocsEnum.FLAG_NONE); addDocs(docsEnum,bits); //increment pointer to avoid potential redundant addDocs() below nextCellTerm = termsEnum.next(); @@ -163,7 +163,7 @@ if(queryShape.relate(cShape) == SpatialRelation.DISJOINT) continue; - docsEnum = termsEnum.docs(acceptDocs, docsEnum, 0); + docsEnum = termsEnum.docs(acceptDocs, docsEnum, DocsEnum.FLAG_NONE); addDocs(docsEnum,bits); } }//term loop Index: lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java =================================================================== --- lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java (revision 1419591) +++ lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java (working copy) @@ -70,7 +70,7 @@ while (term != null) { T shape = readShape(term); if( shape != null ) { - docs = te.docs(null, docs, 0); + docs = te.docs(null, docs, DocsEnum.FLAG_NONE); Integer docid = docs.nextDoc(); while (docid != DocIdSetIterator.NO_MORE_DOCS) { idx.add( docid, shape ); Index: lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java =================================================================== --- lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java (revision 1419591) +++ lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java (working copy) @@ -667,7 +667,7 @@ if (options.contains(Option.REUSE_ENUMS) && random().nextInt(10) < 9) { prevDocsEnum = threadState.reuseDocsEnum; } - threadState.reuseDocsEnum = termsEnum.docs(liveDocs, prevDocsEnum, doCheckFreqs ? DocsEnum.FLAG_FREQS : 0); + threadState.reuseDocsEnum = termsEnum.docs(liveDocs, prevDocsEnum, doCheckFreqs ? DocsEnum.FLAG_FREQS : DocsEnum.FLAG_NONE); docsEnum = threadState.reuseDocsEnum; docsAndPositionsEnum = null; } Index: solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java =================================================================== --- solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java (working copy) @@ -389,7 +389,7 @@ if (text == null) { // Ran off the end of the terms enum without finding any live docs with that field in them. return null; } - docsEnum = termsEnum.docs(reader.getLiveDocs(), docsEnum, 0); + docsEnum = termsEnum.docs(reader.getLiveDocs(), docsEnum, DocsEnum.FLAG_NONE); if (docsEnum.nextDoc() != DocIdSetIterator.NO_MORE_DOCS) { return reader.document(docsEnum.docID()); } Index: solr/core/src/java/org/apache/solr/handler/component/QueryElevationComponent.java =================================================================== --- solr/core/src/java/org/apache/solr/handler/component/QueryElevationComponent.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/handler/component/QueryElevationComponent.java (working copy) @@ -540,7 +540,7 @@ for (String id : elevations.ids) { term.copyChars(id); if (seen.contains(id) == false && termsEnum.seekExact(term, false)) { - docsEnum = termsEnum.docs(liveDocs, docsEnum, 0); + docsEnum = termsEnum.docs(liveDocs, docsEnum, DocsEnum.FLAG_NONE); if (docsEnum != null) { int docId = docsEnum.nextDoc(); if (docId == DocIdSetIterator.NO_MORE_DOCS ) continue; // must have been deleted Index: solr/core/src/java/org/apache/solr/request/SimpleFacets.java =================================================================== --- solr/core/src/java/org/apache/solr/request/SimpleFacets.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/request/SimpleFacets.java (working copy) @@ -755,7 +755,7 @@ // TODO: specialize when base docset is a bitset or hash set (skipDocs)? or does it matter for this? // TODO: do this per-segment for better efficiency (MultiDocsEnum just uses base class impl) // TODO: would passing deleted docs lead to better efficiency over checking the fastForRandomSet? - docsEnum = termsEnum.docs(null, docsEnum, 0); + docsEnum = termsEnum.docs(null, docsEnum, DocsEnum.FLAG_NONE); c=0; if (docsEnum instanceof MultiDocsEnum) { Index: solr/core/src/java/org/apache/solr/search/JoinQParserPlugin.java =================================================================== --- solr/core/src/java/org/apache/solr/search/JoinQParserPlugin.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/search/JoinQParserPlugin.java (working copy) @@ -340,7 +340,7 @@ if (freq < minDocFreqFrom) { fromTermDirectCount++; // OK to skip liveDocs, since we check for intersection with docs matching query - fromDeState.docsEnum = fromDeState.termsEnum.docs(null, fromDeState.docsEnum, 0); + fromDeState.docsEnum = fromDeState.termsEnum.docs(null, fromDeState.docsEnum, DocsEnum.FLAG_NONE); DocsEnum docsEnum = fromDeState.docsEnum; if (docsEnum instanceof MultiDocsEnum) { @@ -405,7 +405,7 @@ toTermDirectCount++; // need to use liveDocs here so we don't map to any deleted ones - toDeState.docsEnum = toDeState.termsEnum.docs(toDeState.liveDocs, toDeState.docsEnum, 0); + toDeState.docsEnum = toDeState.termsEnum.docs(toDeState.liveDocs, toDeState.docsEnum, DocsEnum.FLAG_NONE); DocsEnum docsEnum = toDeState.docsEnum; if (docsEnum instanceof MultiDocsEnum) { Index: solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java =================================================================== --- solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java (working copy) @@ -594,7 +594,7 @@ if (!termsEnum.seekExact(termBytes, false)) { return -1; } - DocsEnum docs = termsEnum.docs(atomicReader.getLiveDocs(), null, 0); + DocsEnum docs = termsEnum.docs(atomicReader.getLiveDocs(), null, DocsEnum.FLAG_NONE); if (docs == null) return -1; int id = docs.nextDoc(); return id == DocIdSetIterator.NO_MORE_DOCS ? -1 : id; @@ -616,7 +616,7 @@ TermsEnum te = terms.iterator(null); if (te.seekExact(idBytes, true)) { - DocsEnum docs = te.docs(reader.getLiveDocs(), null, 0); + DocsEnum docs = te.docs(reader.getLiveDocs(), null, DocsEnum.FLAG_NONE); int id = docs.nextDoc(); if (id == DocIdSetIterator.NO_MORE_DOCS) continue; assert docs.nextDoc() == DocIdSetIterator.NO_MORE_DOCS; @@ -920,7 +920,7 @@ int bitsSet = 0; OpenBitSet obs = null; - DocsEnum docsEnum = deState.termsEnum.docs(deState.liveDocs, deState.docsEnum, 0); + DocsEnum docsEnum = deState.termsEnum.docs(deState.liveDocs, deState.docsEnum, DocsEnum.FLAG_NONE); if (deState.docsEnum == null) { deState.docsEnum = docsEnum; } @@ -998,7 +998,7 @@ if (terms != null) { final TermsEnum termsEnum = terms.iterator(null); if (termsEnum.seekExact(termBytes, false)) { - docsEnum = termsEnum.docs(liveDocs, null, 0); + docsEnum = termsEnum.docs(liveDocs, null, DocsEnum.FLAG_NONE); } } Index: solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java =================================================================== --- solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java (working copy) @@ -305,7 +305,7 @@ continue; } - docsEnum = termsEnum.docs(null, docsEnum, 0); + docsEnum = termsEnum.docs(null, docsEnum, DocsEnum.FLAG_NONE); int doc; while ((doc = docsEnum.nextDoc()) != DocIdSetIterator.NO_MORE_DOCS) { vals[doc] = fval; Index: solr/core/src/java/org/apache/solr/update/SolrIndexSplitter.java =================================================================== --- solr/core/src/java/org/apache/solr/update/SolrIndexSplitter.java (revision 1419591) +++ solr/core/src/java/org/apache/solr/update/SolrIndexSplitter.java (working copy) @@ -151,7 +151,7 @@ // TODO: hook in custom hashes (or store hashes) int hash = Hash.murmurhash3_x86_32(term.bytes, term.offset, term.length, 0); - docsEnum = termsEnum.docs(liveDocs, docsEnum, 0x0); + docsEnum = termsEnum.docs(liveDocs, docsEnum, DocsEnum.FLAG_NONE); for (;;) { int doc = docsEnum.nextDoc(); if (doc == DocsEnum.NO_MORE_DOCS) break; Index: solr/core/src/test/org/apache/solr/search/TestRTGBase.java =================================================================== --- solr/core/src/test/org/apache/solr/search/TestRTGBase.java (revision 1419591) +++ solr/core/src/test/org/apache/solr/search/TestRTGBase.java (working copy) @@ -134,7 +134,7 @@ if (!termsEnum.seekExact(termBytes, false)) { return -1; } - DocsEnum docs = termsEnum.docs(MultiFields.getLiveDocs(r), null, 0); + DocsEnum docs = termsEnum.docs(MultiFields.getLiveDocs(r), null, DocsEnum.FLAG_NONE); int id = docs.nextDoc(); if (id != DocIdSetIterator.NO_MORE_DOCS) { int next = docs.nextDoc();