Tooling to directly verify and benchmark the results of go-ethereum state diffs.
Thomas E Lackey
88759a7cbc
All checks were successful
Test / Run unit tests (push) Successful in 12m28s
``` ❯ make test ./scripts/compare-diffs.sh -d _var/ geth plugeth DBUG[10-11|21:40:14] Registering statediff indexer metrics. DBUG[10-11|21:40:14] Registering statediff DB metrics. WARN [10-11|21:40:14.563] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:14.563] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:14.563] Attempting PreTrieCommit, but default PluginLoader has not been initialized INFO [10-11|21:40:14.563] Persisted trie from memory database nodes=1 size=147.00B time="5.248µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B WARN [10-11|21:40:14.563] Attempting PostTrieCommit, but default PluginLoader has not been initialized WARN [10-11|21:40:14.563] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:14.563] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:14.563] Attempting PreTrieCommit, but default PluginLoader has not been initialized INFO [10-11|21:40:14.563] Persisted trie from memory database nodes=1 size=157.00B time="10.904µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B WARN [10-11|21:40:14.563] Attempting PostTrieCommit, but default PluginLoader has not been initialized + diff _var//A/0_diff.txt _var//B/0_diff.txt + diff _var//A/1_diff.txt _var//B/1_diff.txt + diff _var//A/2_diff.txt _var//B/2_diff.txt + diff _var//A/3_diff.txt _var//B/3_diff.txt ./scripts/compare-diffs.sh -d _var/ geth plugeth-parallel DBUG[10-11|21:40:16] Registering statediff indexer metrics. DBUG[10-11|21:40:16] Registering statediff DB metrics. WARN [10-11|21:40:16.986] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:16.987] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:16.987] Attempting PreTrieCommit, but default PluginLoader has not been initialized INFO [10-11|21:40:16.987] Persisted trie from memory database nodes=1 size=147.00B time="7.87µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B WARN [10-11|21:40:16.987] Attempting PostTrieCommit, but default PluginLoader has not been initialized WARN [10-11|21:40:16.987] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:16.988] Attempting StateUpdate, but default PluginLoader has not been initialized WARN [10-11|21:40:16.988] Attempting PreTrieCommit, but default PluginLoader has not been initialized INFO [10-11|21:40:16.988] Persisted trie from memory database nodes=1 size=157.00B time="17.649µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B WARN [10-11|21:40:16.988] Attempting PostTrieCommit, but default PluginLoader has not been initialized + diff _var//A/0_diff.txt _var//B/0_diff.txt + diff _var//A/1_diff.txt _var//B/1_diff.txt + diff _var//A/2_diff.txt _var//B/2_diff.txt + diff _var//A/3_diff.txt _var//B/3_diff.txt ``` Reviewed-on: #5 Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com> Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com> |
||
---|---|---|
.github/workflows | ||
dumpdiff-geth | ||
dumpdiff-plugeth | ||
dumpdiff-plugeth-parallel | ||
internal/statediff | ||
pkg | ||
scripts | ||
go.mod | ||
go.sum | ||
Makefile | ||
README.md |
eth-statediff-compliance
Tooling to directly verify and benchmark the results of go-ethereum state diffs.
Usage
Use scripts/compare-diffs.sh
to compare outputs of go-ethereum/statediff
and plugeth-statediff
.
# Compare the output of geth-statediff and the statediff plugin (as of v0.1.1):
./scripts/compare-diffs.sh -d _var/ geth plugeth
# Compare geth-statediff and the plugin using parallel iterators:
./scripts/compare-diffs.sh -d _var/ geth plugeth-parallel
A zero exit code indicates identical outputs, modulo possible duplicate nodes.