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

Add SOROBAN_TEST_EXTRA_PROTOCOL for side-by-side testing #4439

Merged
merged 3 commits into from
Sep 18, 2024

Conversation

graydon
Copy link
Contributor

@graydon graydon commented Aug 24, 2024

This implements an idea @MonsieurNicolas proposed recently: now that we have fairly easy "by version number" selection among different soroban hosts, we can run any given transaction twice during offline replay to see (a) whether it produces the same side effects and (b) whether it performs the same or different.

It works during any tx application -- offilne catchup or online execution -- you just set SOROBAN_TEST_EXTRA_PROTOCOL=22 (say) and while replaying a p21 tx it'll also execute it on p22 and report a summary of both txs side by side. You may also need to set SOROBAN_TEST_CPU_BUDGET_FACTOR=2 or so to give a bit more budget wiggle room to txs that might have higher execution costs.

@graydon graydon added this pull request to the merge queue Sep 18, 2024
Merged via the queue into stellar:master with commit bfd1cc2 Sep 18, 2024
14 checks passed
@graydon graydon deleted the soroban-test-extra-protocol branch September 18, 2024 05:53
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.

2 participants