Environment
- OS: macOS 12.3 MacBook Pro (16-inch, 2021)
- Chip: Apple M1 Max
- Memory: 32 GB
- Go version:
go version go1.17.7 darwin/arm64
Problem
TLDR: I’m following guides at README of GitHub - coinbase/rosetta-ethereum: Ethereum Rosetta API Implementation.
But it does not work actually. Is there anyone who knows this issue? How can I run test successfully?
Step to re-produce
1: Run Testnet - Online (Remote):
docker run -d --rm --ulimit "nofile=100000:100000" -v "$(pwd)/ethereum-data:/data" -e "MODE=ONLINE" -e "NETWORK=TESTNET" -e "PORT=8080" -p 8080:8080 -p 30303:30303 rosetta-ethereum:latest
2. Install rosetta-cli
3. Run rosetta-cli check:data command
Run rosetta-cli check:data --configuration-file rosetta-cli-conf/testnet/config.json
as guide said.
Below is the result after rosetta-cli check:data ran.
➜ rosetta-ethereum git:(master) ✗ ./bin/rosetta-cli check:data --configuration-file rosetta-cli-conf/testnet/config.json
loaded configuration file: rosetta-cli-conf/testnet/config.json
badger 2022/03/25 13:43:27 INFO: All 1 tables opened in 1ms
badger 2022/03/25 13:43:27 INFO: Replaying file id: 0 at offset: 32397
badger 2022/03/25 13:43:27 INFO: Replay took: 1.834µs
2022/03/25 13:43:27 Loading previously seen accounts (this could take a while)...
Initialized reconciler with 12 previously seen accounts
2022/03/25 13:43:27 Skipping balance bootstrapping because already started syncing
2022/03/25 13:43:27 check:data status server running on port 9090
2022/03/25 13:43:27 Added &{Index:10 Hash:0xb3074f936815a0425e674890d7db7b5e94f3a06dca5b22d291b55dcd02dde93e} to cache
2022/03/25 13:43:27 Added &{Index:9 Hash:0x641a5a49dc4c9de449ebeb9ffc67e47e800e4bd61068b0e95b3db52caceb28a0} to cache
2022/03/25 13:43:27 Added &{Index:8 Hash:0xbe9598750f1922bbc2cb039bcfefe0ce6aa0456be6ec758d9c96f6b2e48f235e} to cache
2022/03/25 13:43:27 Added &{Index:7 Hash:0xa1274f3bb99202f86f6bb0a5d13d5336ab44047bf16cbde9b77212d6f0422a8e} to cache
2022/03/25 13:43:27 Added &{Index:6 Hash:0x0ca510fdde26c01a28858a5c6289bdfef5f616df81ade7d9192bc5f4cb6ce42b} to cache
2022/03/25 13:43:27 Added &{Index:5 Hash:0x56b2d6887f0dd96f772ec4fb98df1ab334fcaa1055ca1185283b1232ad1e22b8} to cache
2022/03/25 13:43:27 Added &{Index:4 Hash:0x7a4c2b25ba5a596dee078bc7360179ac79ecb89494888b9960307f12c5a7bc23} to cache
2022/03/25 13:43:27 Added &{Index:3 Hash:0xaf2f2d55e6514389bcc388ccaf40c6ebf7b3814a199a214f1203fb674076e6df} to cache
2022/03/25 13:43:27 Added &{Index:2 Hash:0x88e8bc1dd383672e96d77ee247e7524622ff3b15c337bd33ef602f15ba82d920} to cache
2022/03/25 13:43:27 Added &{Index:1 Hash:0x41800b5c3f1717687d85fc9018faac0a6e90b39deaa0b99e7fe4fe796ddeb26a} to cache
2022/03/25 13:43:27 Added &{Index:0 Hash:0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d} to cache
2022/03/25 13:43:27 Syncing 11-321357
Missing balance-changing operation detected for 0x0000000000000000000000000000000000000000 computed: 5000000000000000001ETH live: 1ETH
Related Operations key is not implemented. This is fine as long as there is a distinction between sends and receives and no multiple outputs
Related Operations key is not implemented. This is fine as long as there is a distinction between sends and receives and no multiple outputs
2022/03/25 13:43:28 request failed: /block {"index":13} Post "http://localhost:8080/block": EOF: retrying fetch for block {"index":13} after 0.418906s (prior attempts: 1)
2022/03/25 13:43:28 request failed: /block {"index":16} Post "http://localhost:8080/block": EOF: retrying fetch for block {"index":16} after 0.498019s (prior attempts: 1)
2022/03/25 13:43:28 request failed: /block {"index":14} Post "http://localhost:8080/block": EOF: retrying fetch for block {"index":14} after 0.315251s (prior attempts: 1)
2022/03/25 13:43:28 check:data status server shutting down
[MEMORY] Heap: 3999.086838MB Stack: 1.343750MB System: 4233.999016MB GCs: 3
Searching for block with missing operations...hold tight
Using temporary directory /var/folders/wg/rl5hywy901z7d74lm7cs3j480000gp/T/802596010
badger 2022/03/25 13:43:29 INFO: All 0 tables opened in 0s
2022/03/25 13:43:29 Syncing -240-10
Removing temporary directory /var/folders/wg/rl5hywy901z7d74lm7cs3j480000gp/T/802596010
unable to find missing ops: could not find block with missing ops
Error: reconciliation failure: inactive reconciliation error for 0x0000000000000000000000000000000000000000 at 10 (computed: 5000000000000000001ETH, live: 1ETH)
+--------------------+--------------------------------+--------+
| CHECK:DATA TESTS | DESCRIPTION | STATUS |
+--------------------+--------------------------------+--------+
| Request/Response | Rosetta implementation | PASSED |
| | serviced all requests | |
+--------------------+--------------------------------+--------+
| Response Assertion | All responses are correctly | PASSED |
| | formatted | |
+--------------------+--------------------------------+--------+
| Block Syncing | Blocks are connected into a | PASSED |
| | single canonical chain | |
+--------------------+--------------------------------+--------+
| Balance Tracking | Account balances did not go | PASSED |
| | negative | |
+--------------------+--------------------------------+--------+
| Reconciliation | No balance discrepencies were | FAILED |
| | found between computed and | |
| | live balances | |
+--------------------+--------------------------------+--------+
+--------------------------+--------------------------------+-----------+
| CHECK:DATA STATS | DESCRIPTION | VALUE |
+--------------------------+--------------------------------+-----------+
| Blocks | # of blocks synced | 11 |
+--------------------------+--------------------------------+-----------+
| Orphans | # of blocks orphaned | 0 |
+--------------------------+--------------------------------+-----------+
| Transactions | # of transaction processed | 11 |
+--------------------------+--------------------------------+-----------+
| Operations | # of operations processed | 11 |
+--------------------------+--------------------------------+-----------+
| Accounts | # of accounts seen | 12 |
+--------------------------+--------------------------------+-----------+
| Active Reconciliations | # of reconciliations performed | 1 |
| | after seeing an account in a | |
| | block | |
+--------------------------+--------------------------------+-----------+
| Inactive Reconciliations | # of reconciliations performed | 21 |
| | on randomly selected accounts | |
+--------------------------+--------------------------------+-----------+
| Exempt Reconciliations | # of reconciliation failures | 0 |
| | considered exempt | |
+--------------------------+--------------------------------+-----------+
| Failed Reconciliations | # of reconciliation failures | 3 |
+--------------------------+--------------------------------+-----------+
| Skipped Reconciliations | # of reconciliations skipped | 0 |
+--------------------------+--------------------------------+-----------+
| Reconciliation Coverage | % of accounts that have been | 8.333333% |
| | reconciled | |
+--------------------------+--------------------------------+-----------+
badger 2022/03/25 13:43:29 INFO: Storing value log head: {Fid:0 Len:30 Offset:32710}
badger 2022/03/25 13:43:29 INFO: [Compactor: 173] Running compaction: {level:0 score:1.73 dropPrefixes:[]} for level: 0
badger 2022/03/25 13:43:29 INFO: LOG Compact 0->1, del 2 tables, add 1 tables, took 39.156333ms
badger 2022/03/25 13:43:29 INFO: [Compactor: 173] Compaction for level: 0 DONE
badger 2022/03/25 13:43:29 INFO: Force compaction on level 0 done
Error: reconciliation failure: inactive reconciliation error for 0x0000000000000000000000000000000000000000 at 10 (computed: 5000000000000000001ETH, live: 1ETH)
Usage:
rosetta-cli check:data [flags]
Flags:
--asserter-configuration-file string Check that /network/options matches contents of file at this path
-h, --help help for check:data
Global Flags:
--block-profile string Save the pprof block profile in the specified file
--configuration-file string Configuration file that provides connection and test settings.
If you would like to generate a starter configuration file (populated
with the defaults), run rosetta-cli configuration:create.
Any fields not populated in the configuration file will be populated with
default values.
--cpu-profile string Save the pprof cpu profile in the specified file
--mem-profile string Save the pprof mem profile in the specified file
Command Failed: reconciliation failure: inactive reconciliation error for 0x0000000000000000000000000000000000000000 at 10 (computed: 5000000000000000001ETH, live: 1ETH)