LCOV - code coverage report
Current view: top level - pageserver/src/tenant - config.rs (source / functions) Coverage Total Hit
Test: aca8877be6ceba750c1be359ed71bc1799d52b30.info Lines: 97.1 % 274 266
Test Date: 2024-02-14 18:05:35 Functions: 37.4 % 222 83

Function Name Sort by function name Hit count Sort by function hit count
<pageserver::tenant::config::LocationConf>::try_from::get_generation::{closure#0} 0
<pageserver::tenant::config::TenantConfOpt as core::convert::TryFrom<toml_edit::item::Item>>::try_from::{closure#0} 0
<pageserver::tenant::config::TenantConfOpt as core::convert::TryFrom<toml_edit::item::Item>>::try_from::{closure#1} 2
pageserver::tenant::config::tests::de_serializing_pageserver_config_omits_empty_values 2
pageserver::tenant::config::tests::de_serializing_pageserver_config_omits_empty_values::{closure#0} 2
pageserver::tenant::config::tests::test_try_from_models_tenant_config_err 2
pageserver::tenant::config::tests::test_try_from_models_tenant_config_err::{closure#0} 2
pageserver::tenant::config::tests::test_try_from_models_tenant_config_success 2
pageserver::tenant::config::tests::test_try_from_models_tenant_config_success::{closure#0} 2
<pageserver_api::models::TenantConfig as core::convert::From<pageserver::tenant::config::TenantConfOpt>>::from::humantime 3
<pageserver::tenant::config::LocationConf as core::default::Default>::default 4
<pageserver_api::models::TenantConfig as core::convert::From<pageserver::tenant::config::TenantConfOpt>>::from 5
<pageserver::tenant::config::LocationConf>::try_from::{closure#0} 34
<pageserver::tenant::config::SecondaryLocationConfig as core::fmt::Debug>::fmt 93
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: 0
::eq 0
::fmt 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: 5
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 5
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 5
::deserialize:: 5
::serialize:: 34
::clone 39
<pageserver::tenant::config::LocationConf>::attach_in_generation 221
<pageserver::tenant::config::LocationConf>::attached_single 275
<pageserver::tenant::config::TenantConf as core::fmt::Debug>::fmt 364
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::<_> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::<_> 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#0} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#1} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#2} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#3} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#4} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#5} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_>::{closure#6} 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: 0
::clone 0
::fmt 0
::deserialize::<_> 0
::eq 4
::serialize:: 45
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: 315
<pageserver::tenant::config::AttachedLocationConfig>::may_upload_layers_hint 399
<pageserver::tenant::config::LocationConf>::try_from::get_generation 597
<pageserver::tenant::config::LocationConf>::try_from 631
<pageserver::tenant::config::AttachedLocationConfig>::may_delete_layers_hint 766
<pageserver::tenant::config::LocationConf as core::fmt::Debug>::fmt 800
<pageserver::tenant::config::TenantConfOpt as core::convert::TryFrom<&pageserver_api::models::TenantConfig>>::try_from 824
<pageserver::tenant::config::TenantConfOpt as core::convert::TryFrom<toml_edit::item::Item>>::try_from 1035
<pageserver::tenant::config::TenantConfOpt>::merge 1087
<pageserver::tenant::config::LocationMode as core::fmt::Debug>::fmt 1980
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum::> 0
::eq 0
::fmt 0
::deserialize::> 0
::deserialize::> 0
::deserialize::> 0
::serialize:: 0
::clone 37
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 240
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 240
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum:: 240
::deserialize:: 240
::serialize:: 983
<pageserver::tenant::config::TenantConf as core::default::Default>::default 2264
<pageserver::tenant::config::AttachedLocationConfig as core::fmt::Debug>::fmt 2406
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: 0
::eq 0
::fmt 10
::clone 37
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 235
::deserialize:: 235
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: 470
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 470
::serialize:: 949
<pageserver::tenant::config::LocationConf as core::cmp::PartialEq>::eq 2484
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: 0
::eq 0
::clone 37
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 240
::deserialize:: 240
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: 492
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 492
::serialize:: 983
<pageserver::tenant::config::AttachmentMode as core::fmt::Debug>::fmt 3549
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum:: 0
::clone 0
::eq 0
::deserialize::> 0
::deserialize::> 0
::deserialize::> 0
::serialize:: 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 235
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 235
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum::> 235
::deserialize:: 235
::serialize:: 949
::fmt 1660
<pageserver::tenant::config::TenantConfOpt as core::fmt::Debug>::fmt 47075
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::>> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::>> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::> 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize:: 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::>> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_bytes::<_> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_u64::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#0} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#1} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#2} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#3} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#4} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#5} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#6} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#7} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#0} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#1} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#2} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#3} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#4} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#5} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#6} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#7} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#0} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#1} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#2} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#3} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#4} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#5} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#6} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#7} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#0} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#1} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#2} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#3} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#4} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#5} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#6} 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::::{closure#7} 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::, serde_json::ser::CompactFormatter>> 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: 0
::fmt 0
::deserialize::> 0
::deserialize::> 0
::deserialize::> 0
::serialize:: 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 2
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 2
::deserialize::<&mut serde_json::de::Deserializer> 2
::deserialize:: 2
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 2
::eq 4
::deserialize::> 28
::clone 37
::serialize:: 45
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> 46
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: 51
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 82
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize:: 118
::deserialize:: 240
<::deserialize::__Visitor as serde::de::Visitor>::visit_map:: 242
<::deserialize::__Field as serde::de::Deserialize>::deserialize:: 262
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 344
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 824
::deserialize::> 824
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize:: 980
::deserialize::> 1007
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 1035
::default 1049
::serialize:: 1969
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::> 6588
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 15644
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 15646

Generated by: LCOV version 2.1-beta