fix: filter out changes that aren't balancer related

This commit is contained in:
Florian Pellissier
2024-03-11 17:50:12 +01:00
parent 51275f0ccf
commit accfa074fd

View File

@@ -97,7 +97,14 @@ pub fn extract_contract_changes(
balance_changes.sort_unstable_by_key(|change| change.ordinal); balance_changes.sort_unstable_by_key(|change| change.ordinal);
code_changes.sort_unstable_by_key(|change| change.ordinal); code_changes.sort_unstable_by_key(|change| change.ordinal);
storage_changes.iter().for_each(|storage_change| { storage_changes
.iter()
.filter(|changes| {
contracts
.get_last(format!("pool:{0}", hex::encode(&changes.address)))
.is_some()
})
.for_each(|storage_change| {
let contract_change = changed_contracts let contract_change = changed_contracts
.entry(storage_change.address.clone()) .entry(storage_change.address.clone())
.or_insert_with(|| InterimContractChange { .or_insert_with(|| InterimContractChange {
@@ -125,7 +132,14 @@ pub fn extract_contract_changes(
.copy_from_slice(&storage_change.new_value); .copy_from_slice(&storage_change.new_value);
}); });
balance_changes.iter().for_each(|balance_change| { balance_changes
.iter()
.filter(|changes| {
contracts
.get_last(format!("pool:{0}", hex::encode(&changes.address)))
.is_some()
})
.for_each(|balance_change| {
let contract_change = changed_contracts let contract_change = changed_contracts
.entry(balance_change.address.clone()) .entry(balance_change.address.clone())
.or_insert_with(|| InterimContractChange { .or_insert_with(|| InterimContractChange {
@@ -148,7 +162,14 @@ pub fn extract_contract_changes(
} }
}); });
code_changes.iter().for_each(|code_change| { code_changes
.iter()
.filter(|changes| {
contracts
.get_last(format!("pool:{0}", hex::encode(&changes.address)))
.is_some()
})
.for_each(|code_change| {
let contract_change = changed_contracts let contract_change = changed_contracts
.entry(code_change.address.clone()) .entry(code_change.address.clone())
.or_insert_with(|| InterimContractChange { .or_insert_with(|| InterimContractChange {