bug/4 not compiling

This commit is contained in:
Paul Masurel
2016-09-27 23:23:28 +09:00
parent 76e1237b81
commit 3d4293346a
2 changed files with 6 additions and 10 deletions

View File

@@ -171,8 +171,7 @@ impl Index {
// TODO find a rusty way to hide that, while keeping
// it visible for IndexWriters.
pub fn commit(&mut self,
segment_metas: &[SegmentMeta],
docstamp: u64) -> Result<()> {
docstamp: u64) -> Result<()> {
self.docstamp = docstamp;
for segment_meta in segment_metas {
self.uncommitted_segments.remove_segment(&segment_meta.segment_id);

View File

@@ -50,7 +50,7 @@ pub struct IndexWriter {
heap_size_in_bytes_per_thread: usize,
workers_join_handle: Vec<JoinHandle<()>>,
segment_ready_sender: NewSegmentSender,
segment_ready_consumer: JoinHandle<Result<Vec<SegmentMeta>>>,
segment_ready_consumer: JoinHandle<Result<()>>,
document_receiver: DocumentReceiver,
document_sender: DocumentSender,
num_threads: usize,
@@ -59,7 +59,7 @@ pub struct IndexWriter {
fn create_segment_consumer(
segment_queue: chan::Receiver<Result<SegmentMeta>>,
segment_register: Arc<SegmentRegister>) -> JoinHandle<Result<Vec<SegmentMeta>>> {
segment_register: Arc<SegmentRegister>) -> JoinHandle<Result<()>> {
thread::spawn(move || {
let mut segment_metas = Vec::new();
for segment_meta_res in segment_queue {
@@ -281,17 +281,14 @@ impl IndexWriter {
// add a new worker for the next generation.
try!(self.add_indexing_worker());
}
let segment_metas_result = try!(
segment_ready_receiver
.join()
.map_err(|e| super::super::error::Error::ErrorInThread(String::from("Joining receiver thread failed while committing.")))
);
let segment_metas: Vec<SegmentMeta> = try!(segment_metas_result);
try!(self.index.commit(&segment_metas, commit_docstamp));
try!(segment_metas_result);
try!(self.index.commit(commit_docstamp));
Ok(commit_docstamp)
}