From 17cbc12f7035dea49ef1b0a84b5703ed5fa4925a Mon Sep 17 00:00:00 2001 From: librelois <c@elo.tf> Date: Fri, 16 Jul 2021 20:21:04 +0200 Subject: [PATCH] fix(identity): genesis state build must be deterministic --- pallets/identity/src/lib.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pallets/identity/src/lib.rs b/pallets/identity/src/lib.rs index 86e152b7f..7e5d88833 100644 --- a/pallets/identity/src/lib.rs +++ b/pallets/identity/src/lib.rs @@ -255,9 +255,13 @@ pub mod pallet { dids.insert(idty_value.did); } + // We need to sort identities to ensure determinisctic result + let mut identities = self.identities.clone(); + identities.sort_by(|idty_val_1, idty_val_2| idty_val_1.did.cmp(&idty_val_2.did)); + <StorageVersion<T>>::put(Releases::V1_0_0); <IdentitiesCount<T>>::put(self.identities.len() as u64); - for idty_value in &self.identities { + for idty_value in &identities { let idty_index = Pallet::<T>::get_next_idty_index(); if let Some(removable_on) = idty_value.removable_on { <IdentitiesRemovableOn<T>>::append( -- GitLab