LCOV - code coverage report
Current view: top level - safekeeper/src - send_wal.rs (source / functions) Coverage Total Hit
Test: 8ac049b474321fdc72ddcb56d7165153a1a900e8.info Lines: 93.3 % 449 419
Test Date: 2023-09-06 10:18:01 Functions: 46.8 % 154 72

Function Name Sort by function name Hit count Sort by function hit count
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#0} 0
::handle_start_replication_guts::<_>::{closure#0}::{closure#0} 0
::handle_start_replication_guts::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>::{closure#0}::{closure#0} 0
<safekeeper::send_wal::ReplyReader<_>>::handle_feedback::{closure#0} 0
>::handle_feedback::{closure#0} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::handle_feedback::{closure#0} 0
<safekeeper::send_wal::ReplyReader<_>>::handle_feedback::{closure#1} 0
>::handle_feedback::{closure#1} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::handle_feedback::{closure#1} 0
<safekeeper::send_wal::StandbyFeedback as core::fmt::Debug>::fmt 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
::clone 0
::fmt 0
::deserialize::<&mut serde_json::de::Deserializer> 0
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 0
<safekeeper::send_wal::WalSender<_>>::run::{closure#0}::{closure#0} 0
>::run::{closure#0}::{closure#0} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run::{closure#0}::{closure#0} 0
<safekeeper::send_wal::WalSender<_>>::wait_wal::{closure#0}::{closure#0} 0
>::wait_wal::{closure#0}::{closure#0} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::wait_wal::{closure#0}::{closure#0} 0
<safekeeper::send_wal::WalSender<_>>::wait_wal::{closure#0}::{closure#1} 0
>::wait_wal::{closure#0}::{closure#1} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::wait_wal::{closure#0}::{closure#1} 0
<safekeeper::send_wal::WalSenders>::record_hs_feedback 1
safekeeper::send_wal::tests::test_hs_feedback 1
safekeeper::send_wal::tests::test_hs_feedback::{closure#0} 1
safekeeper::send_wal::tests::test_hs_feedback_no_valid 1
safekeeper::send_wal::tests::test_hs_feedback_no_valid::{closure#0} 1
safekeeper::send_wal::tests::test_ps_feedback 1
safekeeper::send_wal::tests::test_ps_feedback::{closure#0} 1
safekeeper::send_wal::tests::ps_feedback 2
<safekeeper::send_wal::StandbyReply>::empty 4
safekeeper::send_wal::tests::hs_feedback 4
<safekeeper::send_wal::HotStandbyFeedback as core::fmt::Debug>::fmt 5
<::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
::clone 0
::fmt 0
::deserialize::<&mut serde_json::de::Deserializer> 0
::deserialize::> 0
::serialize::, serde_json::ser::CompactFormatter>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<<&mut bincode::de::Deserializer<_, _> as serde::de::Deserializer>::deserialize_tuple::Access, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 1
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 1
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 3
safekeeper::send_wal::tests::mock_addr 6
safekeeper::send_wal::tests::mock_ttid 6
safekeeper::send_wal::tests::push_feedback 6
<safekeeper::send_wal::WalSenders>::record_standby_reply 12
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#1} 16
::handle_start_replication_guts::<_>::{closure#0}::{closure#1} 0
::handle_start_replication_guts::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>::{closure#0}::{closure#1} 16
<safekeeper::send_wal::StandbyReply as core::fmt::Debug>::fmt 24
<::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
::clone 0
::fmt 0
::deserialize::<&mut serde_json::de::Deserializer> 0
::deserialize::> 0
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 0
::serialize::, serde_json::ser::CompactFormatter>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<<&mut bincode::de::Deserializer<_, _> as serde::de::Deserializer>::deserialize_tuple::Access, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 12
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 12
<safekeeper::send_wal::WalSenders>::get_ps_feedback 51
<safekeeper::send_wal::ReplicationFeedback as core::fmt::Debug>::fmt 176
<::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
::fmt 0
::deserialize::> 0
::serialize::, serde_json::ser::CompactFormatter>> 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> 1
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 1
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum::> 1
::deserialize::<&mut serde_json::de::Deserializer> 1
::clone 86
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 86
<safekeeper::send_wal::WalSenders>::get_all 204
<safekeeper::send_wal::WalSenderState as core::fmt::Debug>::fmt 271
<<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::__DeserializeWith as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> 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_seq::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::>::{closure#0} 0
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::, serde_json::ser::CompactFormatter>> 0
::fmt 0
<<::deserialize::__Visitor as serde::de::Visitor>::visit_map::__DeserializeWith as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> 1
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 1
::deserialize::<&mut serde_json::de::Deserializer> 1
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 5
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 5
<::serialize::__SerializeWith as serde::ser::Serialize>::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 86
::clone 86
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 86
<safekeeper::send_wal::WalSenders>::register::{closure#0} 329
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication::<_>::{closure#0} 533
::handle_start_replication::<_>::{closure#0} 0
::handle_start_replication::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>::{closure#0} 533
<safekeeper::send_wal::WalSenderGuard as core::ops::drop::Drop>::drop 533
<safekeeper::send_wal::WalSenders>::unregister 533
<safekeeper::send_wal::WalSendersShared>::update_hs_feedback 536
<safekeeper::send_wal::WalSenders>::new 604
<safekeeper::send_wal::WalSendersShared>::new 607
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication::<_> 830
::handle_start_replication::<_> 0
::handle_start_replication::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>> 830
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_> 830
::handle_start_replication_guts::<_> 0
::handle_start_replication_guts::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>> 830
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0} 830
::handle_start_replication_guts::<_>::{closure#0} 0
::handle_start_replication_guts::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>::{closure#0} 830
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#2} 830
::handle_start_replication_guts::<_>::{closure#0}::{closure#2} 0
::handle_start_replication_guts::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>::{closure#0}::{closure#2} 830
<safekeeper::send_wal::ReplyReader<_>>::run 830
>::run 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run 830
<safekeeper::send_wal::WalSenders>::register 830
<safekeeper::send_wal::WalSender<_>>::run 1659
>::run 0
>::run::{closure#0} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run::{closure#0} 829
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run 830
<safekeeper::send_wal::WalSenders>::get_ws_remote_consistent_lsn 1941
<safekeeper::send_wal::WalSendersShared>::get_slot 1941
<safekeeper::send_wal::WalSenders>::get_remote_consistent_lsn 21682
safekeeper::send_wal::wait_for_lsn 644215
<safekeeper::send_wal::WalSenders>::record_ps_feedback 736446
<safekeeper::send_wal::WalSendersShared>::update_ps_feedback 736447
<safekeeper::send_wal::ReplyReader<_>>::handle_feedback 736458
>::handle_feedback 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::handle_feedback 736458
<safekeeper::send_wal::ReplyReader<_>>::run::{closure#0} 736458
>::run::{closure#0} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run::{closure#0} 736458
<safekeeper::send_wal::WalSendersShared>::get_slot_mut 736459
<safekeeper::send_wal::WalSendersShared>::update_ps_feedback::{closure#0} 741121
<safekeeper::send_wal::WalSender<_>>::wait_wal 741246
>::wait_wal 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::wait_wal 741246
<safekeeper::send_wal::WalSender<_>>::wait_wal::{closure#0} 743054
>::wait_wal::{closure#0} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::wait_wal::{closure#0} 743054
<safekeeper::send_wal::WalSenders>::update_remote_consistent_lsn 745523
safekeeper::send_wal::wait_for_lsn::{closure#0} 1287756
safekeeper::send_wal::wait_for_lsn::{closure#0} 643541
safekeeper::send_wal::wait_for_lsn::{closure#0}::{closure#0} 644215
<safekeeper::send_wal::WalSenders>::get_feedbacks 2200283
<safekeeper::send_wal::HotStandbyFeedback>::empty 2201429
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#3} 2769945
::handle_start_replication_guts::<_>::{closure#0}::{closure#3} 0
::handle_start_replication_guts::>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>::{closure#0}::{closure#3} 2769945
<safekeeper::send_wal::EndWatch>::get 2813205
<safekeeper::send_wal::EndWatch>::changed 2855442
::changed 1427721
::changed::{closure#0} 1427721

Generated by: LCOV version 2.1-beta