EOSIO / eos

An open source smart contract platform
https://developers.eos.io/manuals/eos
MIT License
11.27k stars 3.6k forks source link

rpc api of /v1/chain/push_transaction invoke blocked half an hour without any output #8259

Closed tokyliu closed 4 years ago

tokyliu commented 4 years ago

Hello, can anyone help why my application invoke the rpc api /v1/chain/push_transaction blocked without any output for half an hour. It works well for long time before. node run environment:

nodeos && keosd : v1.7.7 
os : centos 7

And I update the eos app to V1.8.6 is as the same. my local eos node as below:

{
  "server_version": "3c553db7",
  "chain_id": "aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906",
  "head_block_num": 92367512,
  "last_irreversible_block_num": 92367177,
  "last_irreversible_block_id": "05816949d6eaeb91fc5248579bf2b8a4414799c8e2f201a92a657b3c41f018ce",
  "head_block_id": "05816a987a180ba0ac955324b4b1686cdaef0e5a3048abff7faedaa08344afcd",
  "head_block_time": "2019-11-29T09:04:47.500",
  "head_block_producer": "hashfineosio",
  "virtual_block_cpu_limit": 200000,
  "virtual_block_net_limit": 1048576000,
  "block_cpu_limit": 200000,
  "block_net_limit": 1048576,
  "server_version_string": "v1.8.6",
  "fork_db_head_block_num": 92367512,
  "fork_db_head_block_id": "05816a987a180ba0ac955324b4b1686cdaef0e5a3048abff7faedaa08344afcd"
}

My local eos node run with snapshot, and other rpc api(/v1/chain/xxx) invoke well. Nodeos config.ini as below:

   chain-state-db-size-mb = 65536
    reversible-blocks-db-size-mb = 2048
    contracts-console = false
    http-server-address = 0.0.0.0:8888
    p2p-listen-endpoint = 0.0.0.0:9876
    p2p-server-address = 127.0.0.1:9876
    http-validate-host = false
    verbose-http-errors = true  
    abi-serializer-max-time-ms = 2000  
    chain-threads = 8
    http-threads = 6
    access-control-allow-origin = *
    access-control-allow-headers = Origin, X-Requested-With, Content-Type, Accept
    # access-control-max-age =
    # access-control-allow-credentials = false
    wasm-runtime = wabt
    #produce-time-offset-us = 250000
    last-block-time-offset-us = -300000
    chain-state-db-guard-size-mb = 128
    reversible-blocks-db-guard-size-mb = 2 
    p2p-max-nodes-per-host = 150
    allowed-connection = any
    max-clients = 150
    connection-cleanup-period = 30
    network-version-match = 0
    sync-fetch-span = 2000
    enable-stale-production = false
    pause-on-startup = false
    max-transaction-time = 30
    max-irreversible-block-age = -1
    txn-reference-block-lag = 0
    plugin = eosio::chain_api_plugin
    plugin = eosio::history_plugin
    plugin = eosio::history_api_plugin
    plugin = eosio::chain_plugin
matthewdarwin commented 4 years ago

Why are you connecting to yourself?

 p2p-server-address = 127.0.0.1:9876

You should add some real peers there. https://validate.eosnation.io/eos/reports/config.html

tokyliu commented 4 years ago

Why are you connecting to yourself?

 p2p-server-address = 127.0.0.1:9876

You should add some real peers there. https://validate.eosnation.io/eos/reports/config.html

you can ignore this mistake, the config section of p2p-server-address i didn't paste out. this section content is latest version of p2p-server-address list from official channel

marktoda commented 4 years ago

We are experiencing a similar issue -- push_transaction calls always time out. Other RPC calls (get_info, for instance) complete generally within 5 seconds.

Running: v2.0.0 but reproduced on v1.8.6 Also of note: all of our nodes seem to sync to slightly behind "chainhead" -- with their highest block always being about 5 minutes old.

libangzhu commented 4 years ago

please fix it as soon as possible

heifner commented 4 years ago

Going to close this issue. If anyone is still experiencing on the latest 2.0.4+ please open a new issue and provide details: config.ini, exact version used, command line options, any modifications to the software, etc.