LCOV - differential code coverage report
Current view: top level - pageserver/src/tenant - config.rs (source / functions) Coverage Total Hit UBC CBC
Current: f6946e90941b557c917ac98cd5a7e9506d180f3e.info Lines: 82.4 % 239 197 42 197
Current Date: 2023-10-19 02:04:12 Functions: 32.6 % 236 77 159 77
Baseline: c8637f37369098875162f194f92736355783b050.info
Baseline Date: 2023-10-18 20:25:20

Function Name Sort by function name TLA Hit count Sort by function hit count
<pageserver::tenant::config::LocationConf as core::fmt::Debug>::fmt UBC 0
<pageserver::tenant::config::LocationConf>::try_from UBC 0
<pageserver::tenant::config::LocationConf>::try_from::get_generation UBC 0
<pageserver::tenant::config::LocationConf>::try_from::get_generation::{closure#0} UBC 0
<pageserver::tenant::config::LocationConf>::try_from::{closure#0} UBC 0
<pageserver::tenant::config::SecondaryLocationConfig as core::fmt::Debug>::fmt UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: UBC 0
::clone UBC 0
::eq UBC 0
::fmt UBC 0
::deserialize:: UBC 0
::serialize:: UBC 0
pageserver::tenant::config::bad_duration::{closure#0} UBC 0
pageserver::tenant::config::tests::de_serializing_pageserver_config_omits_empty_values CBC 1
pageserver::tenant::config::tests::de_serializing_pageserver_config_omits_empty_values::{closure#0} CBC 1
<pageserver::tenant::config::LocationConf as core::default::Default>::default CBC 4
<pageserver::tenant::config::LocationMode as core::fmt::Debug>::fmt CBC 83
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum::> UBC 0
::clone UBC 0
::eq UBC 0
::fmt UBC 0
::deserialize::> UBC 0
::deserialize::> UBC 0
::deserialize::> UBC 0
::serialize:: UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> CBC 14
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 14
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum:: CBC 14
::deserialize:: CBC 14
::serialize:: CBC 27
<pageserver::tenant::config::EvictionPolicy as core::fmt::Debug>::fmt CBC 98
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
::clone UBC 0
::fmt UBC 0
::deserialize::<&mut serde_json::de::Deserializer> UBC 0
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> UBC 0
::serialize:: UBC 0
::eq CBC 2
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<&serde_json::value::Value> CBC 6
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 6
::deserialize::<&serde_json::value::Value> CBC 6
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: CBC 7
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 7
::deserialize:: CBC 7
::serialize:: CBC 8
::serialize:: CBC 49
<pageserver::tenant::config::LocationConf as core::cmp::PartialEq>::eq CBC 111
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: UBC 0
::clone UBC 0
::eq UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: CBC 14
::deserialize:: CBC 14
::serialize:: CBC 27
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: CBC 28
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 28
<pageserver::tenant::config::EvictionPolicyLayerAccessThreshold as core::fmt::Debug>::fmt CBC 171
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::> UBC 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes:: UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes:: UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64:: UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, >::new>, serde_json::error::Error>> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, >::new>, serde_json::error::Error>>::{closure#0} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, >::new>, serde_json::error::Error>>::{closure#1} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, >::new>, toml_edit::de::Error>> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, >::new>, toml_edit::de::Error>>::{closure#0} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, >::new>, toml_edit::de::Error>>::{closure#1} UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::, serde_json::ser::CompactFormatter>> UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: UBC 0
::clone UBC 0
::eq UBC 0
::fmt UBC 0
::serialize::>>> UBC 0
::serialize::> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::<&mut serde::de::value::MapDeserializer, serde::__private::de::content::visit_content_map<::deserialize::__Visitor, serde_json::error::Error>::{closure#0}>, serde_json::error::Error>> CBC 5
::deserialize::> CBC 5
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::<&mut serde::de::value::MapDeserializer, serde::__private::de::content::visit_content_map<::deserialize::__Visitor, toml_edit::de::Error>::{closure#0}>, toml_edit::de::Error>> CBC 7
::deserialize::> CBC 7
::serialize::> CBC 7
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> CBC 10
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> CBC 10
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 10
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> CBC 14
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> CBC 14
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 14
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: CBC 14
::serialize::> CBC 18
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: CBC 36
<pageserver::tenant::config::LocationConf>::attach_in_generation CBC 215
<pageserver::tenant::config::AttachedLocationConfig>::may_upload_layers_hint CBC 241
<pageserver::tenant::config::TenantConf as core::fmt::Debug>::fmt CBC 322
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::<_> UBC 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::<_> UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#0} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#1} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#2} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#3} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#4} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#5} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#6} UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: UBC 0
::clone UBC 0
::fmt UBC 0
::deserialize::<_> UBC 0
::eq CBC 2
::serialize:: CBC 40
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: CBC 280
pageserver::tenant::config::bad_duration CBC 352
<pageserver::tenant::config::TenantConfOpt as core::convert::TryFrom<&pageserver_api::models::TenantConfig>>::try_from CBC 532
<pageserver::tenant::config::AttachedLocationConfig>::may_delete_layers_hint CBC 647
<pageserver::tenant::config::LocationConf>::attached_single CBC 762
<pageserver::tenant::config::AttachmentMode as core::fmt::Debug>::fmt CBC 831
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum:: UBC 0
::eq UBC 0
::fmt UBC 0
::deserialize::> UBC 0
::deserialize::> UBC 0
::deserialize::> UBC 0
::serialize:: UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> CBC 14
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 14
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum::> CBC 14
::deserialize:: CBC 14
::serialize:: CBC 27
::clone CBC 748
<pageserver::tenant::config::AttachedLocationConfig as core::fmt::Debug>::fmt CBC 859
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: UBC 0
::eq UBC 0
::fmt UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: CBC 14
::deserialize:: CBC 14
::serialize:: CBC 27
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: CBC 28
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 28
::clone CBC 748
<pageserver::tenant::config::EvictionPolicy>::discriminant_str CBC 931
<pageserver::tenant::config::TenantConfOpt>::merge CBC 958
<pageserver::tenant::config::TenantConf as core::default::Default>::default CBC 1923
<pageserver::tenant::config::TenantConfOpt as core::fmt::Debug>::fmt CBC 4342
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> UBC 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> UBC 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> UBC 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> UBC 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize:: UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> UBC 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::> UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#0} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#1} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#2} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#3} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#4} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#5} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#6} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#0} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#1} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#2} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#3} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#4} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#5} UBC 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#6} UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::, serde_json::ser::CompactFormatter>> UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: UBC 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: UBC 0
::clone UBC 0
::fmt UBC 0
::deserialize::> UBC 0
::deserialize::> UBC 0
::deserialize::> UBC 0
::serialize:: UBC 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> CBC 1
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 1
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> CBC 1
::deserialize::<&mut serde_json::de::Deserializer> CBC 1
::deserialize:: CBC 1
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> CBC 1
::eq CBC 2
::deserialize:: CBC 14
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: CBC 15
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize:: CBC 27
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: CBC 34
::serialize:: CBC 40
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: CBC 64
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: CBC 64
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: CBC 545
::serialize:: CBC 762
::default CBC 2769

Generated by: LCOV version 2.1-beta