Skip to content

feat(load): add trie stress test #4137

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

Merged
merged 2 commits into from
Jul 30, 2025
Merged

feat(load): add trie stress test #4137

merged 2 commits into from
Jul 30, 2025

Conversation

RodrigoVillar
Copy link
Contributor

Why this should be merged

As mentioned in #3914 (comment), this is another test that we eventually planned on adding to the load package.

How this works

Adds a new TrieStressTest type along with its dependencies (contract code). This contract is from the following: ava-labs/subnet-evm#981

How this was tested

CI + ran load test locally

Need to be documented in RELEASES.md?

No

@RodrigoVillar RodrigoVillar self-assigned this Jul 29, 2025
@RodrigoVillar RodrigoVillar marked this pull request as ready for review July 29, 2025 16:29
@Copilot Copilot AI review requested due to automatic review settings July 29, 2025 16:29
@RodrigoVillar RodrigoVillar requested a review from maru-ava as a code owner July 29, 2025 16:29
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds a new trie stress test to the load testing package, designed to stress test Ethereum Virtual Machine (EVM) state trie operations by writing multiple values to contract storage.

  • Adds a new TrieStressTest contract and corresponding Go bindings
  • Integrates the trie stress test into the existing random weighted test framework
  • Refactors existing code to deploy and use two separate contracts (simulator and trie stress test)

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
tests/load/tests.go Deploys new trie stress test contract and adds it to the weighted test suite
tests/load/contracts/TrieStressTest.sol Simple Solidity contract that writes values to storage array for trie stress testing
tests/load/contracts/TrieStressTest.bindings.go Generated Go bindings for the trie stress test contract
Comments suppressed due to low confidence (1)

tests/load/tests.go:150

  • The new TrieStressTest is missing a Weight field, which means it will have a zero weight in the weighted test selection. This could prevent the test from being executed in the random weighted test framework.
		{

@RodrigoVillar RodrigoVillar requested a review from Elvis339 July 29, 2025 16:39
@maru-ava maru-ava added this pull request to the merge queue Jul 30, 2025
Merged via the queue into master with commit 6947e4c Jul 30, 2025
30 checks passed
@maru-ava maru-ava deleted the load-add-trie-test branch July 30, 2025 16:43
@github-project-automation github-project-automation bot moved this to Done 🎉 in avalanchego Jul 30, 2025
@RodrigoVillar RodrigoVillar mentioned this pull request Jul 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants