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

feature: NotarizedTransactionV2 can be validated #1922

Draft
wants to merge 3 commits into
base: refactors/further-subintent-fixes
Choose a base branch
from

Conversation

dhedey
Copy link
Contributor

@dhedey dhedey commented Sep 18, 2024

Summary

INSTRUCTIONS:
Add summary - one or two sentences explaining the purpose of this PR.

Details

INSTRUCTIONS:
Provide further details about the changes, or how they fit into the roadmap.
You can delete this section if it's not useful.

Testing

INSTRUCTIONS:
Further details about the tests you've added or manually performed.
You can delete this section if it's not useful.

Update Recommendations

INSTRUCTIONS:
This section is to provide recommendations to consumers of this repo about how they
should handle breaking changes, or integrate new features. The two key stakeholder
groups are dApp Developers and Internal Integrators, and there are separate sections
for each.

In order to allow us to compile aggregated update instructions across PRs, please tag the PR
with 0+ of the relevant labels:
* scrypto-lib - Any change to the scrypto library
* sbor - Any breaking change to SBOR encoding/decoding
* manifest - Any change to manifest display, compilation/decompilation
* transaction - Any change which affects the compiled manifest, or transaction semantics
* substate - Any change to substates, the state model, or what's stored in the DB
* native-blueprint-interface - Any change to the interface of native blueprints
* files-moved - Any change to where engine types have moved, which will require
  internal integrators to update their imports

If you have a breaking change which doesn't fix into a category above, then tag it with
the closest label, and discuss in slack/discord.

If your PR contains no breaking changes or new features or hasn't been tagged, this whole
section can be deleted.

For dApp Developers

INSTRUCTIONS:
Migration recommendations for a dApp developer to update their dApp/integrations
due to to the change/s in this PR.

