bitcoin: rpc-tests.py: Too many "Error: Unable to start HTTP server. See debug log for details."

After long time, I’m trying to pass all the tests. Using current master:

for par in 1 2 4
do
   for round in 1 2 3 4 5 6 7 8 9 10
   do
      echo Par: $par, round: $round
      rm -rf qa/cache/; qa/pull-tester/rpc-tests.py -parallel=$par > round-$par-$round.log 2>&1
   done
done

And I’m not able to pass the testsuite completely.

On OS X, the testsuite fails randomly with:

Error: Unable to start HTTP server. See debug log for details.

The debug.log of one node then contains something like:

2016-12-10 21:21:34 Binding RPC on address ::1 port 17082 failed.
2016-12-10 21:21:34 Binding RPC on address 127.0.0.1 port 17082 failed.

I have read in other issues (https://github.com/bitcoin/bitcoin/issues/8425#issuecomment-238127542), that the default to run 4 tests in parallel can cause some issues, so I have tried to isolate this issue by removing the parallelisation. But it did not helped completely, but the frequency of such failures is definitely small with less parallelism…

I will post detailed results and analyse of the above script tomorrow.

Similar issue was reported by @fanquake at https://github.com/bitcoin/bitcoin/issues/8425#issuecomment-236474724

One of my favourite failure is:

Initializing test directory /var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testye4vq40s/424
Mining blocks...
Assertion failed: 0E-8 != 53.99954800
Stopping nodes
Not cleaning up dir /var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testye4vq40s/424
Failed

stderr:
Error: Unable to start HTTP server. See debug log for details.
  File "/private/tmp/bitcoin-master/qa/rpc-tests/test_framework/test_framework.py", line 145, in main
    self.run_test()
  File "/tmp/bitcoin-master/qa/rpc-tests/wallet.py", line 212, in run_test
    assert_equal(self.nodes[2].getbalance(), node_2_bal) #should not be changed because tx was not broadcasted
  File "/private/tmp/bitcoin-master/qa/rpc-tests/test_framework/util.py", line 529, in assert_equal
    raise AssertionError("%s != %s"%(str(thing1),str(thing2)))

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 16 (16 by maintainers)

Most upvoted comments

After few runs, I see a lot of abandoned bitcoinds:

54330 ttys015    0:42.74 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testbeb8teom/634/node2 -server -keypool=1 -discover=0 -rest -mocktime=0 -usehd=1
54600 ttys015    0:42.21 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testzoocmv6s/197/node1 -server -keypool=1 -discover=0 -rest -mocktime=0 -rescan
54657 ttys015    0:41.42 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testh5dwxvud/184/node1 -server -keypool=1 -discover=0 -rest -mocktime=0
55363 ttys015    0:39.90 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testsiic47qw/228/node2 -server -keypool=1 -discover=0 -rest -mocktime=0 -reindex
55396 ttys015    0:39.44 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testc5lyvy8h/222/node0 -server -keypool=1 -discover=0 -rest -mocktime=0
55582 ttys015    0:40.21 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testjdsw6pvu/287/node1 -server -keypool=1 -discover=0 -rest -mocktime=0 -debug -logtimemicros -txindex
55881 ttys015    0:39.30 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/test5hnkksae/506/node1 -server -keypool=1 -discover=0 -rest -mocktime=0 -logtimemicros -debug -blockversion=4 -promiscuousmempoolflags=517 -prematurewitness -walletprematurewitness -rpcserialversion=2
56131 ttys015    0:38.86 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/test9dttnslb/159/node0 -server -keypool=1 -discover=0 -rest -mocktime=0 -debug -logtimemicros=1 -bip9params=segwit:0:0
56241 ttys015    0:37.26 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testijsd3oq7/141/node0 -server -keypool=1 -discover=0 -rest -mocktime=0
56332 ttys015    0:36.63 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testel2coylo/120/node1 -server -keypool=1 -discover=0 -rest -mocktime=0
56366 ttys015    0:37.15 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/test6alaldly/590/node3 -server -keypool=1 -discover=0 -rest -mocktime=0
56444 ttys015    0:36.08 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testzm4zo5qk/585/node2 -server -keypool=1 -discover=0 -rest -mocktime=0 -reindex
56569 ttys015    0:35.85 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/test7e5jbrka/557/node0 -server -keypool=1 -discover=0 -rest -mocktime=0
56572 ttys015    0:33.64 /tmp/bitcoin-master/src/bitcoind -datadir=/var/folders/65/fn0h49r55k7779vg1b_h461r0000gn/T/testcunrdkfi/556/node0 -server -keypool=1 -discover=0 -rest -mocktime=0 -disablewallet
56608 ttys015    0:35.52 /tmp/bitcoin-master/src/bitcoind -server -keypool=1 -datadir=/tmp/bitcoin-master/qa/cache/node0 -discover=0

Hmm.

Usually when I see the unable to start http server message its because there’s another bitcoind process running (maybe a process didn’t die on a prior test run?).