Skip to content

Commit 083286b

Browse files
authored
Merge pull request #2226 from cuteolaf/clean-up-subnet-identities-storage
Clean up subnet identities storage
2 parents b088e71 + a4fbd02 commit 083286b

File tree

11 files changed

+77
-563
lines changed

11 files changed

+77
-563
lines changed

pallets/subtensor/src/benchmarks.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -446,15 +446,16 @@ mod pallet_benchmarks {
446446

447447
Subtensor::<T>::add_balance_to_coldkey_account(&old_coldkey, free_balance_old.into());
448448
let name: Vec<u8> = b"The fourth Coolest Identity".to_vec();
449-
let identity = ChainIdentity {
449+
let identity = ChainIdentityV2 {
450450
name,
451451
url: vec![],
452+
github_repo: vec![],
452453
image: vec![],
453454
discord: vec![],
454455
description: vec![],
455456
additional: vec![],
456457
};
457-
Identities::<T>::insert(&old_coldkey, identity);
458+
IdentitiesV2::<T>::insert(&old_coldkey, identity);
458459

459460
#[extrinsic_call]
460461
_(

pallets/subtensor/src/coinbase/root.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -391,8 +391,6 @@ impl<T: Config> Pallet<T> {
391391
let _ = LastHotkeySwapOnNetuid::<T>::clear_prefix(netuid, u32::MAX, None);
392392

393393
// --- 20. Identity maps across versions (netuid-scoped).
394-
SubnetIdentities::<T>::remove(netuid);
395-
SubnetIdentitiesV2::<T>::remove(netuid);
396394
if SubnetIdentitiesV3::<T>::contains_key(netuid) {
397395
SubnetIdentitiesV3::<T>::remove(netuid);
398396
Self::deposit_event(Event::SubnetIdentityRemoved(netuid));

pallets/subtensor/src/lib.rs

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2057,26 +2057,11 @@ pub mod pallet {
20572057
OptionQuery,
20582058
>;
20592059

2060-
/// --- MAP ( coldkey ) --> identity. (DEPRECATED for V2)
2061-
#[pallet::storage]
2062-
pub type Identities<T: Config> =
2063-
StorageMap<_, Blake2_128Concat, T::AccountId, ChainIdentityOf, OptionQuery>;
2064-
20652060
/// --- MAP ( coldkey ) --> identity
20662061
#[pallet::storage]
20672062
pub type IdentitiesV2<T: Config> =
20682063
StorageMap<_, Blake2_128Concat, T::AccountId, ChainIdentityOfV2, OptionQuery>;
20692064

2070-
/// --- MAP ( netuid ) --> identity. (DEPRECATED for V2)
2071-
#[pallet::storage]
2072-
pub type SubnetIdentities<T: Config> =
2073-
StorageMap<_, Blake2_128Concat, NetUid, SubnetIdentityOf, OptionQuery>;
2074-
2075-
/// --- MAP ( netuid ) --> identityV2 (DEPRECATED for V3)
2076-
#[pallet::storage]
2077-
pub type SubnetIdentitiesV2<T: Config> =
2078-
StorageMap<_, Blake2_128Concat, NetUid, SubnetIdentityOfV2, OptionQuery>;
2079-
20802065
/// --- MAP ( netuid ) --> SubnetIdentityOfV3
20812066
#[pallet::storage]
20822067
pub type SubnetIdentitiesV3<T: Config> =

pallets/subtensor/src/macros/hooks.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -75,17 +75,13 @@ mod hooks {
7575
// Populate OwnedHotkeys map for coldkey swap. Doesn't update storage vesion.
7676
// Storage version v6 -> v7
7777
.saturating_add(migrations::migrate_populate_owned_hotkeys::migrate_populate_owned::<T>())
78-
// Migrate Delegate Ids on chain
79-
.saturating_add(migrations::migrate_chain_identity::migrate_set_hotkey_identities::<T>())
8078
// Migrate Commit-Reval 2.0
8179
.saturating_add(migrations::migrate_commit_reveal_v2::migrate_commit_reveal_2::<T>())
8280
// Migrate to RAO
8381
.saturating_add(migrations::migrate_rao::migrate_rao::<T>())
8482
// Fix the IsNetworkMember map to be consistent with other storage maps
8583
.saturating_add(migrations::migrate_fix_is_network_member::migrate_fix_is_network_member::<T>())
8684
.saturating_add(migrations::migrate_subnet_volume::migrate_subnet_volume::<T>())
87-
// Upgrade identities to V2
88-
.saturating_add(migrations::migrate_identities_v2::migrate_identities_to_v2::<T>())
8985
// Set the min burn across all subnets to a new minimum
9086
.saturating_add(migrations::migrate_set_min_burn::migrate_set_min_burn::<T>())
9187
// Set the min difficulty across all subnets to a new minimum
@@ -121,8 +117,6 @@ mod hooks {
121117
.saturating_add(migrations::migrate_fix_root_subnet_tao::migrate_fix_root_subnet_tao::<T>())
122118
// Fix the owner disable the registration
123119
.saturating_add(migrations::migrate_set_registration_enable::migrate_set_registration_enable::<T>())
124-
// Migrate Subnet Identities to V3
125-
.saturating_add(migrations::migrate_subnet_identities_to_v3::migrate_subnet_identities_to_v3::<T>())
126120
// Migrate subnet symbols to fix the shift after subnet 81
127121
.saturating_add(migrations::migrate_subnet_symbols::migrate_subnet_symbols::<T>())
128122
// Migrate CRV3 add commit_block
@@ -163,6 +157,8 @@ mod hooks {
163157
.saturating_add(migrations::migrate_pending_emissions::migrate_pending_emissions::<T>())
164158
// Reset unactive subnets
165159
.saturating_add(migrations::migrate_reset_unactive_sn::migrate_reset_unactive_sn::<T>())
160+
// Remove old identity map entries(Identities, SubnetIdentities, SubnetIdentitiesV2)
161+
.saturating_add(migrations::migrate_remove_old_identity_maps::migrate_remove_old_identity_maps::<T>())
166162
// Remove unknown neuron axon, certificate prom
167163
.saturating_add(migrations::migrate_remove_unknown_neuron_axon_cert_prom::migrate_remove_unknown_neuron_axon_cert_prom::<T>());
168164
weight

pallets/subtensor/src/migrations/migrate_chain_identity.rs

Lines changed: 0 additions & 171 deletions
This file was deleted.

pallets/subtensor/src/migrations/migrate_identities_v2.rs

Lines changed: 0 additions & 91 deletions
This file was deleted.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
use super::*;
2+
use crate::HasMigrationRun;
3+
use frame_support::{traits::Get, weights::Weight};
4+
use scale_info::prelude::string::String;
5+
6+
pub fn migrate_remove_old_identity_maps<T: Config>() -> Weight {
7+
let migration_name = b"migrate_remove_old_identity_maps".to_vec();
8+
let mut weight = T::DbWeight::get().reads(1);
9+
10+
if HasMigrationRun::<T>::get(&migration_name) {
11+
log::info!(
12+
"Migration '{:?}' has already run. Skipping.",
13+
String::from_utf8_lossy(&migration_name)
14+
);
15+
return weight;
16+
}
17+
18+
log::info!(
19+
"Running migration '{}'",
20+
String::from_utf8_lossy(&migration_name),
21+
);
22+
23+
// ------------------------------
24+
// Step 1: Remove Map entries
25+
// ------------------------------
26+
remove_prefix::<T>("SubtensorModule", "Identities", &mut weight);
27+
remove_prefix::<T>("SubtensorModule", "SubnetIdentities", &mut weight);
28+
remove_prefix::<T>("SubtensorModule", "SubnetIdentitiesV2", &mut weight);
29+
30+
// ------------------------------
31+
// Step 2: Mark Migration as Completed
32+
// ------------------------------
33+
34+
HasMigrationRun::<T>::insert(&migration_name, true);
35+
weight = weight.saturating_add(T::DbWeight::get().writes(1));
36+
37+
log::info!(
38+
"Migration '{:?}' completed successfully.",
39+
String::from_utf8_lossy(&migration_name)
40+
);
41+
42+
weight
43+
}

0 commit comments

Comments
 (0)