@Override public DocIDMapper getDocIDMapper(final ZoieSegmentReader<?> reader) throws IOException { // Don't use getLiveDocs of ZoieSegmentReader, since ZoieSegmentReader take into account // pending delete doc return new DocIDMapperImpl(reader.getUIDArray()); }
if (uid != ZoieSegmentReader.DELETED_UID) { final int p = ((int) ((uid >>> 32) ^ uid) * MIXER) & _mask; int idx = findIndex(partitionedUIDArray, uid, _start[p], _start[p + 1]); if (idx >= 0) { docArray[idx] = docid;
public DocIDArray getDocIDArray(int[] uids) { DocIDArray ret = DocIDArray.newInstance(uids.length); int [] docids = ret.docids; for(int i=0;i<uids.length;i++) { docids[i] = this.getDocID(uids[i]); } return ret; }
@Override public IntArray getDocArray(BoboSegmentReader boboIndexReader) { ZoieSegmentReader<?> zoieReader = (ZoieSegmentReader<?>) (boboIndexReader.getInnerReader()); DocIDMapperImpl docIDMapper = (DocIDMapperImpl) zoieReader.getDocIDMapper(); return new DefaultIntArray(docIDMapper.getDocArray()); }
@Override public DocIDMapper getDocIDMapper(final ZoieSegmentReader<?> reader) throws IOException { // Don't use getLiveDocs of ZoieSegmentReader, since ZoieSegmentReader take into account // pending delete doc return new DocIDMapperImpl(reader.getUIDArray()); }
int idx = findIndex(partitionedUidArray, uid, _start[p], _start[p + 1]); if(idx >= 0)
public DocIDArray getDocIDArray(long[] uids) { DocIDArray ret = DocIDArray.newInstance(uids.length); int [] docids = ret.docids; for(int i=0;i<uids.length;i++) { docids[i] = this.getDocID(uids[i]); } return ret; }
public DocIDMapper<?> getDocIDMapper(ZoieMultiReader<?> multireader) { final ZoieSegmentReader<?>[] subreaders =(ZoieSegmentReader<?>[])(multireader.getSequentialSubReaders()); final int[] starts = multireader.getStarts(); for (int i = 0; i < subreaders.length; ++i){ ZoieSegmentReader<?> subReader = subreaders[i]; DocIDMapper<?> mapper = subReader.getDocIDMaper(); if (mapper == null){ mapper = new DocIDMapperImpl(subReader.getUIDArray()); } subReader.setDocIDMapper(mapper); } final DocIDMapper[] mappers = new DocIDMapper[subreaders.length]; for(int i=0; i< subreaders.length; i++) { mappers[i] = subreaders[i].getDocIDMaper(); } final int bound = subreaders.length-1; return new DefaultDocIDMapper(bound, mappers, starts); }
if (uid != ZoieSegmentReader.DELETED_UID) { final int p = ((int) ((uid >>> 32) ^ uid) * MIXER) & _mask; int idx = findIndex(partitionedUIDArray, uid, _start[p], _start[p + 1]); if (idx >= 0) { docArray[idx] = docid;
if (mapper == null) mapper = new DocIDMapperImpl(subReader.getUIDArray());