NOBUG introduced DefaultMergePolicy type

This commit is contained in:
Paul Masurel
2016-10-24 22:41:14 +09:00
parent 1f5ed8a2b6
commit 99ca43fd22
3 changed files with 13 additions and 4 deletions

View File

@@ -12,8 +12,16 @@ pub trait MergePolicy: marker::Send {
pub struct NoMergePolicy;
impl Default for NoMergePolicy {
fn default() -> NoMergePolicy {
NoMergePolicy
}
}
impl MergePolicy for NoMergePolicy {
fn compute_merge_candidates(&self, segments: &[SegmentMeta]) -> Vec<MergeCandidate> {
fn compute_merge_candidates(&self, _segments: &[SegmentMeta]) -> Vec<MergeCandidate> {
Vec::new()
}
}
}

View File

@@ -17,3 +17,4 @@ pub use self::simple_merge_policy::SimpleMergePolicy;
pub use self::merge_policy::{NoMergePolicy, MergeCandidate, MergePolicy};
pub use self::segment_manager::SegmentManager;
pub type DefaultMergePolicy = SimpleMergePolicy;

View File

@@ -6,7 +6,7 @@ use core::Segment;
use core::SegmentId;
use core::SegmentMeta;
use core::SerializableSegment;
use indexer::{MergePolicy, SimpleMergePolicy};
use indexer::{DefaultMergePolicy, MergePolicy};
use indexer::index_writer::save_metas;
use indexer::MergeCandidate;
use indexer::merger::IndexMerger;
@@ -108,7 +108,7 @@ impl SegmentUpdater {
segment_update_sender: segment_update_sender,
segment_update_receiver: segment_update_receiver,
segment_manager_arc: segment_manager_arc,
merge_policy: Box::new(SimpleMergePolicy::default()), // TODO make that configurable
merge_policy: Box::new(DefaultMergePolicy::default()), // TODO make that configurable
merging_thread_id: 0,
merging_threads: HashMap::new(),
}