LCOV - code coverage report
Current view: top level - pageserver/src - virtual_file.rs (source / functions) Coverage Total Hit
Test: 12c2fc96834f59604b8ade5b9add28f1dce41ec6.info Lines: 93.0 % 976 908
Test Date: 2024-07-03 15:33:13 Functions: 90.5 % 199 180

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 2358
as pageserver::virtual_file::MaybeFatalIo<()>>::fatal_err 1172
, 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 1162
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 1532783
<pageserver::virtual_file::FileGuard as uring_common::io_fd::IoFd>::as_fd 766249
<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>> 766530
::with_std_file::<::metadata::{closure#0}::{closure#0}, core::result::Result> 784
::with_std_file::<::read_at>::{closure#0}::{closure#0}, core::result::Result> 110673
::with_std_file::<::read_at::{closure#0}::{closure#0}, core::result::Result> 38329
::with_std_file::<::read_at::{closure#0}::{closure#0}, core::result::Result> 57131
::with_std_file::<::sync_all::{closure#0}::{closure#0}, core::result::Result<(), std::io::error::Error>> 1364
::with_std_file::<::write_at>::{closure#0}::{closure#0}, core::result::Result> 8035
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 275975
::with_std_file::<::write_at::{closure#0}::{closure#0}, core::result::Result> 270934
::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 390254
::find_victim_slot 195127
::find_victim_slot::{closure#0} 195127
<pageserver::virtual_file::OpenFiles>::find_victim_slot::{closure#0}::{closure#0} 190711
<pageserver::virtual_file::OpenFiles>::new 162
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_init 855267
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::bytes_total 341937
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf::IoBuf>::stable_ptr 456199
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::set_init 113979
<pageserver::virtual_file::PageWriteGuardBuf as uring_common::buf::io_buf_mut::IoBufMut>::stable_mut_ptr 171110
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop 4768
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot 4768
<pageserver::virtual_file::VirtualFile as core::ops::drop::Drop>::drop::clean_slot::{closure#0} 4180
<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> 1359
::create::<&camino::Utf8Path> 28
::create::<&camino::Utf8PathBuf> 1331
<pageserver::virtual_file::VirtualFile>::create::<&camino::Utf8Path>::{closure#0} 1359
::create::<&camino::Utf8Path>::{closure#0} 28
::create::<&camino::Utf8PathBuf>::{closure#0} 1331
<pageserver::virtual_file::VirtualFile>::lock_file 3065566
::lock_file 1532783
::lock_file::{closure#0} 1532783
<pageserver::virtual_file::VirtualFile>::metadata 3136
::metadata 1568
::metadata::{closure#0} 1568
<pageserver::virtual_file::VirtualFile>::open::<&camino::Utf8Path> 2286
::open::<&camino::Utf8Path> 1118
::open::<&camino::Utf8PathBuf> 1168
<pageserver::virtual_file::VirtualFile>::open::<&camino::Utf8Path>::{closure#0} 2286
::open::<&camino::Utf8Path>::{closure#0} 1118
::open::<&camino::Utf8PathBuf>::{closure#0} 1168
<pageserver::virtual_file::VirtualFile>::open_with_options::<&camino::Utf8Path> 5541
::open_with_options::<&camino::Utf8Path> 3645
::open_with_options::<&camino::Utf8PathBuf> 1896
<pageserver::virtual_file::VirtualFile>::open_with_options::<&camino::Utf8Path>::{closure#0} 5541
::open_with_options::<&camino::Utf8Path>::{closure#0} 3645
::open_with_options::<&camino::Utf8PathBuf>::{closure#0} 1896
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>> 411984
::read_at::> 221346
::read_at:: 76659
::read_at:: 113979
<pageserver::virtual_file::VirtualFile>::read_at::<alloc::vec::Vec<u8>>::{closure#0} 411984
::read_at::>::{closure#0} 221346
::read_at::::{closure#0} 76659
::read_at::::{closure#0} 113979
<pageserver::virtual_file::VirtualFile>::read_blk 20900
<pageserver::virtual_file::VirtualFile>::read_blk::{closure#0} 20900
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>> 411540
::read_exact_at::> 220902
::read_exact_at:: 76659
::read_exact_at:: 113979
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0} 411540
::read_exact_at::>::{closure#0} 220902
::read_exact_at::::{closure#0} 76659
::read_exact_at::::{closure#0} 113979
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#0} 411540
::read_exact_at::>::{closure#0}::{closure#0} 220902
::read_exact_at::::{closure#0}::{closure#0} 76659
::read_exact_at::::{closure#0}::{closure#0} 113979
<pageserver::virtual_file::VirtualFile>::read_exact_at::<alloc::vec::Vec<u8>>::{closure#0}::{closure#1} 411540
::read_exact_at::>::{closure#0}::{closure#1} 220902
::read_exact_at::::{closure#0}::{closure#1} 76659
::read_exact_at::::{closure#0}::{closure#1} 113979
<pageserver::virtual_file::VirtualFile>::read_exact_at_page 113979
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0} 113979
<pageserver::virtual_file::VirtualFile>::read_exact_at_page::{closure#0}::{closure#0} 113979
<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 9444
::seek 4722
::seek::{closure#0} 4722
<pageserver::virtual_file::VirtualFile>::seek::{closure#0}::{closure#0} 4
<pageserver::virtual_file::VirtualFile>::sync_all 5462
::sync_all 2731
::sync_all::{closure#0} 2731
<pageserver::virtual_file::VirtualFile>::sync_data 0
::sync_data 0
::sync_data::{closure#0} 0
<pageserver::virtual_file::VirtualFile>::write::<alloc::vec::Vec<u8>> 1116492
::write::> 16066
::write:: 551945
::write:: 541871
::write::> 6610
<pageserver::virtual_file::VirtualFile>::write::<alloc::vec::Vec<u8>>::{closure#0} 1116492
::write::>::{closure#0} 16066
::write::::{closure#0} 551945
::write::::{closure#0} 541871
::write::>::{closure#0} 6610
<pageserver::virtual_file::VirtualFile>::write_all::<alloc::vec::Vec<u8>, alloc::vec::Vec<u8>> 1116526
::write_all::, alloc::vec::Vec> 15876
::write_all:: 551945
::write_all:: 541868
::write_all::>, alloc::vec::Vec> 224
::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} 1116526
::write_all::, alloc::vec::Vec>::{closure#0} 15876
::write_all::::{closure#0} 551945
::write_all::::{closure#0} 541868
::write_all::>, alloc::vec::Vec>::{closure#0} 224
::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>> 1116496
::write_at::> 16070
::write_at:: 551945
::write_at:: 541871
::write_at::> 6610
<pageserver::virtual_file::VirtualFile>::write_at::<alloc::vec::Vec<u8>>::{closure#0} 1116496
::write_at::>::{closure#0} 16070
::write_at::::{closure#0} 551945
::write_at::::{closure#0} 541871
::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 1543092
pageserver::virtual_file::get_open_files::{closure#0} 162
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}> 411548
pageserver::virtual_file::read_exact_at_impl::, ::read_exact_at>::{closure#0}::{closure#0}, ::read_at>::{closure#0}> 220902
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}> 76659
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}> 113979
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} 411548
pageserver::virtual_file::read_exact_at_impl::, ::read_exact_at>::{closure#0}::{closure#0}, ::read_at>::{closure#0}>::{closure#0} 220902
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} 76659
pageserver::virtual_file::read_exact_at_impl::::read_exact_at::{closure#0}::{closure#0}, ::read_at::{closure#0}>::{closure#0} 113979
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