Bitcoin-ABC / bitcoin-abc

Bitcoin ABC develops node software and infrastructure for the eCash project. This a mirror of the official Bitcoin-ABC repository. Please see README.md
https://reviews.bitcoinabc.org
MIT License
1.24k stars 790 forks source link

How to deploy bitcoin-cash-node server using bitcore and bitcoin-abc??? #218

Open zhousi666 opened 6 years ago

zhousi666 commented 6 years ago

my question: I deploy bitcoin-cash-node server using bitcore and bitcoin-abc,and I have some question,I need some help.

//bitcore: bitcore@4.1.1 //bitcoin-abc: https://download.bitcoinabc.org/0.17.2/linux/bitcoin-abc-0.17.2-i686-pc-linux-gnu.tar.gz

first, my deployment process as follows:

  1. my operating system is centos:centos7, I did the following preparations:
    yum install -y epel-release
    yum install -y zeromq-devel gcc gcc-c++ automake autoconf libtool make git wget
    wget https://nodejs.org/download/release/latest-v8.x/node-v8.11.2-linux-x64.tar.gz /root
    cd /root
    tar --strip-components 1 -xzvf node-v* -C /usr/local
  1. install bitcore and create bitcoin-cash-node
    npm i npm@latest -g
    npm install -g --unsafe-perm bitcore@4.1.1
    bitcore create bitcoin-cash-node
    cd /root/bitcoin-cash-node
    bitcore install insight-api insight-ui
  1. download the bitcoin-abc, let the bitcoind point to bitcoin-abc/bin/bitcoind
    cd/usr/local/lib/node_modules/bitcore/node_modules/bitcore-node/bin
    wget https://download.bitcoinabc.org/0.17.2/linux/bitcoin-abc-0.17.2-x86_64-linux-gnu.tar.gz  ./
    tar -xzf bitcoin-abc-0.17.2-x86_64-linux-gnu.tar.gz
    ln -sf bitcoin-abc-0.17.2/bin/bitcoind bitcoind
  1. run the bitcore
    cd /root/bitcoin-cash-node
    bitcore start

bitcore-node.json:

    {
      "network": "livenet",
      "port": 3001,
      "services": [
        "bitcoind",
        "web"
      ],
      "servicesConfig": {
        "bitcoind": {
          "spawn": {
            "datadir": "/root/data/live.bitcoin.cash.node",
            "exec": "/usr/local/lib/node_modules/bitcore/node_modules/bitcore-node/bin/bitcoind"
          }
        }
      }
    }

debug.log

