237 static int32_t MAX_TERM_LENGTH();
246 virtual void initialize();
302 virtual void acquireWrite();
303 virtual void releaseWrite();
304 virtual void acquireRead();
308 virtual void upgradeReadToWrite();
310 virtual void releaseRead();
311 virtual bool isOpen(
bool includePendingClose);
312 virtual void message(
const String& message);
322 virtual bool getUseCompoundFile();
330 virtual void setUseCompoundFile(
bool value);
355 virtual void setTermIndexInterval(int32_t interval);
359 virtual int32_t getTermIndexInterval();
388 virtual void setMaxMergeDocs(int32_t maxMergeDocs);
398 virtual int32_t getMaxMergeDocs();
409 virtual void setMaxFieldLength(int32_t maxFieldLength);
413 virtual int32_t getMaxFieldLength();
418 virtual void setReaderTermsIndexDivisor(int32_t divisor);
421 virtual int32_t getReaderTermsIndexDivisor();
434 virtual void setMaxBufferedDocs(int32_t maxBufferedDocs);
438 virtual int32_t getMaxBufferedDocs();
461 virtual void setRAMBufferSizeMB(
double mb);
464 virtual double getRAMBufferSizeMB();
472 virtual void setMaxBufferedDeleteTerms(int32_t maxBufferedDeleteTerms);
476 virtual int32_t getMaxBufferedDeleteTerms();
487 virtual void setMergeFactor(int32_t mergeFactor);
496 virtual int32_t getMergeFactor();
500 static void setDefaultInfoStream(
const InfoStreamPtr& infoStream);
515 virtual bool verbose();
520 virtual void setWriteLockTimeout(int64_t writeLockTimeout);
524 virtual int64_t getWriteLockTimeout();
528 static void setDefaultWriteLockTimeout(int64_t writeLockTimeout);
532 static int64_t getDefaultWriteLockTimeout();
547 virtual void close();
561 virtual void close(
bool waitForMerges);
572 virtual int32_t maxDoc();
578 virtual int32_t numDocs();
580 virtual bool hasDeletions();
620 virtual void deleteDocuments(
const TermPtr& term);
634 virtual void deleteDocuments(
const QueryPtr& query);
665 virtual int32_t getSegmentCount();
666 virtual int32_t getNumBufferedDocuments();
667 virtual int32_t getDocCount(int32_t i);
668 virtual int32_t getFlushCount();
669 virtual int32_t getFlushDeletesCount();
671 virtual String newSegmentName();
707 virtual void optimize();
715 virtual void optimize(int32_t maxNumSegments);
722 virtual void optimize(
bool doWait);
729 virtual void optimize(int32_t maxNumSegments,
bool doWait);
736 virtual void expungeDeletes(
bool doWait);
749 virtual void expungeDeletes();
759 virtual void maybeMerge();
770 virtual void rollback();
783 virtual void deleteAll();
789 virtual void waitForMerges();
839 virtual void prepareCommit();
857 virtual void prepareCommit(MapStringString commitUserData);
876 virtual void commit();
883 virtual void commit(MapStringString commitUserData);
887 virtual int64_t ramSizeInBytes();
890 virtual int32_t numRamDocs();
896 virtual void mergeSuccess(
const OneMergePtr& merge);
901 virtual bool registerMerge(
const OneMergePtr& merge);
908 virtual void mergeFinish(
const OneMergePtr& merge);
910 virtual void addMergeException(
const OneMergePtr& merge);
913 virtual int32_t getBufferedDeleteTermsSize();
916 virtual int32_t getNumBufferedDeleteTerms();
921 virtual String segString();
951 virtual bool testPoint(
const String& name);
954 virtual bool isClosed();
957 virtual void ensureOpen(
bool includePendingClose);
958 virtual void ensureOpen();
969 virtual void pushMaxBufferedDocs();
971 virtual void messageState();
975 virtual bool shouldClose();
976 virtual void closeInternal(
bool waitForMerges);
980 virtual bool flushDocStores();
983 virtual bool optimizeMergesPending();
985 virtual void maybeMerge(
bool optimize);
986 virtual void maybeMerge(int32_t maxNumSegmentsOptimize,
bool optimize);
987 virtual void updatePendingMerges(int32_t maxNumSegmentsOptimize,
bool optimize);
999 virtual void startTransaction(
bool haveReadLock);
1002 virtual void rollbackTransaction();
1006 virtual void commitTransaction();
1007 virtual void rollbackInternal();
1009 virtual void finishMerges(
bool waitForMerges);
1013 virtual void checkpoint();
1015 virtual void finishAddIndexes();
1016 virtual void blockAddIndexes(
bool includePendingClose);
1017 virtual void resumeAddIndexes();
1018 virtual void resetMergeExceptions();
1021 virtual bool hasExternalSegments();
1027 virtual void resolveExternalSegments();
1031 virtual void doAfterFlush();
1035 virtual void doBeforeFlush();
1037 virtual void commit(int64_t sizeInBytes);
1038 virtual void finishCommit();
1044 virtual void flush(
bool triggerMerge,
bool flushDocStores,
bool flushDeletes);
1045 virtual bool doFlush(
bool flushDocStores,
bool flushDeletes);
1046 virtual bool doFlushInternal(
bool flushDocStores,
bool flushDeletes);
1048 virtual int32_t ensureContiguousMerge(
const OneMergePtr& merge);
1060 virtual void _mergeInit(
const OneMergePtr& merge);
1062 virtual void setDiagnostics(
const SegmentInfoPtr& info,
const String& source);
1063 virtual void setDiagnostics(
const SegmentInfoPtr& info,
const String& source, MapStringString details);
1065 virtual void setMergeDocStoreIsCompoundFile(
const OneMergePtr& merge);
1066 virtual void closeMergeReaders(
const OneMergePtr& merge,
bool suppressExceptions);
1070 virtual int32_t mergeMiddle(
const OneMergePtr& merge);
1073 virtual bool applyDeletes();
1077 virtual bool startSync(
const String& fileName,
HashSet<String> pending);
1078 virtual void finishSync(
const String& fileName,
bool success);
1087 virtual void startCommit(int64_t sizeInBytes, MapStringString commitUserData);
1089 virtual LuceneException handleOOM(
const std::bad_alloc& oom,
const String& location);
1091 friend class ReaderPool;