feat(storage): wire capacity/object perf tuning and add batch benchmark runners (#2628)

This commit is contained in:
houseme
2026-04-21 15:20:57 +08:00
committed by GitHub
parent 989827e3b5
commit 960c13a34b
8 changed files with 1239 additions and 15 deletions
+4 -1
View File
@@ -707,6 +707,10 @@ impl ObjectIO for SetDisks {
tokio::spawn(async move {
let _guard = read_lock_guard; // keep guard alive until task ends (None if optimization enabled)
let mut writer = wd;
// Do not wrap the entire read+write pipeline in `disk_read_timeout`.
// `get_object_with_fileinfo` also waits on `writer`, so an outer timeout
// would incorrectly treat downstream backpressure as disk-read latency.
// Disk read timeouts must be enforced at the actual disk I/O operations.
if let Err(e) = Self::get_object_with_fileinfo(
&bucket,
&object,
@@ -757,7 +761,6 @@ impl ObjectIO for SetDisks {
user_defined.insert(key.clone(), value.clone());
}
}
let sc_parity_drives = {
if let Some(sc) = GLOBAL_STORAGE_CLASS.get() {
sc.get_parity_for_sc(user_defined.get(AMZ_STORAGE_CLASS).cloned().unwrap_or_default().as_str())