11use std:: fs:: File ;
22
33use super :: {
4- arr_to_lsn, arr_to_u32, assert_usize, decompress , header, iobuf,
5- lsn_to_arr , pread_exact, pread_exact_or_eof, roll_iobuf, u32_to_arr, Arc ,
6- BasedBuf , DiskPtr , HeapId , IoBuf , IoBufs , LogKind , LogOffset , Lsn ,
7- MessageKind , Reservation , Serialize , Snapshot , BATCH_MANIFEST_PID ,
8- COUNTER_PID , MAX_MSG_HEADER_LEN , META_PID , SEG_HEADER_LEN ,
4+ arr_to_lsn, arr_to_u32, assert_usize, header, iobuf, lsn_to_arr ,
5+ pread_exact, pread_exact_or_eof, roll_iobuf, u32_to_arr, Arc , BasedBuf ,
6+ DiskPtr , HeapId , IoBuf , IoBufs , LogKind , LogOffset , Lsn , MessageKind ,
7+ Reservation , Serialize , Snapshot , BATCH_MANIFEST_PID , COUNTER_PID ,
8+ MAX_MSG_HEADER_LEN , META_PID , SEG_HEADER_LEN ,
99} ;
1010
1111use crate :: * ;
@@ -70,18 +70,16 @@ impl Log {
7070 // here because it might not still
7171 // exist in the inline log.
7272 let heap_id = ptr. heap_id ( ) . unwrap ( ) ;
73- self . config . heap . read ( heap_id, self . config . use_compression ) . map (
74- |( kind, buf) | {
75- let header = MessageHeader {
76- kind,
77- pid,
78- segment_number : expected_segment_number,
79- crc32 : 0 ,
80- len : 0 ,
81- } ;
82- LogRead :: Heap ( header, buf, heap_id, 0 )
83- } ,
84- )
73+ self . config . heap . read ( heap_id) . map ( |( kind, buf) | {
74+ let header = MessageHeader {
75+ kind,
76+ pid,
77+ segment_number : expected_segment_number,
78+ crc32 : 0 ,
79+ len : 0 ,
80+ } ;
81+ LogRead :: Heap ( header, buf, heap_id, 0 )
82+ } )
8583 }
8684 }
8785
@@ -129,43 +127,13 @@ impl Log {
129127 /// completed or aborted later. Useful for maintaining
130128 /// linearizability across CAS operations that may need to
131129 /// persist part of their operation.
132- #[ allow( unused) ]
133130 pub fn reserve < T : Serialize + Debug > (
134131 & self ,
135132 log_kind : LogKind ,
136133 pid : PageId ,
137134 item : & T ,
138135 guard : & Guard ,
139136 ) -> Result < Reservation < ' _ > > {
140- #[ cfg( feature = "compression" ) ]
141- {
142- if self . config . use_compression && pid != BATCH_MANIFEST_PID {
143- use zstd:: bulk:: compress;
144-
145- let buf = item. serialize ( ) ;
146-
147- #[ cfg( feature = "metrics" ) ]
148- let _measure = Measure :: new ( & M . compress ) ;
149-
150- let compressed_buf =
151- compress ( & buf, self . config . compression_factor ) . unwrap ( ) ;
152-
153- let ret = self . reserve_inner (
154- log_kind,
155- pid,
156- & IVec :: from ( compressed_buf) ,
157- None ,
158- guard,
159- ) ;
160-
161- if let Err ( e) = & ret {
162- self . iobufs . set_global_error ( * e) ;
163- }
164-
165- return ret;
166- }
167- }
168-
169137 let ret = self . reserve_inner ( log_kind, pid, item, None , guard) ;
170138
171139 if let Err ( e) = & ret {
@@ -860,7 +828,7 @@ pub(crate) fn read_message<R: ReadAt>(
860828 assert_eq ! ( buf. len( ) , 16 ) ;
861829 let heap_id = HeapId :: deserialize ( & mut & buf[ ..] ) . unwrap ( ) ;
862830
863- match config. heap . read ( heap_id, config . use_compression ) {
831+ match config. heap . read ( heap_id) {
864832 Ok ( ( kind, buf2) ) => {
865833 assert_eq ! ( header. kind, kind) ;
866834 trace ! (
@@ -883,10 +851,7 @@ pub(crate) fn read_message<R: ReadAt>(
883851 | MessageKind :: Free
884852 | MessageKind :: Counter => {
885853 trace ! ( "read a successful inline message" ) ;
886- let buf2 =
887- if config. use_compression { decompress ( buf) } else { buf } ;
888-
889- Ok ( LogRead :: Inline ( header, buf2, inline_len) )
854+ Ok ( LogRead :: Inline ( header, buf, inline_len) )
890855 }
891856 MessageKind :: BatchManifest => {
892857 assert_eq ! ( buf. len( ) , std:: mem:: size_of:: <Lsn >( ) ) ;
0 commit comments