Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate the first on-the-fly (feature flag) migration with FVM #6748

Open
fxamacker opened this issue Nov 21, 2024 · 0 comments
Open

Integrate the first on-the-fly (feature flag) migration with FVM #6748

fxamacker opened this issue Nov 21, 2024 · 0 comments
Assignees
Labels
Execution Cadence Execution Team

Comments

@fxamacker
Copy link
Member

Updates onflow/cadence#3584

We need to integrate our first on-the-fly (feature flag and non-HCU) migration with FVM.

Note

As the first feature flag migration, this work can help other projects requiring feature flag or on-the-fly migrations.

Additionally, full migration test using Nov 1 mainnet data showed:

  • -440 million (-28.8%) reduction in payload count
  • -180 million (also -28.8%) reduction in mtrie node count
  • -11.4% reduction in state size

Considerations

Full benefits of migration will be realized after all accounts are migrated. Given this, we want to migrate more than the authorizing account. E.g. it seems possible to migrate accounts that got touched in a transaction.

In the Execution team sync (Nov 20), @janezpodhostnik took time to answer some questions from the team. We can:

  • prevent migrations from affecting transaction fees
  • enforce a limit on max number of migrated accounts per transaction
  • prevent migration from failing the transaction (e.g. won't fail transaction if migrating causes storage capacity to be exceeded)

Additional considerations were also discussed during the Execution team sync.

NOTE: Migrating domain registers to atree will touch <= 20 registers for each account. Currently, we have 9 domains in Cadence and accounts average 4-5 domains on mainnet.

@fxamacker fxamacker added the Execution Cadence Execution Team label Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Execution Cadence Execution Team
Projects
None yet
Development

No branches or pull requests

2 participants