diff --git a/fastfield_codecs/src/null_index/sparse.rs b/fastfield_codecs/src/null_index/sparse.rs index 96ca0517f..591d78078 100644 --- a/fastfield_codecs/src/null_index/sparse.rs +++ b/fastfield_codecs/src/null_index/sparse.rs @@ -160,7 +160,7 @@ fn deserialize_sparse_codec_block(data: &OwnedBytes) -> Vec. - use std::io; use std::num::NonZeroU64; use std::sync::Arc; diff --git a/src/postings/serializer.rs b/src/postings/serializer.rs index 6afa6edce..8eed14a43 100644 --- a/src/postings/serializer.rs +++ b/src/postings/serializer.rs @@ -213,21 +213,21 @@ impl<'a> FieldSerializer<'a> { fail_point!("FieldSerializer::close_term", |msg: Option| { Err(io::Error::new(io::ErrorKind::Other, format!("{:?}", msg))) }); - if self.term_open { - self.postings_serializer - .close_term(self.current_term_info.doc_freq)?; - self.current_term_info.postings_range.end = - self.postings_serializer.written_bytes() as usize; - - if let Some(positions_serializer) = self.positions_serializer_opt.as_mut() { - positions_serializer.close_term()?; - self.current_term_info.positions_range.end = - positions_serializer.written_bytes() as usize; - } - self.term_dictionary_builder - .insert_value(&self.current_term_info)?; - self.term_open = false; + if !self.term_open { + return Ok(()); } + self.postings_serializer + .close_term(self.current_term_info.doc_freq)?; + self.current_term_info.postings_range.end = + self.postings_serializer.written_bytes() as usize; + if let Some(positions_serializer) = self.positions_serializer_opt.as_mut() { + positions_serializer.close_term()?; + self.current_term_info.positions_range.end = + positions_serializer.written_bytes() as usize; + } + self.term_dictionary_builder + .insert_value(&self.current_term_info)?; + self.term_open = false; Ok(()) } diff --git a/src/query/range_query_ip_fastfield.rs b/src/query/range_query_ip_fastfield.rs index 175d0f4a9..52be80e5d 100644 --- a/src/query/range_query_ip_fastfield.rs +++ b/src/query/range_query_ip_fastfield.rs @@ -126,7 +126,7 @@ impl VecCursor { } #[inline] fn current(&self) -> Option { - self.docs.get(self.current_pos).map(|el| *el) + self.docs.get(self.current_pos).copied() } fn get_cleared_data(&mut self) -> &mut Vec { self.docs.clear(); @@ -282,7 +282,6 @@ impl DocSet for IpRangeDocSet { fn doc(&self) -> DocId { self.loaded_docs .current() - .map(|el| el) .unwrap_or(TERMINATED) }