mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-30 21:17:56 +00:00
Use Saturating Math in XCM (#5845)
* saturating xcm * Even more saturating Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
This commit is contained in:
@@ -417,13 +417,13 @@ pub mod pallet {
|
||||
// by the destinations being most sent to.
|
||||
let mut q = VersionDiscoveryQueue::<T>::take().into_inner();
|
||||
// TODO: correct weights.
|
||||
weight_used += T::DbWeight::get().read + T::DbWeight::get().write;
|
||||
weight_used.saturating_accrue(T::DbWeight::get().reads_writes(1, 1));
|
||||
q.sort_by_key(|i| i.1);
|
||||
while let Some((versioned_dest, _)) = q.pop() {
|
||||
if let Ok(dest) = MultiLocation::try_from(versioned_dest) {
|
||||
if Self::request_version_notify(dest).is_ok() {
|
||||
// TODO: correct weights.
|
||||
weight_used += T::DbWeight::get().read + T::DbWeight::get().write;
|
||||
weight_used.saturating_accrue(T::DbWeight::get().reads_writes(1, 1));
|
||||
break
|
||||
}
|
||||
}
|
||||
@@ -490,7 +490,7 @@ pub mod pallet {
|
||||
WithdrawAsset(assets),
|
||||
InitiateTeleport { assets: Wild(All), dest, xcm: Xcm(vec![]) },
|
||||
]);
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000 + w)
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000.saturating_add(w))
|
||||
},
|
||||
_ => Weight::max_value(),
|
||||
}
|
||||
@@ -528,7 +528,7 @@ pub mod pallet {
|
||||
let mut message = Xcm(vec![
|
||||
TransferReserveAsset { assets, dest, xcm: Xcm(vec![]) }
|
||||
]);
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000 + w)
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000.saturating_add(w))
|
||||
},
|
||||
_ => Weight::max_value(),
|
||||
}
|
||||
@@ -690,7 +690,7 @@ pub mod pallet {
|
||||
let mut message = Xcm(vec![
|
||||
TransferReserveAsset { assets, dest, xcm: Xcm(vec![]) }
|
||||
]);
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000 + w)
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000.saturating_add(w))
|
||||
},
|
||||
_ => Weight::max_value(),
|
||||
}
|
||||
@@ -740,7 +740,7 @@ pub mod pallet {
|
||||
WithdrawAsset(assets),
|
||||
InitiateTeleport { assets: Wild(All), dest, xcm: Xcm(vec![]) },
|
||||
]);
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000 + w)
|
||||
T::Weigher::weight(&mut message).map_or(Weight::max_value(), |w| 100_000_000.saturating_add(w))
|
||||
},
|
||||
_ => Weight::max_value(),
|
||||
}
|
||||
@@ -889,17 +889,13 @@ pub mod pallet {
|
||||
let mut weight_used = 0;
|
||||
|
||||
// TODO: Correct weights for the components of this:
|
||||
let todo_sv_migrate_weight: Weight = T::DbWeight::get().read + T::DbWeight::get().write;
|
||||
let todo_vn_migrate_weight: Weight = T::DbWeight::get().read + T::DbWeight::get().write;
|
||||
let todo_sv_migrate_weight: Weight = T::DbWeight::get().reads_writes(1, 1);
|
||||
let todo_vn_migrate_weight: Weight = T::DbWeight::get().reads_writes(1, 1);
|
||||
let todo_vnt_already_notified_weight: Weight = T::DbWeight::get().read;
|
||||
let todo_vnt_notify_weight: Weight =
|
||||
T::DbWeight::get().read + T::DbWeight::get().write * 3;
|
||||
let todo_vnt_migrate_weight: Weight =
|
||||
T::DbWeight::get().read + T::DbWeight::get().write;
|
||||
let todo_vnt_migrate_fail_weight: Weight =
|
||||
T::DbWeight::get().read + T::DbWeight::get().write;
|
||||
let todo_vnt_notify_migrate_weight: Weight =
|
||||
T::DbWeight::get().read + T::DbWeight::get().write * 3;
|
||||
let todo_vnt_notify_weight: Weight = T::DbWeight::get().reads_writes(1, 3);
|
||||
let todo_vnt_migrate_weight: Weight = T::DbWeight::get().reads_writes(1, 1);
|
||||
let todo_vnt_migrate_fail_weight: Weight = T::DbWeight::get().reads_writes(1, 1);
|
||||
let todo_vnt_notify_migrate_weight: Weight = T::DbWeight::get().reads_writes(1, 3);
|
||||
|
||||
use VersionMigrationStage::*;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user