diff --git a/bencher/src/handler.rs b/bencher/src/handler.rs index 79cc8c9ec..2657071a9 100644 --- a/bencher/src/handler.rs +++ b/bencher/src/handler.rs @@ -54,6 +54,9 @@ pub fn handle(output: Vec, storage_infos: Vec) { let name = String::from_utf8(info.storage_name.clone()).unwrap(); let comment = format!("{}::{} (r: {}, w: {})", pallet, name, reads, writes); comments.push(comment); + } else { + let comment = format!("Unknown (r: {}, w: {})", reads, writes); + comments.push(comment); } }); diff --git a/bencher/src/tracker.rs b/bencher/src/tracker.rs index 44032eafb..e5345ef12 100644 --- a/bencher/src/tracker.rs +++ b/bencher/src/tracker.rs @@ -217,7 +217,8 @@ impl BenchTracker { let mut summary = HashMap::::new(); self.main_keys.read().iter().for_each(|(key, info)| { - let prefix = key[0..32].to_vec(); + let prefix_end = core::cmp::min(32, key.len()); + let prefix = key[0..prefix_end].to_vec(); if let Some(report) = summary.get_mut(&prefix) { if info.read.is_important() { report.read += 1; @@ -241,7 +242,8 @@ impl BenchTracker { self.child_keys.read().iter().for_each(|(prefix, keys)| { keys.iter().for_each(|(key, info)| { - let prefix = [prefix.clone(), key.clone()].concat()[0..32].to_vec(); + let prefix_end = core::cmp::min(32, prefix.len() + key.len()); + let prefix = [prefix.clone(), key.clone()].concat()[0..prefix_end].to_vec(); if let Some(report) = summary.get_mut(&prefix) { if info.read.is_important() { report.read += 1; diff --git a/bencher/test/src/mock.rs b/bencher/test/src/mock.rs index 0c18524ba..375044a1a 100644 --- a/bencher/test/src/mock.rs +++ b/bencher/test/src/mock.rs @@ -1,5 +1,6 @@ #![cfg(any(test, feature = "bench"))] +use frame_support::pallet_prelude::ConstU32; use sp_core::H256; use sp_runtime::{ traits::{BlakeTwo256, IdentityLookup},