-
Notifications
You must be signed in to change notification settings - Fork 214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Split RafsInode
into RafsInode
and RafsInodeExt
#774
Conversation
@jiangliu , a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25085 |
@jiangliu , the code has been updated, so a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25088 |
@jiangliu , the code has been updated, so a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25092 |
@jiangliu , the code has been updated, so a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25093 |
@jiangliu , the code has been updated, so a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25094 |
@jiangliu , The CI test is completed, please check result:
Congratulations, your test job passed! |
@jiangliu , The CI test is completed, please check result:
Congratulations, your test job passed! |
@jiangliu , the code has been updated, so a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25167 |
@jiangliu , The CI test is completed, please check result:
Congratulations, your test job passed! |
Do not print error message when exiting, that's expected instead of error. Signed-off-by: Jiang Liu <[email protected]>
The RAFS v6 metadata has different designs with RAFS v5, which breaks some interfaces defined by RafsInode. So split RafsInodeExt out of RafsInode, then we could provide better implementation for RAFS v6. Signed-off-by: Jiang Liu <[email protected]>
Add unit test cases for compression/digest algorithm conversion. Signed-off-by: Jiang Liu <[email protected]>
Remove unused dead code from rafs crate. Signed-off-by: Jiang Liu <[email protected]>
RAFS_ROOT_INODE is for v5 only, so rename it. Signed-off-by: Jiang Liu <[email protected]>
The documentation from ArcSwap states: Previous version implemented Clone, but it turned out to be very confusing to people, since it created fully independent ArcSwap. Users expected the instances to be tied to each other, that store in one would change the result of future load of the other. To emulate the original behaviour, one can do something like this: let new = ArcSwap::new(old.load_full()); We do expect instances to be tied to each other, so use another Arc over ArcSwap. Signed-off-by: Jiang Liu <[email protected]>
Simplify rafs v5 implementation by introducing helper functins. Signed-off-by: Jiang Liu <[email protected]>
@jiangliu , the code has been updated, so a new test job has been submitted. Please wait in patience. The test job url: https://tone.openanolis.cn/ws/nrh4nnio/test_result/25344 |
@jiangliu , The CI test is completed, please check result:
Congratulations, your test job passed! |
The
RafsInode
is designed according to Rafs v5, which causes some problems when enabling Rafs v6.So split it into
RafsInode
andRafsInodeExt. Among those,
RafsInodeis used to provide methods which are generic to v5/v6 and runtime/builder,
RafsInodeExt` provides version specific methods or methods for builder.Along the way also do: