Lucene++ - a full-featured, c++ search engine
API Documentation
Go to the documentation of this file.
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;
SetOneMerge runningMerges
Definition: IndexWriter.h:155
bool closing
Definition: IndexWriter.h:149
SegmentInfosPtr segmentInfos
Definition: IndexWriter.h:136
static InfoStreamPtr defaultInfoStream
Definition: IndexWriter.h:190
boost::shared_ptr< LogMergePolicy > LogMergePolicyPtr
Definition: LuceneTypes.h:172
InfoStreamPtr infoStream
Definition: IndexWriter.h:189
SegmentInfosPtr localRollbackSegmentInfos
Definition: IndexWriter.h:133
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
boost::shared_ptr< Term > TermPtr
Definition: LuceneTypes.h:233
static const int32_t MaxFieldLengthLIMITED
Sets the maximum field length to DEFAULT_MAX_FIELD_LENGTH.
Definition: IndexWriter.h:243
boost::shared_ptr< MergePolicy > MergePolicyPtr
Definition: LuceneTypes.h:174
boost::shared_ptr< OneMerge > OneMergePtr
Definition: LuceneTypes.h:192
boost::shared_ptr< IndexFileDeleter > IndexFileDeleterPtr
Definition: LuceneTypes.h:154
int32_t termIndexInterval
Definition: IndexWriter.h:146
boost::shared_ptr< SegmentInfo > SegmentInfoPtr
Definition: LuceneTypes.h:208
Collection< OneMergePtr > mergeExceptions
Definition: IndexWriter.h:156
IndexReaderWarmerPtr mergedSegmentWarmer
Definition: IndexWriter.h:195
SegmentInfosPtr rollbackSegmentInfos
Definition: IndexWriter.h:130
boost::shared_ptr< DocumentsWriter > DocumentsWriterPtr
Definition: LuceneTypes.h:123
boost::shared_ptr< Query > QueryPtr
Definition: LuceneTypes.h:420
bool hitOOM
Definition: IndexWriter.h:115
int32_t upgradeCount
Definition: IndexWriter.h:166
boost::shared_ptr< IndexReaderWarmer > IndexReaderWarmerPtr
Definition: LuceneTypes.h:158
boost::shared_ptr< SegmentReader > SegmentReaderPtr
Definition: LuceneTypes.h:215
bool stopMerges
Definition: IndexWriter.h:158
static const String WRITE_LOCK_NAME
Definition: IndexWriter.h:211
boost::shared_ptr< Lock > LockPtr
Definition: LuceneTypes.h:496
static const int32_t DEFAULT_MAX_BUFFERED_DOCS
Disabled by default (because IndexWriter flushes by RAM usage by default). Change using setMaxBuffere...
Definition: IndexWriter.h:218
static int64_t WRITE_LOCK_TIMEOUT
Default value for the write lock timeout (1,000).
Definition: IndexWriter.h:209
MapSegmentInfoInt rollbackSegments
Definition: IndexWriter.h:131
boost::shared_ptr< Analyzer > AnalyzerPtr
Definition: LuceneTypes.h:20
IndexFileDeleterPtr deleter
Definition: IndexWriter.h:139
int32_t readerTermsIndexDivisor
Definition: IndexWriter.h:168
MergeSchedulerPtr mergeScheduler
Definition: IndexWriter.h:153
int32_t localFlushedDocCount
Definition: IndexWriter.h:134
int64_t mergeGen
Definition: IndexWriter.h:157
ReaderPoolPtr readerPool
Definition: IndexWriter.h:204
int32_t messageID
Definition: IndexWriter.h:114
boost::shared_ptr< Document > DocumentPtr
Definition: LuceneTypes.h:74
IndexingChainPtr indexingChain
Definition: IndexWriter.h:122
Definition: AbstractAllTermDocs.h:12
boost::shared_ptr< MergeScheduler > MergeSchedulerPtr
Definition: LuceneTypes.h:175
int64_t writeLockTimeout
Definition: IndexWriter.h:102
IndexDeletionPolicyPtr deletionPolicy
Definition: IndexWriter.h:121
static const double DEFAULT_RAM_BUFFER_SIZE_MB
Default value is 16 MB (which means flush when buffered docs consume 16 MB RAM). Change using setRAMB...
Definition: IndexWriter.h:222
boost::shared_ptr< ReaderPool > ReaderPoolPtr
Definition: LuceneTypes.h:203
Base class for all Lucene classes.
Definition: LuceneObject.h:31
AnalyzerPtr analyzer
Definition: IndexWriter.h:118
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157
bool poolReaders
Definition: IndexWriter.h:175
boost::shared_ptr< Synchronize > SynchronizePtr
Definition: LuceneTypes.h:552
SetSegmentInfo segmentsToOptimize
Definition: IndexWriter.h:141
static const int32_t DEFAULT_TERM_INDEX_INTERVAL
Default value is 128. Change using setTermIndexInterval(int32_t).
Definition: IndexWriter.h:232
int32_t flushDeletesCount
Definition: IndexWriter.h:161
SynchronizePtr commitLock
Used only by commit; lock order is commitLock -> IW.
Definition: IndexWriter.h:198
int64_t lastCommitChangeCount
Definition: IndexWriter.h:128
static const int32_t DISABLE_AUTO_FLUSH
Value to denote a flush trigger is disabled.
Definition: IndexWriter.h:214
bool create
Definition: IndexWriter.h:120
boost::shared_ptr< SegmentMerger > SegmentMergerPtr
Definition: LuceneTypes.h:214
SetSegmentInfo mergingSegments
Definition: IndexWriter.h:151
If getReader has been called (ie, this writer is in near real-time mode), then after a merge complete...
Definition: IndexWriter.h:1100
int32_t optimizeMaxNumSegments
Definition: IndexWriter.h:142
bool closed
Definition: IndexWriter.h:148
SynchronizePtr messageIDLock
Definition: IndexWriter.h:112
int64_t writeThread
Definition: IndexWriter.h:165
static int32_t MESSAGE_ID
Definition: IndexWriter.h:113
Lucene exception container.
Definition: LuceneException.h:15
boost::shared_ptr< IndexDeletionPolicy > IndexDeletionPolicyPtr
Definition: LuceneTypes.h:153
SimilarityPtr similarity
Definition: IndexWriter.h:125
int32_t maxFieldLength
The maximum number of terms that will be indexed for a single field in a document....
Definition: IndexWriter.h:187
static const int32_t DEFAULT_MAX_FIELD_LENGTH
Default value is 10,000. Change using setMaxFieldLength(int32_t).
Definition: IndexWriter.h:229
boost::shared_ptr< SegmentInfos > SegmentInfosPtr
Definition: LuceneTypes.h:210
MergePolicyPtr mergePolicy
Definition: IndexWriter.h:152
static const int32_t MERGE_READ_BUFFER_SIZE
The normal read buffer size defaults to 1024, but increasing this during merging seems to yield perfo...
Definition: IndexWriter.h:110
LockPtr writeLock
Definition: IndexWriter.h:144
boost::shared_ptr< Directory > DirectoryPtr
Definition: LuceneTypes.h:489
DirectoryPtr directory
Definition: IndexWriter.h:117
boost::shared_ptr< InfoStream > InfoStreamPtr
Definition: LuceneTypes.h:532
HashSet< String > syncing
Definition: IndexWriter.h:193
Collection< OneMergePtr > pendingMerges
Definition: IndexWriter.h:154
An IndexWriter creates and maintains an index.
Definition: IndexWriter.h:90
boost::shared_ptr< Similarity > SimilarityPtr
Definition: LuceneTypes.h:435
static const int32_t DEFAULT_MAX_BUFFERED_DELETE_TERMS
Disabled by default (because IndexWriter flushes by RAM usage by default). Change using setMaxBuffere...
Definition: IndexWriter.h:226
DocumentsWriterPtr docWriter
Definition: IndexWriter.h:138
int64_t pendingCommitChangeCount
Definition: IndexWriter.h:202
IndexCommitPtr indexCommit
Definition: IndexWriter.h:123
int64_t changeCount
Definition: IndexWriter.h:127
HashSet< String > synced
Definition: IndexWriter.h:192
int32_t readCount
Used to only allow one addIndexes to proceed at once.
Definition: IndexWriter.h:164
boost::shared_ptr< IndexingChain > IndexingChainPtr
Definition: LuceneTypes.h:156
int32_t flushCount
Definition: IndexWriter.h:160
boost::shared_ptr< IndexCommit > IndexCommitPtr
Definition: LuceneTypes.h:152
static const int32_t MaxFieldLengthUNLIMITED
Sets the maximum field length to INT_MAX.
Definition: IndexWriter.h:240
clucene.sourceforge.net