Skip to content

Make Forest work with Blockscout #4967

@elmattic

Description

@elmattic

Describe the bug

Investigate why Blockscout doesn’t run out-of-the-box with Forest.

I’ve successfully managed to use Blockscout alongside Lotus, but with Forest, the indexing progress in Blockscout doesn’t seem to advance.

To reproduce

  1. Follow tutorial for deploying Blockscout locally.
  2. Make sure you have set:
    export ETHEREUM_JSONRPC_HTTP_URL=http://localhost:2345/rpc/v1
    export ETHEREUM_JSONRPC_VARIANT=filecoin

Log output

Log Output
2024-11-06T17:24:30.900 application=indexer fetcher=internal_transaction count=10 error_count=10 [error] failed to fetch internal transactions for blocks [2118024, 2118068, 2118137, 2118194, 2118313, 2118394, 2118481, 2118579, 2118639, 2118727]: ** (ErlangError) Erlang error: :econnrefused
2024-11-06T17:24:30.900 application=indexer fetcher=internal_transaction count=10 error_count=10 [error] failed to fetch internal transactions for blocks [2118002, 2118075, 2118144, 2118228, 2118271, 2118379, 2118503, 2118570, 2118637, 2118724]: ** (ErlangError) Erlang error: :econnrefused
2024-11-06T17:24:30.904 application=explorer fetcher=block_catchup first_block_number=2118020 last_block_number=2118011 import_id=23316995 transaction_id=23317027 [error] Could not insert all of chunk into Elixir.Explorer.Chain.Transaction using options because of error.

Chunk Size: 13
Chunk:

