1
1
use std:: fs:: File ;
2
2
3
3
use 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 ,
9
9
} ;
10
10
11
11
use crate :: * ;
@@ -70,18 +70,16 @@ impl Log {
70
70
// here because it might not still
71
71
// exist in the inline log.
72
72
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
+ } )
85
83
}
86
84
}
87
85
@@ -129,43 +127,13 @@ impl Log {
129
127
/// completed or aborted later. Useful for maintaining
130
128
/// linearizability across CAS operations that may need to
131
129
/// persist part of their operation.
132
- #[ allow( unused) ]
133
130
pub fn reserve < T : Serialize + Debug > (
134
131
& self ,
135
132
log_kind : LogKind ,
136
133
pid : PageId ,
137
134
item : & T ,
138
135
guard : & Guard ,
139
136
) -> 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
-
169
137
let ret = self . reserve_inner ( log_kind, pid, item, None , guard) ;
170
138
171
139
if let Err ( e) = & ret {
@@ -860,7 +828,7 @@ pub(crate) fn read_message<R: ReadAt>(
860
828
assert_eq ! ( buf. len( ) , 16 ) ;
861
829
let heap_id = HeapId :: deserialize ( & mut & buf[ ..] ) . unwrap ( ) ;
862
830
863
- match config. heap . read ( heap_id, config . use_compression ) {
831
+ match config. heap . read ( heap_id) {
864
832
Ok ( ( kind, buf2) ) => {
865
833
assert_eq ! ( header. kind, kind) ;
866
834
trace ! (
@@ -883,10 +851,7 @@ pub(crate) fn read_message<R: ReadAt>(
883
851
| MessageKind :: Free
884
852
| MessageKind :: Counter => {
885
853
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) )
890
855
}
891
856
MessageKind :: BatchManifest => {
892
857
assert_eq ! ( buf. len( ) , std:: mem:: size_of:: <Lsn >( ) ) ;
0 commit comments