From d13d5b86627384a7d3fb0bbdbfce1eb2ddee8f9f Mon Sep 17 00:00:00 2001 From: Paul Masurel Date: Tue, 31 Dec 2019 12:16:44 +0900 Subject: [PATCH] Removed access to index in IndexReader --- src/core/index.rs | 9 ++++----- src/reader/mod.rs | 21 +++++++++++++++------ 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/core/index.rs b/src/core/index.rs index bd340bb40..26d8750fd 100644 --- a/src/core/index.rs +++ b/src/core/index.rs @@ -471,7 +471,7 @@ mod tests { .try_into() .unwrap(); assert_eq!(reader.searcher().num_docs(), 0); - test_index_on_commit_reload_policy_aux(field, &index, &reader); + test_index_on_commit_reload_policy_aux(field, index.clone(), &index, &reader); } #[cfg(feature = "mmap")] @@ -495,7 +495,7 @@ mod tests { .try_into() .unwrap(); assert_eq!(reader.searcher().num_docs(), 0); - test_index_on_commit_reload_policy_aux(field, &index, &reader); + test_index_on_commit_reload_policy_aux(field, index.clone(), &index, &reader); } #[test] @@ -537,12 +537,11 @@ mod tests { .try_into() .unwrap(); assert_eq!(reader.searcher().num_docs(), 0); - test_index_on_commit_reload_policy_aux(field, &write_index, &reader); + test_index_on_commit_reload_policy_aux(field, read_index, &write_index, &reader); } } - fn test_index_on_commit_reload_policy_aux(field: Field, index: &Index, reader: &IndexReader) { - let mut reader_index = reader.index(); + fn test_index_on_commit_reload_policy_aux(field: Field, mut reader_index: Index, index: &Index, reader: &IndexReader) { let (sender, receiver) = crossbeam::channel::unbounded(); let _watch_handle = reader_index.directory_mut().watch(Box::new(move || { let _ = sender.send(()); diff --git a/src/reader/mod.rs b/src/reader/mod.rs index ce6e32b87..247154c87 100644 --- a/src/reader/mod.rs +++ b/src/reader/mod.rs @@ -10,7 +10,21 @@ use crate::Index; use crate::Result; use crate::Searcher; use crate::SegmentReader; -use std::sync::Arc; +use std::sync::{Arc, RwLock}; + + +// +//enum SegmentSource { +// FromMetaFile, +// FromWriter(Arc>), +//} +// +//impl SegmentSource { +// fn from_meta_file() -> SegmentSource { +// +// } +// +//} /// Defines when a new version of the index should be reloaded. /// @@ -171,11 +185,6 @@ pub struct IndexReader { } impl IndexReader { - #[cfg(test)] - pub(crate) fn index(&self) -> Index { - self.inner.index.clone() - } - /// Update searchers so that they reflect the state of the last /// `.commit()`. ///