LCOV - code coverage report
Current view: top level - safekeeper/src - send_wal.rs (source / functions) Coverage Total Hit
Test: c639aa5f7ab62b43d647b10f40d15a15686ce8a9.info Lines: 93.7 % 459 430
Test Date: 2024-02-12 20:26:03 Functions: 45.9 % 159 73

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}::{closure#0} 0
>::handle_feedback::{closure#0}::{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}::{closure#0} 0
<safekeeper::send_wal::ReplyReader<_>>::handle_feedback::{closure#0}::{closure#1} 0
>::handle_feedback::{closure#0}::{closure#1} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::handle_feedback::{closure#0}::{closure#1} 0
<safekeeper::send_wal::WalSender<_>>::run::{closure#0}::{closure#0}::{closure#0} 0
>::run::{closure#0}::{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}::{closure#0} 0
<safekeeper::send_wal::WalSender<_>>::run::{closure#0}::{closure#1} 0
>::run::{closure#0}::{closure#1} 0
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run::{closure#0}::{closure#1} 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 2
safekeeper::send_wal::tests::test_hs_feedback 2
safekeeper::send_wal::tests::test_hs_feedback::{closure#0} 2
safekeeper::send_wal::tests::test_hs_feedback_no_valid 2
safekeeper::send_wal::tests::test_hs_feedback_no_valid::{closure#0} 2
safekeeper::send_wal::tests::test_ps_feedback 2
safekeeper::send_wal::tests::test_ps_feedback::{closure#0} 2
<safekeeper::send_wal::StandbyFeedback as core::fmt::Debug>::fmt 3
<::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 utils::http::endpoint::ChannelWriter>> 0
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 3
safekeeper::send_wal::tests::ps_feedback 4
<safekeeper::send_wal::StandbyReply>::empty 8
safekeeper::send_wal::tests::hs_feedback 8
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#1} 9
::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} 9
<safekeeper::send_wal::HotStandbyFeedback as core::fmt::Debug>::fmt 10
<::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 utils::http::endpoint::ChannelWriter>> 0
::serialize::, serde_json::ser::CompactFormatter>> 0
::serialize::> 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>>> 2
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 2
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 6
safekeeper::send_wal::tests::mock_addr 12
safekeeper::send_wal::tests::mock_ttid 12
safekeeper::send_wal::tests::push_feedback 12
<safekeeper::send_wal::WalSenders>::get_ps_feedback 51
<safekeeper::send_wal::ReplicationFeedback as core::fmt::Debug>::fmt 236
<::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
::serialize::> 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer> 2
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 2
<::deserialize::__Visitor as serde::de::Visitor>::visit_enum::> 2
::deserialize::<&mut serde_json::de::Deserializer> 2
::serialize::<&mut serde_json::ser::Serializer<&mut utils::http::endpoint::ChannelWriter>> 4
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 110
::clone 114
<safekeeper::send_wal::WalSenderState as core::fmt::Debug>::fmt 252
<::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
::fmt 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 2
::deserialize::<&mut serde_json::de::Deserializer> 2
::serialize::<&mut serde_json::ser::Serializer<&mut utils::http::endpoint::ChannelWriter>> 4
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 10
<::deserialize::__FieldVisitor as serde::de::Visitor>::visit_str:: 10
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 110
::clone 114
<safekeeper::send_wal::WalSenders>::get_all 260
<safekeeper::send_wal::WalSenderGuard as core::ops::drop::Drop>::drop 392
<safekeeper::send_wal::WalSenders>::unregister 392
<safekeeper::send_wal::WalSendersShared>::update_hs_feedback 398
<safekeeper::send_wal::WalSenders>::register::{closure#0} 420
<safekeeper::send_wal::WalSenders>::new 612
<safekeeper::send_wal::WalSendersShared>::new 618
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication::<_> 756
::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}>> 756
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication::<_>::{closure#0} 756
::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} 756
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_> 756
::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}>> 756
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0} 756
::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} 756
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#2} 756
::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} 756
<safekeeper::send_wal::WalSenders>::register 756
<safekeeper::send_wal::WalSenders>::record_standby_reply 1225
<safekeeper::send_wal::ReplyReader<_>>::run 1511
>::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} 755
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run 756
<safekeeper::send_wal::WalSender<_>>::run 1512
>::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 756
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::run::{closure#0} 756
<safekeeper::send_wal::StandbyReply as core::fmt::Debug>::fmt 2453
<::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 utils::http::endpoint::ChannelWriter>> 0
::serialize::, serde_json::ser::CompactFormatter>> 0
::serialize::> 0
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 3
<::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>>> 1225
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 1225
<safekeeper::send_wal::WalSenders>::get_ws_remote_consistent_lsn 3332
<safekeeper::send_wal::WalSendersShared>::get_slot 3332
safekeeper::send_wal::wait_for_lsn 703658
safekeeper::send_wal::wait_for_lsn::{closure#0} 703658
safekeeper::send_wal::wait_for_lsn::{closure#0}::{closure#0} 703658
<safekeeper::send_wal::WalSenders>::record_ps_feedback 797257
<safekeeper::send_wal::WalSendersShared>::update_ps_feedback 797259
<safekeeper::send_wal::WalSendersShared>::get_slot_mut 798484
<safekeeper::send_wal::WalSendersShared>::update_ps_feedback::{closure#0} 1167694
<safekeeper::send_wal::ReplyReader<_>>::handle_feedback 1596968
>::handle_feedback 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 798484
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::handle_feedback::{closure#0} 798484
<safekeeper::send_wal::WalSender<_>>::wait_wal 1600414
>::wait_wal 0
>::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 800207
>, safekeeper::wal_service::handle_socket::{closure#0}::{closure#0}, safekeeper::wal_service::handle_socket::{closure#0}::{closure#1}>>>::wait_wal::{closure#0} 800207
<safekeeper::send_wal::WalSenders>::get_feedbacks 1660289
<safekeeper::send_wal::HotStandbyFeedback>::empty 1661312
<safekeeper::handler::SafekeeperPostgresHandler>::handle_start_replication_guts::<_>::{closure#0}::{closure#3} 3151769
::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} 3151769
<safekeeper::send_wal::EndWatch>::get 3340749
<safekeeper::send_wal::EndWatch>::changed 3673716
::changed 1836858
::changed::{closure#0} 1836858

Generated by: LCOV version 2.1-beta