LCOV - code coverage report
Current view:
top level
-
pageserver/src/tenant/timeline
- compaction.rs
(
source
/ functions)
Coverage
Total
Hit
Test:
4f58e98c51285c7fa348e0b410c88a10caf68ad2.info
Lines:
60.8 %
2037
1239
Test Date:
2025-01-07 20:58:07
Functions:
43.5 %
147
64
Function Name
Hit count
<<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::Hole as core::cmp::Ord>::cmp
0
<<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::Hole as core::cmp::PartialOrd>::partial_cmp
0
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#15}
0
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#3}
0
<pageserver::tenant::timeline::Timeline>::compact_shard_ancestors
0
<pageserver::tenant::timeline::Timeline>::compact_shard_ancestors::{closure#0}
0
<pageserver::tenant::timeline::Timeline>::compact_tiered
0
<pageserver::tenant::timeline::Timeline>::compact_tiered::{closure#0}
0
<pageserver::tenant::timeline::Timeline>::compact_tiered::{closure#0}::{closure#0}
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs::{closure#0}
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs::{closure#0}::truncate_to
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs::{closure#0}::{closure#0}
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs::{closure#0}::{closure#1}
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs::{closure#0}::{closure#2}
0
<pageserver::tenant::timeline::Timeline>::gc_compaction_split_jobs::{closure#0}::{closure#3}
0
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::generate_debug_trace
0
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::generate_debug_trace::{closure#0}
0
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::generate_history_trace
0
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::{closure#1}
0
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::{closure#2}
0
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::{closure#3}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#0}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#10}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#11}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#12}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#1}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#2}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#3}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#4}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#5}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#6}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#7}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#8}
0
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from::{closure#9}
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::delta_layer::DeltaLayer> as core::ops::deref::Deref>::deref
0
as core::ops::deref::Deref>::deref
0
as core::ops::deref::Deref>::deref
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::delta_layer::DeltaLayer> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::file_size
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::delta_layer::DeltaLayer> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::is_delta
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::delta_layer::DeltaLayer> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::key_range
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::delta_layer::DeltaLayer> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::lsn_range
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::delta_layer::DeltaLayer> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::short_id
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc> as core::convert::AsRef<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc>>::as_ref
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::file_size
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::is_delta
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::key_range
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::lsn_range
0
<pageserver::tenant::timeline::compaction::OwnArc<pageserver::tenant::storage_layer::layer_desc::PersistentLayerDesc> as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::short_id
0
<pageserver::tenant::timeline::compaction::ResidentDeltaLayer as pageserver_compaction::interface::CompactionDeltaLayer<pageserver::tenant::timeline::compaction::TimelineAdaptor>>::load_keys
0
>::load_keys
0
>::load_keys::{closure#0}
0
<pageserver::tenant::timeline::compaction::ResidentDeltaLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::file_size
0
<pageserver::tenant::timeline::compaction::ResidentDeltaLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::is_delta
0
<pageserver::tenant::timeline::compaction::ResidentDeltaLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::key_range
0
<pageserver::tenant::timeline::compaction::ResidentDeltaLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::lsn_range
0
<pageserver::tenant::timeline::compaction::ResidentDeltaLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::short_id
0
<pageserver::tenant::timeline::compaction::ResidentImageLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::file_size
0
<pageserver::tenant::timeline::compaction::ResidentImageLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::is_delta
0
<pageserver::tenant::timeline::compaction::ResidentImageLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::key_range
0
<pageserver::tenant::timeline::compaction::ResidentImageLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::lsn_range
0
<pageserver::tenant::timeline::compaction::ResidentImageLayer as pageserver_compaction::interface::CompactionLayer<pageserver_api::key::Key>>::short_id
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::create_delta
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::create_delta::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::create_delta::{closure#0}::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::create_delta::{closure#0}::{closure#3}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::create_image
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::create_image::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::delete_layer
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::delete_layer::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::downcast_delta_layer
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::downcast_delta_layer::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::get_keyspace
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::get_keyspace::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::get_layers
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::get_layers::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::get_layers::{closure#0}::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor as pageserver_compaction::interface::CompactionJobExecutor>::get_shard_identity
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor>::create_image_impl
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor>::create_image_impl::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor>::create_image_impl::{closure#0}::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor>::flush_updates
0
::flush_updates
0
::flush_updates::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor>::flush_updates::{closure#0}::{closure#0}
0
<pageserver::tenant::timeline::compaction::TimelineAdaptor>::new
0
<pageserver::tenant::timeline::compaction::CompactionStatistics>::discard_image_layer
8
<pageserver::tenant::timeline::compaction::GcCompactJob>::from_compact_options::{closure#1}
10
<pageserver::tenant::timeline::compaction::CompactionStatistics>::discard_delta_layer
14
<pageserver::tenant::timeline::compaction::GcCompactJob>::from_compact_options::{closure#0}
16
<pageserver::tenant::timeline::compaction::CompactionStatistics>::produce_delta_layer
22
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#7}
28
<pageserver::tenant::timeline::compaction::CompactLevel0Phase1Stats as core::convert::TryFrom<pageserver::tenant::timeline::compaction::CompactLevel0Phase1StatsBuilder>>::try_from
28
<pageserver::tenant::timeline::compaction::CompactionStatistics>::produce_image_layer
30
<pageserver::tenant::timeline::Timeline>::check_compaction_space
52
<pageserver::tenant::timeline::Timeline>::check_compaction_space::{closure#0}
52
<pageserver::tenant::timeline::Timeline>::compact_with_gc
54
<pageserver::tenant::timeline::Timeline>::compact_with_gc::{closure#0}
54
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner
54
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}
54
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#0}
54
<pageserver::tenant::timeline::Timeline>::get_gc_compaction_watermark
54
<pageserver::tenant::timeline::compaction::GcCompactJob>::from_compact_options
54
<pageserver::tenant::timeline::compaction::CompactionStatistics>::visit_image_layer
66
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#7}
74
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#7}::{closure#0}
74
<pageserver::tenant::timeline::compaction::CompactionStatistics>::visit_delta_layer
86
<pageserver::tenant::timeline::Timeline>::check_available_space
104
::check_available_space
52
::check_available_space::{closure#0}
52
<pageserver::tenant::timeline::compaction::KeyHistoryRetention>::discard_key
148
::discard_key
74
::discard_key::{closure#0}
74
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#5}
152
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#6}
152
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#8}
152
<pageserver::tenant::timeline::compaction::CompactionStatistics>::produce_wal_key
192
<pageserver::tenant::timeline::Timeline>::update_layer_visibility
202
<pageserver::tenant::timeline::Timeline>::update_layer_visibility::{closure#0}
202
<pageserver::tenant::timeline::compaction::CompactionStatistics>::produce_key
202
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#2}
208
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#9}
214
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#4}
226
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::{closure#4}
230
<pageserver::tenant::timeline::compaction::CompactionStatistics>::visit_wal_key
240
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#1}
244
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::{closure#3}
244
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#6}
308
<pageserver::tenant::timeline::Timeline>::compact_legacy
364
<pageserver::tenant::timeline::Timeline>::compact_legacy::{closure#0}
364
<pageserver::tenant::timeline::Timeline>::compact_level0
364
<pageserver::tenant::timeline::Timeline>::compact_level0::{closure#0}
364
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1
364
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}
364
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#0}
402
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#8}
402
<pageserver::tenant::timeline::compaction::CompactionStatistics>::produce_image_key
594
<pageserver::tenant::timeline::compaction::CompactionStatistics>::visit_image_key
610
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::get_ancestor_image
622
<pageserver::tenant::timeline::Timeline>::compact_with_gc_inner::{closure#0}::get_ancestor_image::{closure#0}
622
<pageserver::tenant::timeline::compaction::CompactionStatistics>::on_unique_key_visited
622
<pageserver::tenant::timeline::compaction::KeyHistoryRetention>::pipe_to
622
<pageserver::tenant::timeline::compaction::KeyHistoryRetention>::pipe_to::{closure#0}
622
<pageserver::tenant::timeline::Timeline>::generate_key_retention
630
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}
630
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#1}
748
<pageserver::tenant::timeline::Timeline>::generate_key_retention::{closure#0}::{closure#0}
900
<pageserver::tenant::timeline::compaction::CompactionStatistics>::estimated_size_of_value
1042
<pageserver::tenant::timeline::compaction::CompactionStatistics>::estimated_size_of_key
1636
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#5}
2064010
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#4}
2064038
<pageserver::tenant::timeline::Timeline>::compact_level0_phase1::{closure#0}::{closure#2}
4423784
Generated by:
LCOV version 2.1-beta