@@ -23,9 +23,7 @@ use crate::postings::InvertedIndexSerializer;
2323use crate :: schema:: { value_type_to_column_type, Field , FieldType , Schema } ;
2424use crate :: store:: StoreWriter ;
2525use crate :: termdict:: { TermMerger , TermOrdinal } ;
26- use crate :: {
27- DocAddress , DocId , IndexSettings , IndexSortByField , Order , SegmentOrdinal ,
28- } ;
26+ use crate :: { DocAddress , DocId , IndexSettings , IndexSortByField , Order , SegmentOrdinal } ;
2927
3028/// Segment's max doc must be `< MAX_DOC_LIMIT`.
3129///
@@ -162,7 +160,14 @@ impl IndexMerger {
162160 ignore_store : bool ,
163161 ) -> crate :: Result < IndexMerger > {
164162 let alive_bitset = segments. iter ( ) . map ( |_| None ) . collect_vec ( ) ;
165- Self :: open_with_custom_alive_set ( schema, index_settings, segments, alive_bitset, cancel, ignore_store)
163+ Self :: open_with_custom_alive_set (
164+ schema,
165+ index_settings,
166+ segments,
167+ alive_bitset,
168+ cancel,
169+ ignore_store,
170+ )
166171 }
167172
168173 // Create merge with a custom delete set.
@@ -761,19 +766,19 @@ impl IndexMerger {
761766 // take 7 in order to not walk over all checkpoints.
762767 || store_reader. block_checkpoints ( ) . take ( 7 ) . count ( ) < 6
763768 || store_reader. decompressor ( ) != store_writer. compressor ( ) . into ( )
764- {
765- for doc_bytes_res in store_reader. iter_raw ( reader. alive_bitset ( ) ) {
766- if self . cancel . wants_cancel ( ) {
767- return Err ( crate :: TantivyError :: Cancelled ) ;
769+ {
770+ for doc_bytes_res in store_reader. iter_raw ( reader. alive_bitset ( ) ) {
771+ if self . cancel . wants_cancel ( ) {
772+ return Err ( crate :: TantivyError :: Cancelled ) ;
773+ }
774+ let doc_bytes = doc_bytes_res?;
775+ store_writer. store_bytes ( & doc_bytes) ?;
768776 }
769- let doc_bytes = doc_bytes_res? ;
770- store_writer. store_bytes ( & doc_bytes ) ?;
777+ } else {
778+ store_writer. stack ( store_reader ) ?;
771779 }
772- } else {
773- store_writer. stack ( store_reader) ?;
774780 }
775781 }
776- }
777782 Ok ( ( ) )
778783 }
779784
0 commit comments