Check:data guides at README does not work

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)

Hi @aeharvlee

Thanks for reporting the issue. I think this is related to the genesis block reward issue. We will have the fix for this soon.