mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-09 22:59:59 +00:00
fix(ilm): preserve restore source version mode (#5406)
* fix(ilm): preserve restore source version mode * test(ilm): cover suspended null-version restore * fix(ilm): reconcile worker results from journal
This commit is contained in:
@@ -7783,7 +7783,12 @@ impl DefaultObjectUsecase {
|
||||
let bucket_clone = bucket.clone();
|
||||
let object_clone = object.clone();
|
||||
let rreq_clone = rreq.clone();
|
||||
let version_id_clone = obj_info_.version_id.map(|v| v.to_string());
|
||||
let version_id_clone = obj_info_
|
||||
.version_id
|
||||
.map(|v| v.to_string())
|
||||
.or_else(|| (opts.versioned || opts.version_suspended).then(|| Uuid::nil().to_string()));
|
||||
let versioned = opts.versioned;
|
||||
let version_suspended = opts.version_suspended;
|
||||
let mut restore_operation_metadata = HashMap::new();
|
||||
if let Some(id) = restore_operation_id {
|
||||
insert_str(&mut restore_operation_metadata, SUFFIX_RESTORE_OPERATION_ID, id.to_string());
|
||||
@@ -7797,6 +7802,8 @@ impl DefaultObjectUsecase {
|
||||
..Default::default()
|
||||
},
|
||||
version_id: version_id_clone,
|
||||
versioned,
|
||||
version_suspended,
|
||||
user_defined: restore_operation_metadata,
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user