MigrationInProgress

Storage Plain v334 → current

Cursor tracking migration progress after runtime upgrades.

Explore chain
Queried by: developers

The Big Picture

After runtime upgrades that change storage format, contracts need migration. This cursor tracks progress. Some(cursor) = migration pending, None = complete or not needed.

Use Cases

  • Check migration status after upgrades
  • Determine if contracts are fully functional
  • Plan migration execution

From Chain Metadata

A migration can span across multiple blocks. This storage defines a cursor to track the progress of the migration, enabling us to resume from the last completed position.

Purpose & Usage

Purpose

Indicates whether contract storage migration is pending.

Common Query Patterns

  • Query to check if migration needed

Stored Value

value (BoundedVec)

Relationships

Modified By

Code Examples

import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";

const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });

// Query MigrationInProgress storage (no keys - plain value)
const result = await api.query
  [stringCamelCase("Contracts")]
  [stringCamelCase("MigrationInProgress")]();
console.log("MigrationInProgress:", result.toHuman());

Runtime Info

Pallet
Contracts
Storage Kind
Plain
First Version
v334
Current Version
v393