#define LUCENE_CLASS(Name)
Definition LuceneObject.h:24
Utility template class to handle collections that can be safely copied and shared.
Definition Collection.h:17
Lucene exception container.
Definition LuceneException.h:15
Base class for all Lucene classes.
Definition LuceneObject.h:31
A MergePolicy determines the sequence of primitive merge operations to be used for overall merge and ...
Definition MergePolicy.h:32
virtual bool useCompoundDocStore(const SegmentInfosPtr &segments)=0
Returns true if the doc store files should use the compound file format.
virtual bool useCompoundFile(const SegmentInfosPtr &segments, const SegmentInfoPtr &newSegment)=0
Returns true if a newly flushed (not from merge) segment should use the compound file format.
virtual MergeSpecificationPtr findMergesToExpungeDeletes(const SegmentInfosPtr &segmentInfos)=0
Determine what set of merge operations is necessary in order to expunge all deletes from the index.
MergePolicy(const IndexWriterPtr &writer)
IndexWriterWeakPtr _writer
Definition MergePolicy.h:40
virtual void close()=0
Release all resources for the policy.
virtual MergeSpecificationPtr findMerges(const SegmentInfosPtr &segmentInfos)=0
Determine what set of merge operations are now necessary on the index. IndexWriter calls this wheneve...
virtual MergeSpecificationPtr findMergesForOptimize(const SegmentInfosPtr &segmentInfos, int32_t maxSegmentCount, SetSegmentInfo segmentsToOptimize)=0
Determine what set of merge operations is necessary in order to optimize the index....
A MergeSpecification instance provides the information necessary to perform multiple merges....
Definition MergePolicy.h:119
virtual ~MergeSpecification()
String segString(const DirectoryPtr &dir)
void add(const OneMergePtr &merge)
Collection< OneMergePtr > merges
Definition MergePolicy.h:127
OneMerge provides the information necessary to perform an individual primitive merge operation,...
Definition MergePolicy.h:76
bool isExternal
Definition MergePolicy.h:89
LuceneException getException()
Retrieve previous exception set by setException.
void setException(const LuceneException &error)
Record that an exception occurred while executing this merge.
Collection< SegmentReaderPtr > readers
Definition MergePolicy.h:91
LuceneException error
Definition MergePolicy.h:97
bool optimize
Definition MergePolicy.h:86
OneMerge(const SegmentInfosPtr &segments, bool useCompoundFile)
bool isAborted()
Returns true if this merge was aborted.
bool useCompoundFile
Definition MergePolicy.h:95
bool mergeDocStores
Definition MergePolicy.h:85
int64_t mergeGen
Definition MergePolicy.h:88
bool aborted
Definition MergePolicy.h:96
Collection< SegmentReaderPtr > readersClone
Definition MergePolicy.h:92
void abort()
Mark this merge as aborted. If this is called before the merge is committed then the merge will not b...
int32_t maxNumSegmentsOptimize
Definition MergePolicy.h:90
SegmentInfoPtr info
Definition MergePolicy.h:84
SegmentInfosPtr segments
Definition MergePolicy.h:94
bool registerDone
Definition MergePolicy.h:87
void checkAborted(const DirectoryPtr &dir)
String segString(const DirectoryPtr &dir)
Definition AbstractAllTermDocs.h:12
boost::weak_ptr< IndexWriter > IndexWriterWeakPtr
Definition LuceneTypes.h:160
boost::shared_ptr< OneMerge > OneMergePtr
Definition LuceneTypes.h:192
boost::shared_ptr< MergeSpecification > MergeSpecificationPtr
Definition LuceneTypes.h:176
boost::shared_ptr< SegmentInfo > SegmentInfoPtr
Definition LuceneTypes.h:208
boost::shared_ptr< Directory > DirectoryPtr
Definition LuceneTypes.h:489
boost::shared_ptr< SegmentInfos > SegmentInfosPtr
Definition LuceneTypes.h:210
boost::shared_ptr< IndexWriter > IndexWriterPtr
Definition LuceneTypes.h:160