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

SYS-4089 Benchmark for new extrinsics #408

Merged
merged 23 commits into from
May 31, 2024

Conversation

nahuseyoum
Copy link
Contributor

No description provided.

ivan-cholakov and others added 20 commits May 3, 2024 14:48
Introduces the data structures and the voting mechanism for accepting
events ranges from ethereum.

Ranges that are too big will be broken down into smaller partitions,
voted upon individually, and accepted as one.

Follow up commit will do the validate unsigned and processing of the
partitions.

Jira tickets:
- SYS-3635
- SYS-3930
Updates the validate unsigned function to support
submit_discovered_events extrinsic.

Jira tickets:
- SYS-3635
- SYS-3930
This PR introduces support for processing votes upon achieving consensus. It extends extrinsics and data structures accordingly.

Once the final vote is cast, the voting round for the Ethereum range partition is finalized, and the partition is processed.

Additionally, this PR extends the subscription mechanism of the eth-bridge pallet. By default, pallets ignore processed events, requiring the implementation of a handler to process them.
Benchmarking for certain actions will be addressed in a separate PR.

Jira Tasks:
- SYS-3930
- SYS-3635
Signed-off-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Thanos Doukoudakis <56822898+thadouk@users.noreply.github.com>
Signed-off-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Thanos Doukoudakis <56822898+thadouk@users.noreply.github.com>
Adds a new endpoint that allows the chain to reach consenus over the initial ethereum range to be used.
This allows to simplify the voting logic for active ranges, eliminating the special case of the first range.

Jira ticket:
- SYS-3930
Extends the runtime API for initial range consensus mechanism

Jira task
- SYS-3930
Adds basic unit tests that check the submit_ethereum_events interface

Jira task:
- SYS-3930
- SYS-3635
- General cleanup
- Rename of storage items
- Removal of mocks
- Wire up with runtime, implementing different events filters for each runtime.
…397)

This commit includes the integration of the initial range voting functionality with the client.
It ports changes to integrate the runtime API for testing runtime behavior.
Additionally, it refactors the runtime API to improve proof creation by relocating helper
functions to primitive crates.
Fixes genesis config for test runtime.

Jira tasks:
- SYS-3930
- SYS-3635
This commit addresses issues with extrinsic submission in the runtime:

- Registers the extension to the instance submitting the extrinsic.
- Updates signature validation.
- Simplifies interface and error handling via the runtime API, following the report_equivocation style.
…o eth-bridge (#390)

Co-authored-by: Thanos <56822898+thadouk@users.noreply.github.com>
Co-authored-by: nahuseyoum <nahu.seyoum@aventus.io>
…-Network-Services/avn-parachain into nahu-sys3560-ethBridge-refactor
@nahuseyoum nahuseyoum changed the title SYS-3560 Benchmark for new extrinsics SYS-???? Benchmark for new extrinsics May 30, 2024
@nahuseyoum nahuseyoum changed the title SYS-???? Benchmark for new extrinsics SYS-4089 Benchmark for new extrinsics May 30, 2024
Base automatically changed from nahu-sys3560-ethBridge-refactor to feat/SYS-3560-add-event-listener May 31, 2024 08:39
…-Network-Services/avn-parachain into nahu-sys3560-bench-1
Copy link
Contributor

@thadouk thadouk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need two bench per extrinsic?

@nahuseyoum
Copy link
Contributor Author

Why do we need two bench per extrinsic?

They cover the 2 scenarios where:

  • You have voted but quorum is not reached (less processing to do)
  • You have cast the last vote that reaches quorum so the chain will start processing the result (more processing done)
    At the end, based on the outcome, we refund the unused gas

@nahuseyoum nahuseyoum merged commit c386fe6 into feat/SYS-3560-add-event-listener May 31, 2024
@nahuseyoum nahuseyoum deleted the nahu-sys3560-bench-1 branch May 31, 2024 10:21
thadouk added a commit that referenced this pull request Jun 5, 2024
Signed-off-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Thanos <56822898+thadouk@users.noreply.github.com>
Co-authored-by: Michael <62653655+MBrozhko34@users.noreply.github.com>
thadouk added a commit that referenced this pull request Jun 26, 2024
Signed-off-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Thanos <56822898+thadouk@users.noreply.github.com>
Co-authored-by: Michael <62653655+MBrozhko34@users.noreply.github.com>
thadouk added a commit that referenced this pull request Jun 26, 2024
Signed-off-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Ivan Cholakov <icholakov1@gmail.com>
Co-authored-by: Thanos <56822898+thadouk@users.noreply.github.com>
Co-authored-by: Michael <62653655+MBrozhko34@users.noreply.github.com>
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.

5 participants