File tree Expand file tree Collapse file tree 4 files changed +13
-0
lines changed
storage/src/hummock/sstable Expand file tree Collapse file tree 4 files changed +13
-0
lines changed Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ test = false
1212
1313[dependencies ]
1414anyhow = " 1"
15+ bincode = " 1"
1516bytes = " 1"
1617chrono = { workspace = true }
1718clap = { workspace = true }
Original file line number Diff line number Diff line change @@ -231,13 +231,19 @@ pub async fn sst_dump_via_sstable_store(
231231 . sstable ( & sstable_info, & mut StoreLocalStatistic :: default ( ) )
232232 . await ?;
233233 let sstable = sstable_cache. as_ref ( ) ;
234+ println ! ( "before ser/deser sst filter reader has_bloom_filter: {}" , sstable. has_bloom_filter( ) ) ;
235+ use bincode;
236+ let serialized_bytes: Vec < u8 > = bincode:: serialize ( & sstable) . expect ( "Failed to serialize" ) ;
237+ let deserialized_sstable: Sstable = bincode:: deserialize ( & serialized_bytes) . expect ( "Failed to deserialize" ) ;
238+ println ! ( "after ser/deser sst filter reader has_bloom_filter: {}" , deserialized_sstable. has_bloom_filter( ) ) ;
234239 let sstable_meta = & sstable. meta ;
235240 let smallest_key = FullKey :: decode ( & sstable_meta. smallest_key ) ;
236241 let largest_key = FullKey :: decode ( & sstable_meta. largest_key ) ;
237242
238243 println ! ( "SST object id: {}" , object_id) ;
239244 println ! ( "-------------------------------------" ) ;
240245 println ! ( "File Size: {}" , sstable. estimate_size( ) ) ;
246+ return Ok ( ( ) ) ;
241247
242248 println ! ( "Key Range:" ) ;
243249 println ! (
Original file line number Diff line number Diff line change @@ -148,8 +148,12 @@ impl Debug for Sstable {
148148
149149impl Sstable {
150150 pub fn new ( id : HummockSstableObjectId , mut meta : SstableMeta ) -> Self {
151+ println ! ( "Sstable::new bloom filter len {}" , meta. bloom_filter. len( ) ) ;
151152 let filter_data = std:: mem:: take ( & mut meta. bloom_filter ) ;
153+ println ! ( "Sstable::new filter_data len {}" , filter_data. len( ) ) ;
152154 let filter_reader = XorFilterReader :: new ( & filter_data, & meta. block_metas ) ;
155+ println ! ( "Sstable::new filter_reader is empty {}" , filter_reader. is_empty( ) ) ;
156+
153157 Self {
154158 id,
155159 meta,
@@ -399,6 +403,7 @@ impl SstableMeta {
399403 }
400404
401405 let bloom_filter = get_length_prefixed_slice ( buf) ;
406+ println ! ( "decode bloom filter len {}" , bloom_filter. len( ) ) ;
402407 let estimated_size = buf. get_u32_le ( ) ;
403408 let key_count = buf. get_u32_le ( ) ;
404409 let smallest_key = get_length_prefixed_slice ( buf) ;
You can’t perform that action at this time.
0 commit comments