Skip to content

bitcoin core crashes when too many rpc calls are made #11368

@KanoczTomas

Description

@KanoczTomas

Describe the issue

bitcoin-core crashes after too many rpc calls done.

Can you reliably reproduce the issue?

If so, please list the steps to reproduce below:

  1. listen on zeromq 'rawtx' event.
  2. make an rpc request (getrawtransaction) for every transactions input
  3. wait a while
  4. when a new block comes bitcoin-core crashes with database IO failure.

Increasing the rpcqueue in config does not solve the issue, but delays crash
When bitcoin-core's nofiles limit (increased with prlimit) got increased to 8192 it seems to be stable, but maybe it is just a function of time to make it crash.

Expected behaviour

I would expect I get a queue full error (as I get), but core will not crash, just my requests will time out

Actual behaviour

core crashes with IO database error when a new block arrives. When checking fd's for bitcoin it is normaly aroun 300, after a while it spikes to more than 1000 and bitcoind crashes. If the rpc gets queried while bitcoind is starting and is not in sync, or a new block arrives it crashes almost immediately.

What version of bitcoin-core are you using?

happened on 0.14.2, 0.15.0.rc3, 0.15.0, 0.15.0.1 - did not test others

Machine specs:

trid on 2 computers a laptop and armhf based odroid xu4 , runing linux. Happened on both.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions