Jiang Liu
Jiang Liu
When reading the iou code, I found there are possible bugs and worked out fixes for them. But I have no io_uring capable systems to trigger and reproduce the bug:(
## Details This PR enhances `nydusd` to support runtime chunk deduplication. It works in this way: 1) Use a sqlite database to record information about decompressed/plaintext chunks available on local...
Currently we use a prefetch manager per backend, this design has two drawbacks: - spawn too many worker threads for prefetch - the network ratelimit has been defunct So change...
`tar::archive::EntriesFields::next_entry_raw()` has a performance bottleneck caused by the code: ``` // Make sure the checksum is ok let sum = header.as_bytes()[..148] .iter() .chain(&header.as_bytes()[156..]) .fold(0, |a, b| a + (*b as...
Now we can reconstruct chunk info from RAFS v6 data blob with embedded chunk digest, so no need to embed the chunk info array in the metadata blob anymore, which...
There's no smoking tests for `nydusd virtiofs` and `nydus-image create -t tar-tarfs`, we should add some tests for them.
The functionality of unpacking tar from nydus images are generic, and may be reused by clib crate. So we should move it from `nydus-image` into `rafs` and refactor it.
Seems the generated test file set may not containers hardlinks `dist.hardlinks.values())[1][0]` =================================== FAILURES =================================== _______________________ test_certain_files_prefetch[fs] ________________________ nydus_anchor = nydus_scratch_image = prefetch_policy = 'fs' @pytest.mark.parametrize("prefetch_policy", ["fs"]) def test_certain_files_prefetch( nydus_anchor: NydusAnchor,...
Current VersionMap implementation assumes all versions lower than VersionMap::latest_version() are supported. That may not be true in some situation. Some sort of version filter is needed to filter out unsupported...
Several cgroup interfaces pass arguments by values, and the CgroupPid structure doesn't implement Copy/Clone, it's tricky to use it.