Examples of BitDocIdSet


Examples of org.apache.lucene.util.BitDocIdSet

        for (ObjectMapper objectMapper : objectMappers().values()) {
            if (!objectMapper.nested().isNested()) {
                continue;
            }

            BitDocIdSet nestedTypeBitSet = cache.getBitDocIdSetFilter(objectMapper.nestedTypeFilter()).getDocIdSet(context);
            if (nestedTypeBitSet != null && nestedTypeBitSet.bits().get(nestedDocId)) {
                if (nestedObjectMapper == null) {
                    nestedObjectMapper = objectMapper;
                } else {
                    if (nestedObjectMapper.fullPath().length() < objectMapper.fullPath().length()) {
                        nestedObjectMapper = objectMapper;
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

            }
            parentFilter = SearchContext.current().bitsetFilterCache().getBitDocIdSetFilter(parentFilterNotCached);
        }

        try {
            BitDocIdSet parentSet = parentFilter.getDocIdSet(reader);
            if (DocIdSets.isEmpty(parentSet)) {
                parentDocs = null;
                childDocs = null;
            } else {
                parentDocs = parentSet.bits();
                // In ES if parent is deleted, then also the children are deleted. Therefore acceptedDocs can also null here.
                BitDocIdSet childSet = childFilter.getDocIdSet(reader);
                if (DocIdSets.isEmpty(childSet)) {
                    childDocs = new Bits.MatchAllBits(reader.reader().maxDoc());
                } else {
                    childDocs = childSet.bits();
                }
            }
        } catch (IOException ioe) {
            throw new AggregationExecutionException("Failed to aggregate [" + name + "]", ioe);
        }
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

            // no matches
            if (parentScorer == null) {
                return null;
            }

            BitDocIdSet parents = parentsFilter.getDocIdSet(context);
            if (parents == null) {
                // No matches
                return null;
            }
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

                }
                result.set(docId);
                assert docsEnum.advance(docId + 1) == DocIdSetIterator.NO_MORE_DOCS : "DocId " + docId + " should have been the last one but docId " + docsEnum.docID() + " exists.";
            }
        }
        return result == null ? null : new BitDocIdSet(result);
    }
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

     * Creates a {@link BitSet} from an iterator.
     */
    public static BitSet toBitSet(DocIdSetIterator iterator, int numBits) throws IOException {
        BitDocIdSet.Builder builder = new BitDocIdSet.Builder(numBits);
        builder.or(iterator);
        BitDocIdSet result = builder.build();
        if (result != null) {
            return result.bits();
        } else {
            return new SparseFixedBitSet(numBits);
        }
    }
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

    private Filter getEmptyFilter() {
        return new Filter() {
            @Override
            public DocIdSet getDocIdSet(LeafReaderContext context, Bits acceptDocs) {
                return new BitDocIdSet(new SparseFixedBitSet(context.reader().maxDoc()));
            }
        };
    }
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

               
                anded.and(randomSet);
               
                if (random().nextBoolean()) {
                    // will be considered 'fast' by AndDocIdSet
                    sets[i] = new BitDocIdSet(randomSet);
                } else {
                    // will be considered 'slow' by AndDocIdSet
                    sets[i] = new DocValuesDocIdSet(numDocs, null) {
                        @Override
                        protected boolean matchDoc(int doc) {
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

        context.fetchResult().hits(new InternalSearchHits(hits, context.queryResult().topDocs().totalHits, context.queryResult().topDocs().getMaxScore()));
    }

    private int findRootDocumentIfNested(SearchContext context, LeafReaderContext subReaderContext, int subDocId) throws IOException {
        if (context.mapperService().hasNested()) {
            BitDocIdSet nonNested = context.bitsetFilterCache().getBitDocIdSetFilter(NonNestedDocsFilter.INSTANCE).getDocIdSet(subReaderContext);
            BitSet bits = nonNested.bits();
            if (!bits.get(subDocId)) {
                return bits.nextSetBit(subDocId);
            }
        }
        return -1;
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

            } else {
                field = nestedObjectMapper.fullPath();
                parentFilter = NonNestedDocsFilter.INSTANCE;
            }

            BitDocIdSet parentBitSet = context.bitsetFilterCache().getBitDocIdSetFilter(parentFilter).getDocIdSet(subReaderContext);
            BitSet parentBits = parentBitSet.bits();
            int offset = 0;
            BitDocIdSet nestedDocsBitSet = context.bitsetFilterCache().getBitDocIdSetFilter(nestedObjectMapper.nestedTypeFilter()).getDocIdSet(subReaderContext);
            BitSet nestedBits = nestedDocsBitSet.bits();
            int nextParent = parentBits.nextSetBit(currentParent);
            for (int docId = nestedBits.nextSetBit(currentParent + 1); docId < nextParent && docId != DocIdSetIterator.NO_MORE_DOCS; docId = nestedBits.nextSetBit(docId + 1)) {
                offset++;
            }
            currentParent = nextParent;
View Full Code Here

Examples of org.apache.lucene.util.BitDocIdSet

        });
        return filterToFbs.get(filter, new Callable<Value>() {
            @Override
            public Value call() throws Exception {
                DocIdSet docIdSet = filter.getDocIdSet(context, null);
                final BitDocIdSet bitSet;
                if (docIdSet instanceof BitDocIdSet) {
                    bitSet = (BitDocIdSet) docIdSet;
                } else {
                    BitDocIdSet.Builder builder = new BitDocIdSet.Builder(context.reader().maxDoc());
                    if (docIdSet != null && docIdSet != DocIdSet.EMPTY) {
                        builder.or(docIdSet.iterator());
                    }
                    BitDocIdSet bits = builder.build();
                    // code expects this to be non-null
                    if (bits == null) {
                        bits = new BitDocIdSet(new SparseFixedBitSet(context.reader().maxDoc()), 0);
                    }
                    bitSet = bits;
                }

                Value value = new Value(bitSet, shardId);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.