LCOV - code coverage report
Current view: top level - pageserver/src - virtual_file.rs (source / functions) Coverage Total Hit
Test: bb522999b2ee0ee028df22bb188d3a84170ba700.info Lines: 93.0 % 976 908
Test Date: 2024-07-21 16:16:09 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 2370
as pageserver::virtual_file::MaybeFatalIo<()>>::fatal_err 1178
, 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 1168
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 1537716
<pageserver::virtual_file::FileGuard as uring_common::io_fd::IoFd>::as_fd 768854
<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>> 768858
::with_std_file::<::metadata::{closure#0}::{closure#0}, core::result::Result> 796
::with_std_file::<::read_at>::{closure#0}::{closure#0}, core::result::Result> 110681
::with_std_file::<::read_at::{closure#0}::{closure#0}, core::result::Result> 40404
::with_std_file::<::read_at::{closure#0}::{closure#0}, core::result::Result> 57000
::with_std_file::<::sync_all::{closure#0}::{closure#0}, core::result::Result<(), std::io::error::Error>> 1379
::with_std_file::<::write_at>::{closure#0}::{closure#0}, core::result::Result> 8329
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 276001
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 270963
::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 389146
::find_victim_slot 194573
::find_victim_slot::{closure#0} 194573
<pageserver::virtual_file::OpenFiles>::find_victim_slot::{closure#0}::{closure#0} 190072
<pageserver::virtual_file::OpenFiles>::new 172
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_init 855378
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_total 342189
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::stable_ptr 456189
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::set_init 114063
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::stable_mut_ptr 171063
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop 4847
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot 4847
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot::{closure#0} 4266
<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> 1389
::create::<&camino::Utf8Path> 40
::create::<&camino::Utf8PathBuf> 1349
<pageserver::virtual_file::VirtualFile>::create::<&camino::Utf8Path>::{closure#0} 1389
::create::<&camino::Utf8Path>::{closure#0} 40
::create::<&camino::Utf8PathBuf>::{closure#0} 1349
<pageserver::virtual_file::VirtualFile>::lock_file 3075432
::lock_file 1537716
::lock_file::{closure#0} 1537716
<pageserver::virtual_file::VirtualFile>::metadata 3184
::metadata 1592
::metadata::{closure#0} 1592
<pageserver::virtual_file::VirtualFile>::open::<&camino::Utf8Path> 2322
::open::<&camino::Utf8Path> 1108
::open::<&camino::Utf8PathBuf> 1182
::open:: 32
<pageserver::virtual_file::VirtualFile>::open::<&camino::Utf8Path>::{closure#0} 2322
::open::<&camino::Utf8Path>::{closure#0} 1108
::open::<&camino::Utf8PathBuf>::{closure#0} 1182
::open::::{closure#0} 32
<pageserver::virtual_file::VirtualFile>::open_with_options::<&camino::Utf8Path> 5619
::open_with_options::<&camino::Utf8Path> 3711
::open_with_options::<&camino::Utf8PathBuf> 1908
<pageserver::virtual_file::VirtualFile>::open_with_options::<&camino::Utf8Path>::{closure#0} 5619
::open_with_options::<&camino::Utf8Path>::{closure#0} 3711
::open_with_options::<&camino::Utf8PathBuf>::{closure#0} 1908
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>> 416138
::read_at::> 221362
::read_at:: 80713
::read_at:: 114063
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>>::{closure#0} 416138
::read_at::>::{closure#0} 221362
::read_at::::{closure#0} 80713
::read_at::::{closure#0} 114063
<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>> 415694
::read_exact_at::> 220918
::read_exact_at:: 80713
::read_exact_at:: 114063
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0} 415694
::read_exact_at::>::{closure#0} 220918
::read_exact_at::::{closure#0} 80713
::read_exact_at::::{closure#0} 114063
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#0} 415694
::read_exact_at::>::{closure#0}::{closure#0} 220918
::read_exact_at::::{closure#0}::{closure#0} 80713
::read_exact_at::::{closure#0}::{closure#0} 114063
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#1} 415694
::read_exact_at::>::{closure#0}::{closure#1} 220918
::read_exact_at::::{closure#0}::{closure#1} 80713
::read_exact_at::::{closure#0}::{closure#1} 114063
<pageserver::virtual_file::VirtualFile>::read_exact_at_page 114063
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0} 114063
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0}::{closure#0} 114063
<pageserver::virtual_file::VirtualFile>::read_to_end 448
::read_to_end 224
::read_to_end::{closure#0} 224
<pageserver::virtual_file::VirtualFile>::remove 6
<pageserver::virtual_file::VirtualFile>::seek 9588
::seek 4794
::seek::{closure#0} 4794
<pageserver::virtual_file::VirtualFile>::seek::{closure#0}::{closure#0} 4
<pageserver::virtual_file::VirtualFile>::sync_all 5522
::sync_all 2761
::sync_all::{closure#0} 2761
<pageserver::virtual_file::VirtualFile>::sync_data 0
::sync_data 0
::sync_data::{closure#0} 0
<pageserver::virtual_file::VirtualFile>::write::<alloc::vec::Vec<u8>> 1117217
::write::> 16654
::write:: 552024
::write:: 541929
::write::> 6610
<pageserver::virtual_file::VirtualFile>::write::<alloc::vec::Vec<u8>>::{closure#0} 1117217
::write::>::{closure#0} 16654
::write::::{closure#0} 552024
::write::::{closure#0} 541929
::write::>::{closure#0} 6610
<pageserver::virtual_file::VirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>> 1117255
::write_all::, alloc::vec::Vec> 16462
::write_all:: 552024
::write_all:: 541926
::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} 1117255
::write_all::, alloc::vec::Vec>::{closure#0} 16462
::write_all::::{closure#0} 552024
::write_all::::{closure#0} 541926
::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>> 1117221
::write_at::> 16658
::write_at:: 552024
::write_at:: 541929
::write_at::> 6610
<pageserver::virtual_file::VirtualFile>::write_at::<alloc::vec::Vec<u8>>::{closure#0} 1117221
::write_at::>::{closure#0} 16658
::write_at::::{closure#0} 552024
::write_at::::{closure#0} 541929
::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 1548182
pageserver::virtual_file::get_open_files::{closure#0} 172
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}> 415702
pageserver::virtual_file::read_exact_at_impl::, ::read_exact_at>::{closure#0}::{closure#0}, ::read_at>::{closure#0}> 220918
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}> 80713
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}> 114063
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} 415702
pageserver::virtual_file::read_exact_at_impl::, ::read_exact_at>::{closure#0}::{closure#0}, ::read_at>::{closure#0}>::{closure#0} 220918
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} 80713
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}>::{closure#0} 114063
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