Fork me on GitHub
  • API

    Show / Hide Table of Contents

    Class SortingMergePolicy

    A Lucene.Net.Index.MergePolicy that reorders documents according to a Lucene.Net.Search.Sort before merging them. As a consequence, all segments resulting from a merge will be sorted while segments resulting from a flush will be in the order in which documents have been added.

    NOTE: Never use this policy if you rely on AddDocuments(IEnumerable<IEnumerable<IIndexableField>>, Analyzer) to have sequentially-assigned doc IDs, this policy will scatter doc IDs.

    NOTE: This policy should only be used with idempotent Lucene.Net.Search.Sorts so that the order of segments is predictable. For example, using INDEXORDER in reverse (which is not idempotent) will make the order of documents in a segment depend on the number of times the segment has been merged.

    Note

    This API is experimental and might change in incompatible ways in the next release.

    Inheritance
    System.Object
    Lucene.Net.Index.MergePolicy
    SortingMergePolicy
    Implements
    System.IDisposable
    Inherited Members
    Lucene.Net.Index.MergePolicy.DEFAULT_NO_CFS_RATIO
    Lucene.Net.Index.MergePolicy.DEFAULT_MAX_CFS_SEGMENT_SIZE
    Lucene.Net.Index.MergePolicy.m_writer
    Lucene.Net.Index.MergePolicy.m_noCFSRatio
    Lucene.Net.Index.MergePolicy.m_maxCFSSegmentSize
    Lucene.Net.Index.MergePolicy.Dispose()
    Lucene.Net.Index.MergePolicy.Size(Lucene.Net.Index.SegmentCommitInfo)
    Lucene.Net.Index.MergePolicy.IsMerged(Lucene.Net.Index.SegmentInfos, Lucene.Net.Index.SegmentCommitInfo)
    Lucene.Net.Index.MergePolicy.NoCFSRatio
    Lucene.Net.Index.MergePolicy.MaxCFSSegmentSizeMB
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    Namespace: Lucene.Net.Index.Sorter
    Assembly: Lucene.Net.Misc.dll
    Syntax
    public sealed class SortingMergePolicy : MergePolicy, IDisposable

    Constructors

    | Improve this Doc View Source

    SortingMergePolicy(MergePolicy, Sort)

    Create a new Lucene.Net.Index.MergePolicy that sorts documents with the given sort.

    Declaration
    public SortingMergePolicy(MergePolicy in, Sort sort)
    Parameters
    Type Name Description
    Lucene.Net.Index.MergePolicy in
    Lucene.Net.Search.Sort sort

    Fields

    | Improve this Doc View Source

    SORTER_ID_PROP

    Put in the Diagnostics to denote that this segment is sorted.

    Declaration
    public static readonly string SORTER_ID_PROP
    Field Value
    Type Description
    System.String

    Methods

    | Improve this Doc View Source

    Clone()

    Declaration
    public override object Clone()
    Returns
    Type Description
    System.Object
    Overrides
    Lucene.Net.Index.MergePolicy.Clone()
    | Improve this Doc View Source

    Dispose(Boolean)

    Declaration
    protected override void Dispose(bool disposing)
    Parameters
    Type Name Description
    System.Boolean disposing
    Overrides
    MergePolicy.Dispose(Boolean)
    | Improve this Doc View Source

    FindForcedDeletesMerges(SegmentInfos)

    Declaration
    public override MergePolicy.MergeSpecification FindForcedDeletesMerges(SegmentInfos segmentInfos)
    Parameters
    Type Name Description
    Lucene.Net.Index.SegmentInfos segmentInfos
    Returns
    Type Description
    Lucene.Net.Index.MergePolicy.MergeSpecification
    Overrides
    Lucene.Net.Index.MergePolicy.FindForcedDeletesMerges(Lucene.Net.Index.SegmentInfos)
    | Improve this Doc View Source

    FindForcedMerges(SegmentInfos, Int32, IDictionary<SegmentCommitInfo, Boolean>)

    Declaration
    public override MergePolicy.MergeSpecification FindForcedMerges(SegmentInfos segmentInfos, int maxSegmentCount, IDictionary<SegmentCommitInfo, bool> segmentsToMerge)
    Parameters
    Type Name Description
    Lucene.Net.Index.SegmentInfos segmentInfos
    System.Int32 maxSegmentCount
    System.Collections.Generic.IDictionary<Lucene.Net.Index.SegmentCommitInfo, System.Boolean> segmentsToMerge
    Returns
    Type Description
    Lucene.Net.Index.MergePolicy.MergeSpecification
    Overrides
    MergePolicy.FindForcedMerges(SegmentInfos, Int32, IDictionary<SegmentCommitInfo, Boolean>)
    | Improve this Doc View Source

    FindMerges(MergeTrigger, SegmentInfos)

    Declaration
    public override MergePolicy.MergeSpecification FindMerges(MergeTrigger mergeTrigger, SegmentInfos segmentInfos)
    Parameters
    Type Name Description
    Lucene.Net.Index.MergeTrigger mergeTrigger
    Lucene.Net.Index.SegmentInfos segmentInfos
    Returns
    Type Description
    Lucene.Net.Index.MergePolicy.MergeSpecification
    Overrides
    Lucene.Net.Index.MergePolicy.FindMerges(Lucene.Net.Index.MergeTrigger, Lucene.Net.Index.SegmentInfos)
    | Improve this Doc View Source

    IsSorted(AtomicReader, Sort)

    Returns true if the given reader is sorted by the specified sort.

    Declaration
    public static bool IsSorted(AtomicReader reader, Sort sort)
    Parameters
    Type Name Description
    Lucene.Net.Index.AtomicReader reader
    Lucene.Net.Search.Sort sort
    Returns
    Type Description
    System.Boolean
    | Improve this Doc View Source

    SetIndexWriter(IndexWriter)

    Declaration
    public override void SetIndexWriter(IndexWriter writer)
    Parameters
    Type Name Description
    Lucene.Net.Index.IndexWriter writer
    Overrides
    Lucene.Net.Index.MergePolicy.SetIndexWriter(Lucene.Net.Index.IndexWriter)
    | Improve this Doc View Source

    ToString()

    Declaration
    public override string ToString()
    Returns
    Type Description
    System.String
    Overrides
    System.Object.ToString()
    | Improve this Doc View Source

    UseCompoundFile(SegmentInfos, SegmentCommitInfo)

    Declaration
    public override bool UseCompoundFile(SegmentInfos segments, SegmentCommitInfo newSegment)
    Parameters
    Type Name Description
    Lucene.Net.Index.SegmentInfos segments
    Lucene.Net.Index.SegmentCommitInfo newSegment
    Returns
    Type Description
    System.Boolean
    Overrides
    Lucene.Net.Index.MergePolicy.UseCompoundFile(Lucene.Net.Index.SegmentInfos, Lucene.Net.Index.SegmentCommitInfo)

    Implements

    System.IDisposable
    • Improve this Doc
    • View Source
    Back to top Copyright © 2022 The Apache Software Foundation, Licensed under the Apache License, Version 2.0
    Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation.
    All other marks mentioned may be trademarks or registered trademarks of their respective owners.