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

raise_by_secret demo #14024

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

raise_by_secret demo #14024

wants to merge 5 commits into from

Conversation

zjma
Copy link
Contributor

@zjma zjma commented Jul 17, 2024

Description

In this PR:

  • A new validator component to perform DKG/resharing/raise_by_secret.
  • Naive async Move API: raise_by_secret and retrive_result.
  • Required framework/reconfig refactoring: async reconfig now waits for both randomness DKG and MPC DKG/resharing
  • Required framework/reconfig refactoring: new ValidatorTransaction variant to publish MPC results.
  • A smoke test.

To do:

  • An example dapp
  • real field-element DKG/resharing
  • Gas pricing
  • Anti-DDOS/traffic control: validators should not work on too many raise_by_secret tasks at the same time

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?

Key Areas to Review

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 Jul 17, 2024

⏱️ 36h 48m total CI duration on this PR
Job Cumulative Duration Recent Runs
indexer-grpc-e2e-tests / test-indexer-grpc-docker-compose 12h 24m 🟩🟩🟥🟥 (+7 more)
execution-performance / single-node-performance 5h 22m 🟩🟩🟩🟩🟩 (+10 more)
forge-e2e-test / forge 3h 9m 🟩🟩🟥 (+7 more)
forge-compat-test / forge 2h 47m 🟩🟩🟩 (+7 more)
test-target-determinator 1h 12m 🟩🟩🟩🟩🟩 (+16 more)
execution-performance / test-target-determinator 1h 1m 🟩🟩🟩🟩🟩 (+13 more)
check 1h 1m 🟩🟩🟩🟩🟩 (+13 more)
general-lints 37m 🟩🟩🟩🟩🟩 (+16 more)
rust-cargo-deny 36m 🟩🟩🟩🟩🟩 (+16 more)
test-fuzzers 36m 🟩
check-dynamic-deps 32m 🟩🟩🟩🟩🟩 (+21 more)
rust-move-unit-coverage 15m 🟩
rust-move-unit-coverage 15m 🟩
rust-move-unit-coverage 15m 🟩
rust-move-unit-coverage 14m 🟥
rust-move-unit-coverage 11m 🟩
rust-move-unit-coverage 11m 🟩
semgrep/ci 11m 🟩🟩🟩🟩🟩 (+21 more)
rust-move-unit-coverage 11m 🟩
rust-move-unit-coverage 11m 🟩
rust-move-unit-coverage 10m 🟩
rust-move-unit-coverage 10m 🟩
rust-move-unit-coverage 10m 🟩
rust-move-unit-coverage 10m
rust-move-tests 10m 🟥
rust-move-tests 10m 🟥
rust-move-tests 10m 🟥
rust-move-unit-coverage 10m 🟩
rust-move-tests 10m 🟥
rust-move-unit-coverage 10m 🟩
rust-move-tests 9m 🟥
rust-move-unit-coverage 9m
rust-move-tests 9m 🟥
rust-move-tests 9m 🟥
rust-move-tests 9m 🟥
rust-move-tests 9m 🟥
rust-move-tests 9m 🟥
rust-move-tests 9m
rust-move-tests 8m 🟥
rust-move-tests 8m
rust-move-tests 6m
rust-move-unit-coverage 6m
rust-move-unit-coverage 6m
rust-move-tests 6m
file_change_determinator 5m 🟩🟩🟩🟩🟩 (+20 more)
rust-move-tests 5m
rust-doc-tests 5m 🟥
rust-doc-tests 5m 🟥
rust-move-unit-coverage 5m
rust-doc-tests 5m 🟥
rust-doc-tests 5m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
file_change_determinator 4m 🟩🟩🟩🟩🟩 (+17 more)
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
rust-doc-tests 4m 🟥
file_change_determinator 4m 🟩🟩🟩🟩🟩 (+16 more)
rust-move-tests 3m 🟥
rust-move-tests 3m 🟥
rust-move-unit-coverage 3m 🟥
rust-move-unit-coverage 3m 🟥
rust-doc-tests 3m 🟥
rust-move-tests 3m 🟥
rust-move-tests 3m 🟥
rust-move-tests 2m
permission-check 1m 🟩🟩🟩🟩🟩 (+24 more)
permission-check 1m 🟩🟩🟩🟩🟩 (+24 more)
permission-check 1m 🟩🟩🟩🟩🟩 (+20 more)
permission-check 1m 🟩🟩🟩🟩🟩 (+20 more)
permission-check 1m 🟩🟩🟩🟩🟩 (+16 more)
determine-docker-build-metadata 45s 🟩🟩🟩🟩🟩 (+16 more)
Backport PR 3s 🟥
permission-check 3s 🟩
rust-move-unit-coverage 1s
rust-doc-tests 1s
rust-move-tests 1s

🚨 4 jobs on the last run were significantly faster/slower than expected