[%{index: 2, input: %Explorer.Chain.Data{bytes: <<134, 142, 16, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>>}, status: :ok, type: 2, value: #Explorer.Chain.Wei<5000000000000000000>, s: Decimal.new("0"), v: Decimal.new("0"), r: Decimal.new("0"), hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<36, 201, 226, 57, 200, 199, 102, 222, 42, 40, 4, 119, 212, 98, 63, 39, 11, 123, 36, 25, 66, 95, 255, 184, 33, 177, 157, 168, 31, 193, 75, 126>>}, block_number: 2118017, from_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90>>}, block_timestamp: ~U[2024-11-06 04:21:30.000000Z], block_hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<68, 5, 213, 38, 126, 173, 236, 51, 24, 138, 44, 243, 4, 50, 65, 161, 23, 51, 190, 202, 165, 1, 137, 221, 11, 175, 232, 129, 101, 164, 223, 242>>}, gas_used: Decimal.new("1236663"), nonce: 281540, max_priority_fee_per_gas: #Explorer.Chain.Wei<178903971>, max_fee_per_gas: #Explorer.Chain.Wei<178905025>, to_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<146, 195, 179, 121, 194, 23, 253, 248, 96, 56, 132, 119, 14, 131, 253, 237, 123, 116, 16, 248>>}, gas_price: #Explorer.Chain.Wei<222219458>, gas: Decimal.new("1536078"), inserted_at: ~U[2024-11-06 10:24:30.874868Z], cumulative_gas_used: Decimal.new("0"), updated_at: ~U[2024-11-06 10:24:30.874868Z]}, %{index: 1, input: %Explorer.Chain.Data{bytes: <<239, 158, 94, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 23, 217, 206, 247, 83, 227, 12, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 213, 155, 139, 158, 255, 239, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>>}, status: :ok, type: 2, value: #Explorer.Chain.Wei<0>, s: Decimal.new("40131761413054386675948524039534642480931570276685805705127987967457721204669"), v: Decimal.new("0"), r: Decimal.new("84651351797432761736457004856467840718799831855365567010345840653896344753896"), hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<42, 59, 218, 97, 12, 123, 49, 126, 120, 28, 169, 86, 21, 140, 70, 251, 26, 28, 59, 191, 196, 15, 215, 40, 153, 244, 226, 171, 253, 167, 246, 189>>}, block_number: 2118017, from_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<178, 156, 0, 41, 151, 86, 19, 94, 197, 214, 161, 64, 202, 84, 236, 119, 121, 10, 153, 214>>}, block_timestamp: ~U[2024-11-06 04:21:30.000000Z], block_hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<68, 5, 213, 38, 126, 173, 236, 51, 24, 138, 44, 243, 4, 50, 65, 161, 23, 51, 190, 202, 165, 1, 137, 221, 11, 175, 232, 129, 101, 164, 223, 242>>}, gas_used: Decimal.new("13660306"), nonce: 6178, max_priority_fee_per_gas: #Explorer.Chain.Wei<288684909>, max_fee_per_gas: #Explorer.Chain.Wei<288685109>, to_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<140, 42, 220, 6, 231, 59, 250, 42, 193, 85, 151, 232, 13, 17, 245, 231, 91, 186, 90, 85>>}, gas_price: #Explorer.Chain.Wei<360650181>, gas: Decimal.new("17065632"), inserted_at: ~U[2024-11-06 10:24:30.874868Z], cumulative_gas_used: Decimal.new("0"), updated_at: ~U[2024-11-06 10:24:30.874868Z]}, %{index: 0, input: %Explorer.Chain.Data{bytes: <<239, 158, 94, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 168, 62, 12, 132, 207, 236, 12, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 179, 129, 50, 149, 151, 255, 239, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>>}, status: :ok, type: 2, value: #Explorer.Chain.Wei<0>, s: Decimal.new("1632832947332658546219202823828600006149014594918975918997448048173719567406"), v: Decimal.new("1"), r: Decimal.new("109145906748772209563615021703222990761086146765342113328751861406407977272418"), hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<75, 90, 207, 31, 87, 84, 14, 23, 194, 245, 198, 217, 61, 232, 145, 222, 238, 236, 202, 4, 199, 167, 10, 91, 18, 71, 228, 191, 143, 136, 213, 156>>}, block_number: 2118020, from_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<178, 156, 0, 41, 151, 86, 19, 94, 197, 214, 161, 64, 202, 84, 236, 119, 121, 10, 153, 214>>}, block_timestamp: ~U[2024-11-06 04:23:00.000000Z], block_hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<235, 249, 248, 72, 160, 4, 67, 97, 29, 174, 253, 50, 182, 71, 202, 216, 246, 164, 249, 146, 198, 47, 45, 106, 148, 214, 60, 126, 192, 127, 149, 194>>}, gas_used: Decimal.new("13660306"), nonce: 6180, max_priority_fee_per_gas: #Explorer.Chain.Wei<206243519>, max_fee_per_gas: #Explorer.Chain.Wei<206243719>, to_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<140, 42, 220, 6, 231, 59, 250, 42, 193, 85, 151, 232, 13, 17, 245, 231, 91, 186, 90, 85>>}, gas_price: #Explorer.Chain.Wei<257657289>, gas: Decimal.new("17065632"), inserted_at: ~U[2024-11-06 10:24:30.874868Z], cumulative_gas_used: Decimal.new("0"), updated_at: ~U[2024-11-06 10:24:30.874868Z]}, %{index: 1, input: %Explorer.Chain.Data{bytes: <<239, 158, 94, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 108, 99, 170, 104, 197, 202, 12, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 220, 233, 123, 203, 164, 255, 239, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>>}, status: :ok, type: 2, value: #Explorer.Chain.Wei<0>, s: Decimal.new("41743915005224028767290517878003998299115202369392317808640874204715799120836"), v: Decimal.new("1"), r: Decimal.new("96245485880350660020889393547548089069761917844603520589310010341819782263762"), hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<137, 129, 121, 35, 199, 198, 39, 231, 57, 178, 189, 118, 158, 236, 15, 218, 26, 117, 172, 88, 188, 115, 216, 69, 18, 52, 170, 186, 201, 7, 143, 124>>}, block_number: 2118011, from_address_hash: %Explorer.Chain.Hash{byte_count: 20, bytes: <<178, 156, 0, 41, 151, 86, 19, 94, 197, 214, 161, 64, 202, 84, 236, 119, 121, 10, 153, 214>>}, block_timestamp: ~U[2024-11-06 04:18:30.000000Z], block_hash: %Explorer.Chain.Hash{byte_count: 32, bytes: <<21, 91, 77, 83, 50, 86, 223, 138, 58, 181 (truncated)
2024-11-06T17:24:30.905 application=indexer fetcher=internal_transaction count=10 error_count=10 [error] failed to fetch internal transactions for blocks [2117981, 2118089, 2118130, 2118261, 2118289, 2118348, 2118471, 2118581, 2118658, 2118679]: ** (ErlangError) Erlang error: :econnrefused
2024-11-06T17:24:30.905 application=indexer fetcher=internal_transaction count=10 error_count=10 [error] failed to fetch internal transactions for blocks [2117982, 2118081, 2118118, 2118263, 2118300, 2118428, 2118476, 2118563, 2118609, 2118689]: ** (ErlangError) Erlang error: :econnrefused
2024-11-06T17:24:30.906 application=indexer fetcher=internal_transaction count=10 error_count=10 [error] failed to fetch internal transactions for blocks [2118021, 2118028, 2118141, 2118179, 2118331, 2118416, 2118505, 2118556, 2118636, 2118695]: ** (ErlangError) Erlang error: :econnrefused
2024-11-06T17:24:30.906 application=indexer fetcher=internal_transaction count=10 error_count=10 [error] failed to fetch internal transactions for blocks [2117976, 2118082, 2118127, 2118190, 2118305, 2118349, 2118433, 2118580, 2118603, 2118685]: ** (ErlangError) Erlang error: :econnrefused
2024-11-06T17:24:30.906 application=explorer fetcher=block_catchup first_block_number=2118020 last_block_number=2118011 [warning] Set refetch_needed for partially imported block because of error: [2118011, 2118012, 2118013, 2118013, 2118015, 2118016, 2118017, 2118018, 2118019, 2118020]

Expected behaviour

Screenshots

Screenshot 2024-11-06 at 17 18 11

Environment (please complete the following information):

  • OS: macOS
  • Branch/commit: main
  • Hardware

Other information and links

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type: BugSomething isn't working

    Type

    No type

    Projects

    Status

    Ready

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions