aptos-core icon indicating copy to clipboard operation
aptos-core copied to clipboard

Ed25519 test only natives

Open zjma opened this issue 3 years ago • 2 comments

Description

This PR adds support for test-only natives in Aptos VM via a feature flag. There was a previous attempt of doing this via a boolean flag that we moved away from in #5129.

This PR also adds test-only native functions for Ed25519 signature generation, so we can get rid of hardcoded public key/signatures in our Move module tests!


This change is Reviewable

zjma avatar Oct 25 '22 07:10 zjma

previous attempt: https://github.com/aptos-labs/aptos-core/pull/5129/files

zjma avatar Oct 25 '22 07:10 zjma

Core logic looks good.

alinush avatar Oct 25 '22 17:10 alinush

Forge is running suite land_blocking on bc22397437394542f2aee2fa749192110e6f35e1

github-actions[bot] avatar Oct 25 '22 19:10 github-actions[bot]

Forge is running suite compat on 2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> bc22397437394542f2aee2fa749192110e6f35e1

github-actions[bot] avatar Oct 25 '22 19:10 github-actions[bot]

:white_check_mark: Forge suite land_blocking success on bc22397437394542f2aee2fa749192110e6f35e1

performance benchmark with full nodes : 6398 TPS, 6067 ms latency, 18600 ms p99 latency,(!) expired 7923 out of 2740080 txns
Test Ok

github-actions[bot] avatar Oct 25 '22 19:10 github-actions[bot]

:white_check_mark: Forge suite compat success on 2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> bc22397437394542f2aee2fa749192110e6f35e1

Compatibility test results for 2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> bc22397437394542f2aee2fa749192110e6f35e1 (PR)
1. Check liveness of validators at old version: 2d8b1b57553d869190f61df1aaf7f31a8fc19a7b
compatibility::simple-validator-upgrade::liveness-check : 7506 TPS, 5170 ms latency, 7000 ms p99 latency,no expired txns
2. Upgrading first Validator to new version: bc22397437394542f2aee2fa749192110e6f35e1
compatibility::simple-validator-upgrade::single-validator-upgrade : 4854 TPS, 8150 ms latency, 11900 ms p99 latency,no expired txns
3. Upgrading rest of first batch to new version: bc22397437394542f2aee2fa749192110e6f35e1
compatibility::simple-validator-upgrade::half-validator-upgrade : 4548 TPS, 9049 ms latency, 11700 ms p99 latency,no expired txns
4. upgrading second batch to new version: bc22397437394542f2aee2fa749192110e6f35e1
compatibility::simple-validator-upgrade::rest-validator-upgrade : 6797 TPS, 5588 ms latency, 10400 ms p99 latency,no expired txns
5. check swarm health
Compatibility test for 2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> bc22397437394542f2aee2fa749192110e6f35e1 passed
Test Ok

github-actions[bot] avatar Oct 25 '22 19:10 github-actions[bot]

@chloeqjz @CapCap @areshand @movekevin check out this new way to generate ed25519 signatures in tests! Support for BLS/MultiEd25519 signatures are also coming soon.

zjma avatar Oct 25 '22 20:10 zjma