2018-06-08 07:30:51 Bitcoin ABC version v0.17.2.0-4fd0b1b
2018-06-08 07:30:51 InitParameterInteraction: parameter interaction: -whitelistforcerelay=1 -> setting -whitelistrelay=1
2018-06-08 07:30:51 Assuming ancestors of block 000000000000000000e45ad2fbcc5ff3e85f0868dd8f00ad4e92dffabe28f8d2 have valid signatures.
2018-06-08 07:30:51 Setting nMinimumChainWork=000000000000000000000000000000000000000000a0f3064330647e2f6c4828
2018-06-08 07:30:51 Using the 'sse4' SHA256 implementation
2018-06-08 07:30:51 Default data directory /root/.bitcoin
2018-06-08 07:30:51 Using data directory /root/data/live.bitcoin.cash.node
2018-06-08 07:30:51 Using config file /root/data/live.bitcoin.cash.node/bitcoin.conf
2018-06-08 07:30:51 Using at most 125 automatic connections (1048576 file descriptors available)
2018-06-08 07:30:51 Using 32 MiB out of 32 requested for signature cache, able to store 1048576 elements
2018-06-08 07:30:51 Using 32 MiB out of 32 requested for script execution cache, able to store 1048576 elements
2018-06-08 07:30:51 Using 12 threads for script verification
2018-06-08 07:30:51 scheduler thread start
2018-06-08 07:30:52 Binding RPC on address 0.0.0.0 port 8332 failed.
2018-06-08 07:30:52 HTTP: creating work queue of depth 16
2018-06-08 07:30:52 Config options rpcuser and rpcpassword will soon be deprecated. Locally-run instances may remove rpcuser to use cookie-based auth, or may be replaced with rpcauth. Please see share/rpcuser for rpcauth auth generation.
2018-06-08 07:30:52 HTTP: starting 4 worker threads
2018-06-08 07:30:52 init message: Verifying wallet(s)...
2018-06-08 07:30:52 Using BerkeleyDB version Berkeley DB 5.3.28: (September  9, 2013)
2018-06-08 07:30:52 Using wallet wallet.dat
2018-06-08 07:30:52 CDBEnv::Open: LogDir=/root/data/live.bitcoin.cash.node/database ErrorFile=/root/data/live.bitcoin.cash.node/db.log
2018-06-08 07:30:52 Bound to [::]:8333
2018-06-08 07:30:52 Bound to 0.0.0.0:8333
2018-06-08 07:30:52 Cache configuration:
2018-06-08 07:30:52 * Using 56.2MiB for block index database
2018-06-08 07:30:52 * Using 8.0MiB for chain state database
2018-06-08 07:30:52 * Using 385.8MiB for in-memory UTXO set (plus up to 286.1MiB of unused mempool space)
2018-06-08 07:30:52 init message: Loading block index...
2018-06-08 07:30:52 Opening LevelDB in /root/data/live.bitcoin.cash.node/blocks/index
2018-06-08 07:30:52 Opened LevelDB successfully
2018-06-08 07:30:52 Using obfuscation key for /root/data/live.bitcoin.cash.node/blocks/index: 0000000000000000
2018-06-08 07:30:52 Opening LevelDB in /root/data/live.bitcoin.cash.node/chainstate
2018-06-08 07:30:52 Opened LevelDB successfully
2018-06-08 07:30:52 Using obfuscation key for /root/data/live.bitcoin.cash.node/chainstate: a6180703dbbc65c8
2018-06-08 07:30:52 Upgrading utxo-set database...
2018-06-08 07:30:52 [0%]...[10%]...[20%]...[30%]...[40%]...[50%]...[60%]...[70%]...[80%]...[90%]...[100%]...[DONE].
2018-06-08 07:31:17 LoadBlockIndexDB: last block file = 2
2018-06-08 07:31:17 LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=4752, size=112031878, heights=130618...136003, time=2011-06-13...2011-07-13)
2018-06-08 07:31:17 Checking all blk files are present...
2018-06-08 07:31:17 LoadBlockIndexDB: transaction index enabled
2018-06-08 07:31:17 Initializing databases...
2018-06-08 07:31:17 Loaded best chain: hashBestChain=00000000000006d50e5d70eb52febdb7cc8f832f0e679b662ba6e895c0d35240 height=135872 date=2011-07-12 07:42:11 progress=0.003795

second, my problem description as follows:

When I run the bitcore service, the synchronization of the service block is very normal, but when I request the transaction data of the block through the insight, the service will be wrong, but the service will restart automatically. I am puzzled, I do not know where is wrong, who can help me ? and gave me a deploy documents. thank you。

ERROR:

[2018-06-08T08:49:58.011Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:49:58.012Z] info: ::ffff:172.31.3.190 "GET /insight-api/sync" 200 117 37.913 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:49:58.098Z] info: ::ffff:172.31.3.190 "GET /insight-api/status?q=getInfo" 200 207 90.614 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:49:59.680Z] info: ::ffff:172.31.3.190 "GET /insight-api/peer" 304 - 0.394 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:49:59.681Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:49:59.993Z] info: ::ffff:172.31.3.190 "GET /insight-api/block/0000000000000000003b421398b983ff7b7cdb49f07b799dcf28e6026e118971" 304 - 407.354 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:00.319Z] error: uncaught exception: Error: Non-base58 character
    at Object.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/node_modules/bs58/lib/bs58.js:51:37)
    at Function.Base58.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58.js:48:26)
    at Function.Base58Check.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58check.js:45:31)
    at Function.Address._transformString (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:279:35)
    at Address._classifyArguments (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:107:20)
    at new Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:73:19)
    at Object.Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:51:12)
    at TxController.transformOutput (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:153:27)
    at Array.map (<anonymous>)
    at TxController.transformTransaction (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:77:42)
