perf(ecstore): borrow rename metadata during commit fanout (#6104)

* perf(ecstore): borrow rename metadata during commit fanout

Co-Authored-By: heihutu <heihutu@gmail.com>

* fix(ecstore): preserve rename_data API compatibility

Co-Authored-By: heihutu <heihutu@gmail.com>

---------

Co-authored-by: heihutu <heihutu@gmail.com>
Co-authored-by: Zhengchao An <anzhengchao@gmail.com>
This commit is contained in:
houseme
2026-08-14 19:56:36 +08:00
committed by GitHub
parent 6f29431a65
commit 0ff3d4cbf4
10 changed files with 253 additions and 138 deletions
+1 -1
View File
@@ -1049,7 +1049,7 @@ impl NodeService {
.rename_data(
&request.src_volume,
&request.src_path,
decoded_file_info.value,
&decoded_file_info.value,
&request.dst_volume,
&request.dst_path,
)
+3 -3
View File
@@ -1150,7 +1150,7 @@ pub(crate) trait StorageDiskRpcExt {
&self,
src_volume: &str,
src_path: &str,
file_info: rustfs_filemeta::FileInfo,
file_info: &rustfs_filemeta::FileInfo,
dst_volume: &str,
dst_path: &str,
) -> DiskResult<RenameDataResp>;
@@ -1301,11 +1301,11 @@ where
&self,
src_volume: &str,
src_path: &str,
file_info: rustfs_filemeta::FileInfo,
file_info: &rustfs_filemeta::FileInfo,
dst_volume: &str,
dst_path: &str,
) -> DiskResult<RenameDataResp> {
ecstore_disk::DiskAPI::rename_data(self, src_volume, src_path, file_info, dst_volume, dst_path).await
ecstore_disk::DiskAPI::rename_data(self, src_volume, src_path, file_info.clone(), dst_volume, dst_path).await
}
async fn list_dir(&self, origvolume: &str, volume: &str, dir_path: &str, count: i32) -> DiskResult<Vec<String>> {