LCOV - code coverage report
Current view: top level - pageserver/src - virtual_file.rs (source / functions) Coverage Total Hit
Test: 42f947419473a288706e86ecdf7c2863d760d5d7.info Lines: 93.0 % 976 908
Test Date: 2024-08-02 21:34:27 Functions: 90.5 % 201 182

Function Name Sort by function name Hit count Sort by function hit count
<core::result::Result<(), std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo<()>>::fatal_err 2038
as pageserver::virtual_file::MaybeFatalIo<()>>::fatal_err 1012
, std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo>>::fatal_err 0
, std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo>>::fatal_err 4
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 0
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 0
, std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo>>::fatal_err 12
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 1002
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 0
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 8
<core::result::Result<(), std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo<()>>::maybe_fatal_err 22
<pageserver::virtual_file::FileGuard as core::convert::AsRef<std::os::fd::owned::OwnedFd>>::as_ref 1618513
<pageserver::virtual_file::FileGuard as uring_common::io_fd::IoFd>::as_fd 809241
<pageserver::virtual_file::FileGuard>::with_std_file::<<pageserver::virtual_file::io_engine::IoEngine>::sync_all::{closure#0}::{closure#0}, core::result::Result<(), std::io::error::Error>> 809268
::with_std_file::<::metadata::{closure#0}::{closure#0}, core::result::Result> 820
::with_std_file::<::read_at>::{closure#0}::{closure#0}, core::result::Result> 111058
::with_std_file::<::read_at::{closure#0}::{closure#0}, core::result::Result> 106196
::with_std_file::<::read_at::{closure#0}::{closure#0}, core::result::Result> 30906
::with_std_file::<::sync_all::{closure#0}::{closure#0}, core::result::Result<(), std::io::error::Error>> 1320
::with_std_file::<::write_at>::{closure#0}::{closure#0}, core::result::Result> 8369
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 276179
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 271115
::with_std_file::<::write_at>::{closure#0}::{closure#0}, core::result::Result> 3305
<pageserver::virtual_file::FileGuard>::with_std_file_mut::<<pageserver::virtual_file::VirtualFile>::seek::{closure#0}::{closure#0}, core::result::Result<u64, std::io::error::Error>> 4
<pageserver::virtual_file::OpenFiles>::find_victim_slot 393464
::find_victim_slot 196732
::find_victim_slot::{closure#0} 196732
<pageserver::virtual_file::OpenFiles>::find_victim_slot::{closure#0}::{closure#0} 192268
<pageserver::virtual_file::OpenFiles>::new 178
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_init 464274
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_total 185778
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::stable_ptr 247590
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::set_init 61926
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::stable_mut_ptr 92832
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop 4761
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot 4761
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot::{closure#0} 4210
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::{closure#0} 0
<pageserver::virtual_file::VirtualFile as pageserver::virtual_file::owned_buffers_io::write::OwnedAsyncWriter>::write_all::<uring_common::buf::slice::Slice<bytes::bytes::Bytes>, bytes::bytes::Bytes> 3
::write_all::, bytes::bytes::Bytes> 0
::write_all::, bytes::bytes_mut::BytesMut> 3
<pageserver::virtual_file::VirtualFile as pageserver::virtual_file::owned_buffers_io::write::OwnedAsyncWriter>::write_all::<uring_common::buf::slice::Slice<bytes::bytes::Bytes>, bytes::bytes::Bytes>::{closure#0} 3
::write_all::, bytes::bytes::Bytes>::{closure#0} 0
::write_all::, bytes::bytes_mut::BytesMut>::{closure#0} 3
<pageserver::virtual_file::VirtualFile as pageserver::virtual_file::owned_buffers_io::write::OwnedAsyncWriter>::write_all::<uring_common::buf::slice::Slice<bytes::bytes::Bytes>, bytes::bytes::Bytes>::{closure#0}::{closure#0} 3
::write_all::, bytes::bytes::Bytes>::{closure#0}::{closure#0} 0
::write_all::, bytes::bytes_mut::BytesMut>::{closure#0}::{closure#0} 3
<pageserver::virtual_file::VirtualFile>::crashsafe_overwrite::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>> 28
<pageserver::virtual_file::VirtualFile>::crashsafe_overwrite::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>>::{closure#0} 28
<pageserver::virtual_file::VirtualFile>::crashsafe_overwrite::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>>::{closure#0}::{closure#0} 28
<pageserver::virtual_file::VirtualFile>::create::<&camino::Utf8Path> 1421
::create::<&camino::Utf8Path> 40
::create::<&camino::Utf8PathBuf> 1381
<pageserver::virtual_file::VirtualFile>::create::<&camino::Utf8Path>::{closure#0} 1421
::create::<&camino::Utf8Path>::{closure#0} 40
::create::<&camino::Utf8PathBuf>::{closure#0} 1381
<pageserver::virtual_file::VirtualFile>::lock_file 3237026
::lock_file 1618513
::lock_file::{closure#0} 1618513
<pageserver::virtual_file::VirtualFile>::metadata 3280
::metadata 1640
::metadata::{closure#0} 1640
<pageserver::virtual_file::VirtualFile>::open::<&camino::Utf8Path> 2196
::open::<&camino::Utf8Path> 1148
::open::<&camino::Utf8PathBuf> 1016
::open:: 32
<pageserver::virtual_file::VirtualFile>::open::<&camino::Utf8Path>::{closure#0} 2196
::open::<&camino::Utf8Path>::{closure#0} 1148
::open::<&camino::Utf8PathBuf>::{closure#0} 1016
::open::::{closure#0} 32
<pageserver::virtual_file::VirtualFile>::open_with_options::<&camino::Utf8Path> 5553
::open_with_options::<&camino::Utf8Path> 3617
::open_with_options::<&camino::Utf8PathBuf> 1936
<pageserver::virtual_file::VirtualFile>::open_with_options::<&camino::Utf8Path>::{closure#0} 5553
::open_with_options::<&camino::Utf8Path>::{closure#0} 3617
::open_with_options::<&camino::Utf8PathBuf>::{closure#0} 1936
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>> 496264
::read_at::> 222116
::read_at:: 212222
::read_at:: 61926
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>>::{closure#0} 496264
::read_at::>::{closure#0} 222116
::read_at::::{closure#0} 212222
::read_at::::{closure#0} 61926
<pageserver::virtual_file::VirtualFile>::read_blk 20916
<pageserver::virtual_file::VirtualFile>::read_blk::{closure#0} 20916
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>> 496034
::read_exact_at::> 221886
::read_exact_at:: 212222
::read_exact_at:: 61926
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0} 496034
::read_exact_at::>::{closure#0} 221886
::read_exact_at::::{closure#0} 212222
::read_exact_at::::{closure#0} 61926
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#0} 495820
::read_exact_at::>::{closure#0}::{closure#0} 221672
::read_exact_at::::{closure#0}::{closure#0} 212222
::read_exact_at::::{closure#0}::{closure#0} 61926
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#1} 496034
::read_exact_at::>::{closure#0}::{closure#1} 221886
::read_exact_at::::{closure#0}::{closure#1} 212222
::read_exact_at::::{closure#0}::{closure#1} 61926
<pageserver::virtual_file::VirtualFile>::read_exact_at_page 61926
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0} 61926
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0}::{closure#0} 61926
<pageserver::virtual_file::VirtualFile>::read_to_end 448
::read_to_end 224
::read_to_end::{closure#0} 224
<pageserver::virtual_file::VirtualFile>::remove 12
<pageserver::virtual_file::VirtualFile>::seek 9888
::seek 4944
::seek::{closure#0} 4944
<pageserver::virtual_file::VirtualFile>::seek::{closure#0}::{closure#0} 4
<pageserver::virtual_file::VirtualFile>::sync_all 5286
::sync_all 2643
::sync_all::{closure#0} 2643
<pageserver::virtual_file::VirtualFile>::sync_data 0
::sync_data 0
::sync_data::{closure#0} 0
<pageserver::virtual_file::VirtualFile>::write::<alloc::vec::Vec<u8>> 1117958
::write::> 16734
::write:: 552381
::write:: 542233
::write::> 6610
<pageserver::virtual_file::VirtualFile>::write::<alloc::vec::Vec<u8>>::{closure#0} 1117958
::write::>::{closure#0} 16734
::write::::{closure#0} 552381
::write::::{closure#0} 542233
::write::>::{closure#0} 6610
<pageserver::virtual_file::VirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>> 1117996
::write_all::, alloc::vec::Vec> 16542
::write_all:: 552381
::write_all:: 542230
::write_all::>, alloc::vec::Vec> 230
::write_all::, bytes::bytes::Bytes> 0
::write_all::, bytes::bytes_mut::BytesMut> 3
::write_all::>, pageserver::tenant::ephemeral_file::zero_padded_read_write::zero_padded::Buffer<65536>> 6610
<pageserver::virtual_file::VirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>>::{closure#0} 1117996
::write_all::, alloc::vec::Vec>::{closure#0} 16542
::write_all::::{closure#0} 552381
::write_all::::{closure#0} 542230
::write_all::>, alloc::vec::Vec>::{closure#0} 230
::write_all::, bytes::bytes::Bytes>::{closure#0} 0
::write_all::, bytes::bytes_mut::BytesMut>::{closure#0} 3
::write_all::>, pageserver::tenant::ephemeral_file::zero_padded_read_write::zero_padded::Buffer<65536>>::{closure#0} 6610
<pageserver::virtual_file::VirtualFile>::write_all_at::<_, _> 4
::write_all_at::<_, _> 0
::write_all_at::, alloc::vec::Vec> 4
<pageserver::virtual_file::VirtualFile>::write_all_at::<_, _>::{closure#0} 4
::write_all_at::<_, _>::{closure#0} 0
::write_all_at::, alloc::vec::Vec>::{closure#0} 4
<pageserver::virtual_file::VirtualFile>::write_at::<alloc::vec::Vec<u8>> 1117962
::write_at::> 16738
::write_at:: 552381
::write_at:: 542233
::write_at::> 6610
<pageserver::virtual_file::VirtualFile>::write_at::<alloc::vec::Vec<u8>>::{closure#0} 1117962
::write_at::>::{closure#0} 16738
::write_at::::{closure#0} 552381
::write_at::::{closure#0} 542233
::write_at::>::{closure#0} 6610
<pageserver::virtual_file::test_read_exact_at_impl::MockReadAt as core::ops::drop::Drop>::drop 8
<pageserver::virtual_file::test_read_exact_at_impl::MockReadAt>::read_at 12
<pageserver::virtual_file::test_read_exact_at_impl::MockReadAt>::read_at::{closure#0} 12
<pageserver::virtual_file::tests::MaybeVirtualFile as core::convert::From<pageserver::virtual_file::VirtualFile>>::from 6
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_exact_at 404
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_exact_at::{closure#0} 404
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_exact_at::{closure#0}::{closure#0} 202
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_string 884
::read_string 442
::read_string::{closure#0} 442
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_string_at 404
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_string_at::{closure#0} 404
<pageserver::virtual_file::tests::MaybeVirtualFile>::seek 72
::seek 36
::seek::{closure#0} 36
<pageserver::virtual_file::tests::MaybeVirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>> 8
<pageserver::virtual_file::tests::MaybeVirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>>::{closure#0} 8
<pageserver::virtual_file::tests::MaybeVirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>>::{closure#0}::{closure#0} 2
<pageserver::virtual_file::tests::MaybeVirtualFile>::write_all_at::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>> 8
<pageserver::virtual_file::tests::MaybeVirtualFile>::write_all_at::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>>::{closure#0} 8
<pageserver::virtual_file::tests::test_physical_files::{closure#0}::B as pageserver::virtual_file::tests::Adapter>::open 206
<pageserver::virtual_file::tests::test_physical_files::{closure#0}::B as pageserver::virtual_file::tests::Adapter>::open::{closure#0} 206
<pageserver::virtual_file::tests::test_virtual_files::{closure#0}::A as pageserver::virtual_file::tests::Adapter>::open 206
<pageserver::virtual_file::tests::test_virtual_files::{closure#0}::A as pageserver::virtual_file::tests::Adapter>::open::{closure#0} 206
pageserver::virtual_file::get_open_files 1628827
pageserver::virtual_file::get_open_files::{closure#0} 178
pageserver::virtual_file::init 0
pageserver::virtual_file::is_fatal_io_error 0
pageserver::virtual_file::on_fatal_io_error 0
pageserver::virtual_file::read_exact_at_impl::<alloc::vec::Vec<u8>, <pageserver::virtual_file::VirtualFile>::read_exact_at<alloc::vec::Vec<u8>>::{closure#0}::{closure#0}, <pageserver::virtual_file::VirtualFile>::read_at<alloc::vec::Vec<u8>>::{closure#0}> 496042
pageserver::virtual_file::read_exact_at_impl::, ::read_exact_at>::{closure#0}::{closure#0}, ::read_at>::{closure#0}> 221886
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0}::{closure#0}::{closure#0}> 2
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0}::{closure#0}::{closure#0}> 2
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0}::{closure#0}::{closure#0}> 2
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0}::{closure#0}::{closure#0}> 2
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}> 212222
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}> 61926
pageserver::virtual_file::read_exact_at_impl::<alloc::vec::Vec<u8>, <pageserver::virtual_file::VirtualFile>::read_exact_at<alloc::vec::Vec<u8>>::{closure#0}::{closure#0}, <pageserver::virtual_file::VirtualFile>::read_at<alloc::vec::Vec<u8>>::{closure#0}>::{closure#0} 496042
pageserver::virtual_file::read_exact_at_impl::, ::read_exact_at>::{closure#0}::{closure#0}, ::read_at>::{closure#0}>::{closure#0} 221886
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0}::{closure#0}::{closure#0}>::{closure#0} 2
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0}::{closure#0}::{closure#0}>::{closure#0} 2
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0}::{closure#0}::{closure#0}>::{closure#0} 2
pageserver::virtual_file::read_exact_at_impl::, pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0}::{closure#0}, pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0}::{closure#0}::{closure#0}>::{closure#0} 2
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}>::{closure#0} 212222
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}>::{closure#0} 61926
pageserver::virtual_file::test_read_exact_at_impl::test_basic 4
pageserver::virtual_file::test_read_exact_at_impl::test_basic 2
pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0} 2
pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0}::{closure#0} 2
pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0}::{closure#0}::{closure#0} 2
pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall 4
pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall 2
pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0} 2
pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0}::{closure#0} 0
pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall::{closure#0}::{closure#0}::{closure#0} 0
pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full 4
pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full 2
pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0} 2
pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0}::{closure#0} 6
pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full::{closure#0}::{closure#0}::{closure#0} 6
pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled 4
pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled 2
pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0} 2
pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0}::{closure#0} 4
pageserver::virtual_file::test_read_exact_at_impl::test_two_read_at_calls_needed_until_buf_filled::{closure#0}::{closure#0}::{closure#0} 4
pageserver::virtual_file::tests::test_atomic_overwrite_basic 4
pageserver::virtual_file::tests::test_atomic_overwrite_basic 2
pageserver::virtual_file::tests::test_atomic_overwrite_basic::{closure#0} 2
pageserver::virtual_file::tests::test_atomic_overwrite_preexisting_tmp 4
pageserver::virtual_file::tests::test_atomic_overwrite_preexisting_tmp 2
pageserver::virtual_file::tests::test_atomic_overwrite_preexisting_tmp::{closure#0} 2
pageserver::virtual_file::tests::test_files::<pageserver::virtual_file::tests::test_virtual_files::{closure#0}::A> 4
pageserver::virtual_file::tests::test_files:: 2
pageserver::virtual_file::tests::test_files:: 2
pageserver::virtual_file::tests::test_files::<pageserver::virtual_file::tests::test_virtual_files::{closure#0}::A>::{closure#0} 4
pageserver::virtual_file::tests::test_files::::{closure#0} 2
pageserver::virtual_file::tests::test_files::::{closure#0} 2
pageserver::virtual_file::tests::test_physical_files 4
pageserver::virtual_file::tests::test_physical_files 2
pageserver::virtual_file::tests::test_physical_files::{closure#0} 2
pageserver::virtual_file::tests::test_vfile_concurrency 4
pageserver::virtual_file::tests::test_vfile_concurrency 2
pageserver::virtual_file::tests::test_vfile_concurrency::{closure#0} 2
pageserver::virtual_file::tests::test_vfile_concurrency::{closure#0}::{closure#0} 200
pageserver::virtual_file::tests::test_virtual_files 4
pageserver::virtual_file::tests::test_virtual_files 2
pageserver::virtual_file::tests::test_virtual_files::{closure#0} 2

Generated by: LCOV version 2.1-beta