[2018-06-08T08:50:00.324Z] error: Error: Non-base58 character
    at Object.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/node_modules/bs58/lib/bs58.js:51:37)
    at Function.Base58.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58.js:48:26)
    at Function.Base58Check.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58check.js:45:31)
    at Function.Address._transformString (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:279:35)
    at Address._classifyArguments (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:107:20)
    at new Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:73:19)
    at Object.Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:51:12)
    at TxController.transformOutput (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:153:27)
    at Array.map (<anonymous>)
    at TxController.transformTransaction (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:77:42)
[2018-06-08T08:50:00.325Z] info: Beginning shutdown
[2018-06-08T08:50:00.329Z] info: Stopping insight-ui
[2018-06-08T08:50:00.330Z] info: Stopping insight-api
[2018-06-08T08:50:00.330Z] info: Stopping web
[2018-06-08T08:50:00.331Z] info: Stopping bitcoind
[2018-06-08T08:50:01.702Z] error: RPCError: Bitcoin JSON-RPC: Request Error: connect ECONNREFUSED 127.0.0.1:8332
    at Bitcoin._wrapRPCError (/root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:449:13)
    at /root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:1684:30
    at ClientRequest.<anonymous> (/root/bitcore-cash-node/node_modules/bitcoind-rpc/lib/index.js:116:7)
    at emitOne (events.js:116:13)
    at ClientRequest.emit (events.js:211:7)
    at Socket.socketErrorListener (_http_client.js:387:9)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
[2018-06-08T08:50:01.703Z] info: ::ffff:172.31.3.190 "GET /insight-api/block/00000000000000001785f8c5f4aab2a0dd286acc0a46e936af977e62862b4298" 503 68 26.284 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.704Z] info: ::ffff:172.31.3.190 "GET /insight-api/peer" 304 - 0.244 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.704Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:50:01.716Z] info: ::ffff:172.31.3.190 web socket subscribe: inv
[2018-06-08T08:50:01.746Z] error: RPCError: Bitcoin JSON-RPC: Request Error: connect ECONNREFUSED 127.0.0.1:8332
    at Bitcoin._wrapRPCError (/root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:449:13)
    at /root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:1711:28
    at ClientRequest.<anonymous> (/root/bitcore-cash-node/node_modules/bitcoind-rpc/lib/index.js:116:7)
    at emitOne (events.js:116:13)
    at ClientRequest.emit (events.js:211:7)
    at Socket.socketErrorListener (_http_client.js:387:9)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
[2018-06-08T08:50:01.747Z] info: ::ffff:172.31.3.190 "GET /insight-api/blocks?limit=5" 503 68 0.948 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.766Z] info: ::ffff:172.31.3.190 "GET /insight-api/peer" 304 - 0.186 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.783Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:50:08.839Z] warn: ZMQ disconnect: tcp://127.0.0.1:28332
[2018-06-08T08:50:08.840Z] warn: ZMQ connection delay: tcp://127.0.0.1:28332
[2018-06-08T08:50:08.840Z] warn: ZMQ connection delay: tcp://127.0.0.1:28332
zhousi666 commented 6 years ago

@ldenman can you help me?

ghost commented 6 years ago

Bitcoin-abc doesn't support address index. You can use my forked repo forked bitcoind to enable address index for testnet. For mainnet, you should use the patched bitcoind by bitprim. Good luck.