Job Duration vs 7d avg Delta
indexer-grpc-e2e-tests / test-indexer-grpc-docker-compose 6h 2m +22693%
forge-e2e-test / forge 34m 15m +129%
test-target-determinator 7m 5m +47%
execution-performance / test-target-determinator 3m 5m -34%

settingsfeedbackdocs ⋅ learn more about trunk.io

Copy link

codecov bot commented Jul 17, 2024

Codecov Report

Attention: Patch coverage is 2.66160% with 256 lines in your changes missing coverage. Please review.

Project coverage is 59.2%. Comparing base (62818ee) to head (cad5f63).
Report is 15 commits behind head on main.

Files Patch % Lines
aptos-move/aptos-vm/src/validator_txns/mpc.rs 0.0% 103 Missing ⚠️
aptos-move/aptos-vm/src/aptos_vm.rs 0.0% 70 Missing ⚠️
aptos-move/aptos-vm/src/validator_txns/dkg.rs 0.0% 34 Missing ⚠️
types/src/mpc.rs 0.0% 20 Missing ⚠️
aptos-move/aptos-vm/src/system_module_names.rs 0.0% 12 Missing ⚠️
types/src/contract_event.rs 0.0% 9 Missing ⚠️
aptos-move/aptos-vm/src/validator_txns/mod.rs 0.0% 4 Missing ⚠️
types/src/validator_txn.rs 0.0% 4 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff            @@
##             main   #14024    +/-   ##
========================================
  Coverage    59.1%    59.2%            
========================================
  Files         832      834     +2     
  Lines      201993   202586   +593     
========================================
+ Hits       119473   120023   +550     
- Misses      82520    82563    +43     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Aug 7, 2024

✅ Forge suite realistic_env_max_load success on cad5f6317074a814beb3ae927905baabd29179af

two traffics test: inner traffic : committed: 12164.00 txn/s, latency: 3272.61 ms, (p50: 3000 ms, p90: 3900 ms, p99: 9600 ms), latency samples: 4625000
two traffics test : committed: 100.07 txn/s, latency: 2786.22 ms, (p50: 2500 ms, p90: 3100 ms, p99: 11600 ms), latency samples: 1780
Latency breakdown for phase 0: ["QsBatchToPos: max: 0.243, avg: 0.223", "QsPosToProposal: max: 0.380, avg: 0.271", "ConsensusProposalToOrdered: max: 0.331, avg: 0.312", "ConsensusOrderedToCommit: max: 0.735, avg: 0.688", "ConsensusProposalToCommit: max: 1.066, avg: 1.000"]
Max round gap was 1 [limit 4] at version 2562817. Max no progress secs was 7.511428 [limit 15] at version 2562817.
Test Ok

Copy link
Contributor

github-actions bot commented Aug 7, 2024

✅ Forge suite compat success on 1c2ee7082d6eff8c811ee25d6f5a7d00860a75d5 ==> cad5f6317074a814beb3ae927905baabd29179af

Compatibility test results for 1c2ee7082d6eff8c811ee25d6f5a7d00860a75d5 ==> cad5f6317074a814beb3ae927905baabd29179af (PR)
1. Check liveness of validators at old version: 1c2ee7082d6eff8c811ee25d6f5a7d00860a75d5
compatibility::simple-validator-upgrade::liveness-check : committed: 7647.86 txn/s, latency: 3806.65 ms, (p50: 3000 ms, p90: 3900 ms, p99: 29200 ms), latency samples: 311040
2. Upgrading first Validator to new version: cad5f6317074a814beb3ae927905baabd29179af
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 6921.20 txn/s, latency: 3967.42 ms, (p50: 4500 ms, p90: 4900 ms, p99: 5000 ms), latency samples: 129140
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 6298.47 txn/s, latency: 4452.66 ms, (p50: 4600 ms, p90: 4900 ms, p99: 6000 ms), latency samples: 239400
3. Upgrading rest of first batch to new version: cad5f6317074a814beb3ae927905baabd29179af
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 6894.60 txn/s, latency: 4110.10 ms, (p50: 4700 ms, p90: 5200 ms, p99: 5300 ms), latency samples: 126680
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 6632.64 txn/s, latency: 4831.40 ms, (p50: 4800 ms, p90: 7000 ms, p99: 7400 ms), latency samples: 219880
4. upgrading second batch to new version: cad5f6317074a814beb3ae927905baabd29179af
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 5565.02 txn/s, latency: 4267.19 ms, (p50: 2800 ms, p90: 11300 ms, p99: 13500 ms), latency samples: 145460
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 9229.32 txn/s, latency: 3397.17 ms, (p50: 2500 ms, p90: 9800 ms, p99: 11700 ms), latency samples: 324140
5. check swarm health
Compatibility test for 1c2ee7082d6eff8c811ee25d6f5a7d00860a75d5 ==> cad5f6317074a814beb3ae927905baabd29179af passed
Test Ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CICD:run-e2e-tests when this label is present github actions will run all land-blocking e2e tests from the PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant