LCOV - code coverage report
Current view: top level - pageserver/src - virtual_file.rs (source / functions) Coverage Total Hit
Test: c639aa5f7ab62b43d647b10f40d15a15686ce8a9.info Lines: 94.7 % 829 785
Test Date: 2024-02-12 20:26:03 Functions: 93.5 % 153 143

Function Name Sort by function name Hit count Sort by function hit count
<pageserver::virtual_file::VirtualFile as core::fmt::Debug>::fmt 0
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0}::{closure#1} 0
<pageserver::virtual_file::VirtualFile>::remove 0
pageserver::virtual_file::is_fatal_io_error 0
pageserver::virtual_file::on_fatal_io_error 0
pageserver::virtual_file::on_fatal_io_error::{closure#0} 0
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_basic 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::tests::test_atomic_overwrite_basic 2
pageserver::virtual_file::tests::test_atomic_overwrite_preexisting_tmp 2
pageserver::virtual_file::tests::test_vfile_concurrency 2
pageserver::virtual_file::tests::test_virtual_files 2
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::{closure#0} 3
<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::VirtualFile>::seek::{closure#0}::{closure#0} 4
pageserver::virtual_file::test_read_exact_at_impl::test_basic::{closure#0} 4
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::{closure#0} 4
pageserver::virtual_file::tests::test_atomic_overwrite_preexisting_tmp::{closure#0} 4
pageserver::virtual_file::tests::test_files::<pageserver::virtual_file::tests::test_virtual_files::{closure#0}::{closure#0}, pageserver::virtual_file::tests::test_virtual_files::{closure#0}::{closure#0}::{closure#0}> 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}::{closure#0}, pageserver::virtual_file::tests::test_virtual_files::{closure#0}::{closure#0}::{closure#0}>::{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_vfile_concurrency::{closure#0} 4
pageserver::virtual_file::tests::test_virtual_files::{closure#0} 4
<pageserver::virtual_file::tests::MaybeVirtualFile as core::convert::From<pageserver::virtual_file::VirtualFile>>::from 6
pageserver::virtual_file::test_read_exact_at_impl::test_empty_buf_issues_no_syscall 6
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} 4
pageserver::virtual_file::test_read_exact_at_impl::test_eof_before_buffer_full 6
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} 4
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 6
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} 4
pageserver::virtual_file::tests::test_physical_files 6
pageserver::virtual_file::tests::test_physical_files 2
pageserver::virtual_file::tests::test_physical_files::{closure#0} 4
<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>::write_all 16
::write_all 8
::write_all::{closure#0} 8
<pageserver::virtual_file::tests::MaybeVirtualFile>::write_all_at 16
::write_all_at 8
::write_all_at::{closure#0} 8
<pageserver::virtual_file::tests::MaybeVirtualFile>::seek 72
::seek 36
::seek::{closure#0} 36
pageserver::virtual_file::get_open_files::{closure#0} 102
<core::result::Result<(), std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo<()>>::maybe_fatal_err 119
pageserver::virtual_file::tests::test_vfile_concurrency::{closure#0}::{closure#0} 200
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_exact_at::{closure#0}::{closure#0} 202
pageserver::virtual_file::tests::test_physical_files::{closure#0}::{closure#0} 206
pageserver::virtual_file::tests::test_physical_files::{closure#0}::{closure#0}::{closure#0} 206
pageserver::virtual_file::tests::test_virtual_files::{closure#0}::{closure#0} 206
pageserver::virtual_file::tests::test_virtual_files::{closure#0}::{closure#0}::{closure#0} 206
<pageserver::virtual_file::VirtualFile>::read_to_end 448
::read_to_end 224
::read_to_end::{closure#0} 224
pageserver::virtual_file::init 624
<pageserver::virtual_file::OpenFiles>::new 726
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_exact_at 808
::read_exact_at 404
::read_exact_at::{closure#0} 404
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_string_at 808
::read_string_at 404
::read_string_at::{closure#0} 404
<pageserver::virtual_file::tests::MaybeVirtualFile>::read_string 884
::read_string 442
::read_string::{closure#0} 442
<core::result::Result<(), std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo<()>>::fatal_err 1485
, std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo>>::fatal_err 35
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 38
as pageserver::virtual_file::MaybeFatalIo<()>>::fatal_err 57
as pageserver::virtual_file::MaybeFatalIo>::fatal_err 631
, std::io::error::Error> as pageserver::virtual_file::MaybeFatalIo>>::fatal_err 724
<pageserver::virtual_file::VirtualFile>::crashsafe_overwrite 8916
<pageserver::virtual_file::VirtualFile>::crashsafe_overwrite::{closure#0} 8916
<pageserver::virtual_file::VirtualFile>::read_blk 20200
<pageserver::virtual_file::VirtualFile>::read_blk::{closure#0} 20200
<pageserver::virtual_file::VirtualFile>::metadata::{closure#0}::{closure#0} 22365
<pageserver::virtual_file::VirtualFile>::create 31838
::create 15919
::create::{closure#0} 15919
<pageserver::virtual_file::VirtualFile>::sync_all::{closure#0}::{closure#0} 40197
<pageserver::virtual_file::VirtualFile>::metadata 44730
::metadata 22365
::metadata::{closure#0} 22365
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot::{closure#0} 55496
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop 65578
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot 65578
<pageserver::virtual_file::VirtualFile>::open 66842
::open 33421
::open::{closure#0} 33421
<pageserver::virtual_file::VirtualFile>::open_with_options 79748
<pageserver::virtual_file::VirtualFile>::open_with_options::{closure#0} 79748
<pageserver::virtual_file::VirtualFile>::sync_all 80394
::sync_all 40197
::sync_all::{closure#0} 40197
<pageserver::virtual_file::VirtualFile>::seek 134230
::seek 67115
::seek::{closure#0} 67115
<pageserver::virtual_file::FileGuard as uring_common::io_fd::IoFd>::as_fd 144971
<pageserver::virtual_file::OpenFiles>::find_victim_slot::{closure#0}::{closure#0} 212703
<pageserver::virtual_file::SlotHandle as core::fmt::Debug>::fmt 290425
::clone 0
::fmt 0
::eq 290425
<pageserver::virtual_file::OpenFiles>::find_victim_slot 547062
::find_victim_slot 273531
::find_victim_slot::{closure#0} 273531
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0} 5115140
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0}::{closure#0} 5115140
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_total 5115143
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::stable_ptr 5115143
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::set_init 5115143
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::stable_mut_ptr 5115143
<pageserver::virtual_file::VirtualFile>::read_exact_at_page 5115143
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>> 5335342
::read_exact_at::> 220202
::read_exact_at:: 5115140
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0} 5335342
::read_exact_at::>::{closure#0} 220202
::read_exact_at::::{closure#0} 5115140
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#0} 5335342
::read_exact_at::>::{closure#0}::{closure#0} 220202
::read_exact_at::::{closure#0}::{closure#0} 5115140
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#1} 5335342
::read_exact_at::>::{closure#0}::{closure#1} 220202
::read_exact_at::::{closure#0}::{closure#1} 5115140
pageserver::virtual_file::read_exact_at_impl::<alloc::vec::Vec<u8>, 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}> 5335350
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}> 220202
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at>::{closure#0}> 5115140
pageserver::virtual_file::read_exact_at_impl::<alloc::vec::Vec<u8>, 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} 5335350
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} 220202
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at>::{closure#0}>::{closure#0} 5115140
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>> 5335786
::read_at::> 444
::read_at::>> 220202
::read_at::> 5115140
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>>::{closure#0} 5335786
::read_at::>::{closure#0} 444
::read_at::>>::{closure#0} 220202
::read_at::>::{closure#0} 5115140
<pageserver::virtual_file::VirtualFile>::write_all_at 7377308
::write_all_at 3688654
::write_all_at::{closure#0} 3688654
<pageserver::virtual_file::VirtualFile>::write_at::{closure#0}::{closure#0} 8800959
<pageserver::virtual_file::VirtualFile>::write 10224610
::write 5112305
::write::{closure#0} 5112305
<pageserver::virtual_file::VirtualFile>::write_all 10224672
::write_all 5112336
::write_all::{closure#0} 5112336
<pageserver::virtual_file::FileGuard>::with_std_file::<<pageserver::virtual_file::VirtualFile>::sync_all::{closure#0}::{closure#0}, core::result::Result<(), std::io::error::Error>> 14054336
::with_std_file::<::read_at>::{closure#0}::{closure#0}, core::result::Result> 222
::with_std_file::<::metadata::{closure#0}::{closure#0}, core::result::Result> 22365
::with_std_file::<::sync_all::{closure#0}::{closure#0}, core::result::Result<(), std::io::error::Error>> 40197
::with_std_file::<::read_at>>::{closure#0}::{closure#0}, core::result::Result> 110101
::with_std_file::<::read_at>::{closure#0}::{closure#0}, core::result::Result> 5080492
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 8800959
<pageserver::virtual_file::FileGuard as core::convert::AsRef<std::os::fd::owned::OwnedFd>>::as_ref 14199314
pageserver::virtual_file::get_open_files 14344640
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_init 15345429
<pageserver::virtual_file::VirtualFile>::write_at 17601918
::write_at 8800959
::write_at::{closure#0} 8800959
<pageserver::virtual_file::VirtualFile>::lock_file 28398625
::lock_file::{closure#0} 14199311
::lock_file 14199314

Generated by: LCOV version 2.1-beta