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

[framework] introduce private entry function for creating multisig account #14645

Merged

Conversation

yeptos
Copy link
Contributor

@yeptos yeptos commented Sep 15, 2024

Description

Introduce private entry functions for creating multisig account. This eliminates the need for generating the complex proof the existing create_with_existing_account functions require.

This proposal mirrors changes implemented in commits fdc041f d771cec, where a private entry function was introduced for account key rotation with a similar purpose.

AIP proposal: aptos-foundation/AIPs#496

Type of Change

  • New feature
  • Bug fix
  • Breaking change
  • Performance improvement
  • Refactoring
  • Dependency update
  • Documentation update
  • Tests

Which Components or Systems Does This Change Impact?

  • Validator Node
  • Full Node (API, Indexer, etc.)
  • Move/Aptos Virtual Machine
  • Aptos Framework
  • Aptos CLI/SDK
  • Developer Infrastructure
  • Other (specify)

How Has This Been Tested?

Added unit tests

Key Areas to Review

The implementation itself is straightforward, please see the AIP for the rationale of this change.

Checklist

  • I have read and followed the CONTRIBUTING doc
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I identified and added all stakeholders and component owners affected by this change as reviewers
  • I tested both happy and unhappy path of the functionality
  • I have made corresponding changes to the documentation

Copy link

trunk-io bot commented Sep 15, 2024

⏱️ 29m total CI duration on this PR
Job Cumulative Duration Recent Runs
rust-move-unit-coverage 14m 🟩
rust-move-tests 9m 🟩
general-lints 2m 🟩
rust-cargo-deny 2m 🟩
check-dynamic-deps 1m 🟩
semgrep/ci 43s 🟩
file_change_determinator 11s 🟩
permission-check 4s 🟥
permission-check 3s 🟥
permission-check 2s 🟥
permission-check 2s 🟥

settingsfeedbackdocs ⋅ learn more about trunk.io

@movekevin
Copy link
Contributor

Can you add an integration test under api/ for this as well?

@yeptos yeptos force-pushed the multisig-v2-create-from-existing-signer branch from cb6f3a8 to 449e4ac Compare September 28, 2024 07:42
@yeptos yeptos force-pushed the multisig-v2-create-from-existing-signer branch from 449e4ac to 3b7e10f Compare September 28, 2024 08:58
@yeptos
Copy link
Contributor Author

yeptos commented Sep 28, 2024

@movekevin added a minimal test case under api/ 3b7e10f

…count

This eliminates the need for generating the complex proof the existing
create_with_existing_account functions require.
@sherry-x sherry-x force-pushed the multisig-v2-create-from-existing-signer branch from 9b812ec to 524333a Compare October 1, 2024 03:47
@sherry-x sherry-x enabled auto-merge (rebase) October 1, 2024 03:47

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

auto-merge was automatically disabled October 1, 2024 04:16

Head branch was pushed to by a user without write access

@sherry-x sherry-x enabled auto-merge (rebase) October 2, 2024 00:01

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Oct 2, 2024

✅ Forge suite realistic_env_max_load success on 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9

two traffics test: inner traffic : committed: 14517.47 txn/s, latency: 2736.95 ms, (p50: 2700 ms, p70: 2700, p90: 3000 ms, p99: 3300 ms), latency samples: 5519960
two traffics test : committed: 99.94 txn/s, latency: 1498.10 ms, (p50: 1500 ms, p70: 1600, p90: 1700 ms, p99: 2000 ms), latency samples: 1740
Latency breakdown for phase 0: ["QsBatchToPos: max: 0.242, avg: 0.222", "QsPosToProposal: max: 1.100, avg: 1.060", "ConsensusProposalToOrdered: max: 0.329, avg: 0.291", "ConsensusOrderedToCommit: max: 0.425, avg: 0.403", "ConsensusProposalToCommit: max: 0.713, avg: 0.694"]
Max non-epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.82s no progress at version 3039921 (avg 0.20s) [limit 15].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 8.63s no progress at version 3039919 (avg 8.63s) [limit 15].
Test Ok

Copy link
Contributor

github-actions bot commented Oct 2, 2024

✅ Forge suite framework_upgrade success on 7ef01a26f8d8a38610e3d364b722df517c970749 ==> 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9

Compatibility test results for 7ef01a26f8d8a38610e3d364b722df517c970749 ==> 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9 (PR)
Upgrade the nodes to version: 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1284.30 txn/s, submitted: 1286.80 txn/s, failed submission: 2.51 txn/s, expired: 2.51 txn/s, latency: 2539.88 ms, (p50: 2100 ms, p70: 2400, p90: 4100 ms, p99: 6000 ms), latency samples: 112760
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1237.52 txn/s, submitted: 1240.17 txn/s, failed submission: 2.65 txn/s, expired: 2.65 txn/s, latency: 2456.76 ms, (p50: 2100 ms, p70: 2400, p90: 3900 ms, p99: 5900 ms), latency samples: 111880
5. check swarm health
Compatibility test for 7ef01a26f8d8a38610e3d364b722df517c970749 ==> 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9 passed
Upgrade the remaining nodes to version: 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1153.47 txn/s, submitted: 1156.77 txn/s, failed submission: 3.30 txn/s, expired: 3.30 txn/s, latency: 2514.86 ms, (p50: 2400 ms, p70: 2700, p90: 3400 ms, p99: 5400 ms), latency samples: 104800
Test Ok

Copy link
Contributor

github-actions bot commented Oct 2, 2024

✅ Forge suite compat success on 7ef01a26f8d8a38610e3d364b722df517c970749 ==> 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9

Compatibility test results for 7ef01a26f8d8a38610e3d364b722df517c970749 ==> 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9 (PR)
1. Check liveness of validators at old version: 7ef01a26f8d8a38610e3d364b722df517c970749
compatibility::simple-validator-upgrade::liveness-check : committed: 15035.94 txn/s, latency: 2238.49 ms, (p50: 2100 ms, p70: 2200, p90: 2700 ms, p99: 5400 ms), latency samples: 488320
2. Upgrading first Validator to new version: 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 7325.21 txn/s, latency: 3893.93 ms, (p50: 4400 ms, p70: 4600, p90: 4700 ms, p99: 4800 ms), latency samples: 134860
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 6593.01 txn/s, latency: 4816.54 ms, (p50: 4700 ms, p70: 4800, p90: 7200 ms, p99: 7400 ms), latency samples: 236400
3. Upgrading rest of first batch to new version: 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 6767.71 txn/s, latency: 4168.80 ms, (p50: 4800 ms, p70: 5000, p90: 5100 ms, p99: 5300 ms), latency samples: 126260
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 6686.71 txn/s, latency: 4703.09 ms, (p50: 4800 ms, p70: 4900, p90: 6900 ms, p99: 7400 ms), latency samples: 222020
4. upgrading second batch to new version: 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 11843.88 txn/s, latency: 2318.65 ms, (p50: 2600 ms, p70: 2600, p90: 2800 ms, p99: 2900 ms), latency samples: 206320
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 11900.00 txn/s, latency: 2687.67 ms, (p50: 2600 ms, p70: 2800, p90: 3000 ms, p99: 3400 ms), latency samples: 383400
5. check swarm health
Compatibility test for 7ef01a26f8d8a38610e3d364b722df517c970749 ==> 27ff60d41b8cbd1110b9218abcf3c8e754e30ea9 passed
Test Ok

@sherry-x sherry-x merged commit 7f784af into aptos-labs:main Oct 2, 2024
93 of 95 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants