fix(runtime): finalize issue 2941 profiling cleanup (#2983)

* perf(runtime): narrow profiling support and upgrade starshard

* style(notify): normalize starshard imports

* perf(ecstore): reduce list_path_raw coordination overhead

* docs(scripts): add issue 2941 perf capture workflow

* fix(runtime): finalize issue 2941 profiling cleanup

* build(deps): bump quick-xml to 0.40.0

* chore(scripts): untrack local perf capture guide

* fix(scripts): honor label in perf capture output
This commit is contained in:
houseme
2026-05-16 19:09:04 +08:00
committed by GitHub
parent 9dcf8cb7ea
commit 6e12289339
13 changed files with 416 additions and 724 deletions
+2 -2
View File
@@ -16,7 +16,7 @@ use crate::rules::{RulesMap, TargetIdSet};
use percent_encoding::percent_decode_str;
use rustfs_s3_common::EventName;
use rustfs_targets::arn::TargetID;
use starshard::AsyncShardedHashMap;
use starshard::{AsyncShardedHashMap, DEFAULT_SHARDS, SnapshotMode};
use std::sync::Arc;
use tracing::info;
@@ -37,7 +37,7 @@ pub struct NotifyRuleEngine {
impl NotifyRuleEngine {
pub fn new() -> Self {
Self {
bucket_rules_map: Arc::new(AsyncShardedHashMap::new(0)),
bucket_rules_map: Arc::new(AsyncShardedHashMap::with_snapshot_mode(DEFAULT_SHARDS, SnapshotMode::Cached)),
}
}
+2 -2
View File
@@ -15,7 +15,7 @@
use crate::rules::{BucketRulesSnapshot, BucketSnapshotRef, DynRulesContainer};
use arc_swap::ArcSwap;
use rustfs_s3_common::EventName;
use starshard::ShardedHashMap;
use starshard::{DEFAULT_SHARDS, ShardedHashMap};
use std::fmt;
use std::sync::Arc;
@@ -46,7 +46,7 @@ impl SubscriberIndex {
/// Returns a new instance of SubscriberIndex.
pub fn new(empty_rules: Arc<DynRulesContainer>) -> Self {
Self {
inner: ShardedHashMap::new(64),
inner: ShardedHashMap::new(DEFAULT_SHARDS),
empty_rules,
}
}