These will be aggregated by the Developer Ecosystem team and included in the next Scrypto migration guide
(eg https://docs-babylon.radixdlt.com/main/scrypto/release_notes/migrating_from_0.7_to_0.8.html )

For Internal Integrators

INSTRUCTIONS:
Instructions to any internal integrations (eg Node, Toolkit, Gateway, Ledger App) for how the changes may affect
them and recommendations for how they should update to support this change.

Copy link

Phylum Report Link

Copy link

github-actions bot commented Sep 18, 2024

Docker tags
docker.io/radixdlt/private-scrypto-builder:5a0053e719

Copy link

github-actions bot commented Sep 18, 2024

Benchmark for 5a0053e

Click to view benchmark
Test Base PR %
costing::bench_prepare_wasm 62.7±0.13ms 62.8±0.54ms +0.16%
costing::decode_encoded_i8_array_to_manifest_raw_value 19.6±0.04ms 19.0±0.07ms -3.06%
costing::decode_encoded_i8_array_to_manifest_value 41.6±0.11ms 42.2±0.09ms +1.44%
costing::decode_encoded_tuple_array_to_manifest_raw_value 63.4±0.14ms 71.6±0.21ms +12.93%
costing::decode_encoded_tuple_array_to_manifest_value 98.9±0.22ms 98.4±0.23ms -0.51%
costing::decode_encoded_u8_array_to_manifest_raw_value 32.0±0.14µs 32.3±0.09µs +0.94%
costing::decode_encoded_u8_array_to_manifest_value 41.7±0.09ms 42.3±0.12ms +1.44%
costing::decode_rpd_to_manifest_raw_value 12.5±0.04µs 14.1±0.09µs +12.80%
costing::decode_rpd_to_manifest_value 11.1±0.07µs 10.8±0.04µs -2.70%
costing::deserialize_wasm 1249.5±3.74µs 1259.9±4.29µs +0.83%
costing::execute_transaction_creating_big_vec_substates 715.0±12.75ms 713.8±12.66ms -0.17%
costing::execute_transaction_reading_big_vec_substates 590.6±1.91ms 596.4±1.59ms +0.98%
costing::instantiate_flash_loan 899.5±502.27µs 1012.8±1370.03µs +12.60%
costing::instantiate_radiswap 1040.0±1587.20µs 964.8±899.71µs -7.23%
costing::spin_loop 21.3±0.06ms 21.3±0.14ms 0.00%
costing::validate_sbor_payload 33.3±0.09µs 32.4±0.16µs -2.70%
costing::validate_sbor_payload_bytes 260.4±3.16ns 248.5±0.72ns -4.57%
costing::validate_secp256k1 77.0±0.86µs 77.1±0.25µs +0.13%
costing::validate_wasm 33.7±0.08ms 34.0±0.05ms +0.89%
decimal::add/0 8.4±0.00ns 8.4±0.01ns 0.00%
decimal::add/rust-native 9.9±0.01ns 9.9±0.02ns 0.00%
decimal::add/wasmi 223.5±0.46ns 234.9±0.38ns +5.10%
decimal::add/wasmi-call-native 2.1±0.01µs 2.2±0.01µs +4.76%
decimal::div/0 187.1±0.24ns 185.5±0.41ns -0.86%
decimal::from_string/0 155.1±0.25ns 153.4±0.34ns -1.10%
decimal::mul/0 151.7±0.25ns 149.8±0.24ns -1.25%
decimal::mul/rust-native 147.5±0.22ns 147.3±0.33ns -0.14%
decimal::mul/wasmi 12.1±0.05µs 11.9±0.03µs -1.65%
decimal::mul/wasmi-call-native 2.3±0.01µs 2.3±0.01µs 0.00%
decimal::pow/0 696.3±2.01ns 701.3±2.64ns +0.72%
decimal::pow/rust-native 668.5±0.89ns 668.8±1.37ns +0.04%
decimal::pow/wasmi 57.3±0.24µs 57.3±0.19µs 0.00%
decimal::pow/wasmi-call-native 2.5±0.01µs 2.5±0.01µs 0.00%
decimal::root/0 8.3±0.01µs 8.1±0.01µs -2.41%
decimal::sub/0 8.2±0.01ns 8.2±0.01ns 0.00%
decimal::to_string/0 438.7±2.10ns 439.2±0.65ns +0.11%
precise_decimal::add/0 8.8±0.04ns 8.8±0.01ns 0.00%
precise_decimal::add/rust-native 10.8±0.02ns 10.8±0.02ns 0.00%
precise_decimal::add/wasmi 274.2±1.62ns 283.9±1.94ns +3.54%
precise_decimal::add/wasmi-call-native 2.8±0.00µs 3.4±0.01µs +21.43%
precise_decimal::div/0 317.4±0.35ns 317.8±0.52ns +0.13%
precise_decimal::from_string/0 202.6±0.24ns 201.9±0.42ns -0.35%
precise_decimal::mul/0 365.5±0.83ns 363.5±0.61ns -0.55%
precise_decimal::mul/rust-native 330.7±1.34ns 319.7±0.36ns -3.33%
precise_decimal::mul/wasmi 34.6±0.24µs 34.1±0.12µs -1.45%
precise_decimal::mul/wasmi-call-native 3.2±0.00µs 3.3±0.01µs +3.12%
precise_decimal::pow/0 1940.1±5.34ns 1925.9±2.84ns -0.73%
precise_decimal::pow/rust-native 1577.7±9.30ns 1547.9±6.47ns -1.89%
precise_decimal::pow/wasmi 165.7±0.89µs 168.2±1.33µs +1.51%
precise_decimal::pow/wasmi-call-native 5.8±0.03µs 5.8±0.02µs 0.00%
precise_decimal::root/0 58.4±0.05µs 58.4±0.08µs 0.00%
precise_decimal::sub/0 8.9±0.03ns 9.0±0.08ns +1.12%
precise_decimal::to_string/0 698.5±1.12ns 701.6±4.43ns +0.44%
schema::validate_payload 366.6±0.89µs 366.3±0.69µs -0.08%
transaction::radiswap 5.2±0.03ms 5.4±0.04ms +3.85%
transaction::transfer 1793.3±7.28µs 1793.7±7.61µs +0.02%
transaction_processing::prepare 2.6±0.01ms 2.6±0.01ms 0.00%
transaction_processing::prepare_and_decompile 7.0±0.03ms 6.9±0.03ms -1.43%
transaction_processing::prepare_and_decompile_and_recompile 33.0±0.31ms 31.7±1.48ms -3.94%
transaction_validation::validate_manifest 43.2±0.14µs 43.4±0.09µs +0.46%
transaction_validation::verify_bls_2KB 1016.0±18.25µs 1011.6±14.86µs -0.43%
transaction_validation::verify_bls_32B 1022.1±22.76µs 1003.8±8.75µs -1.79%
transaction_validation::verify_ecdsa 74.9±0.30µs 74.8±0.19µs -0.13%
transaction_validation::verify_ed25519 57.2±0.41µs 55.7±0.27µs -2.62%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant