0

I have ubuntu server running Bitcoin core v0.16.

I'm sending RPC calls asynchronously using Guzzle (PHP library), but, e.g., if I'm importing 1000 address using importmulti command, any further requests are waits until that command finish.

Even though I have set rpcthreads=100 rpcworkqueue=50 and I've powerful server.

1 Answer 1

2

importmulti is a completely blocking RPC call, no amount of CPU power or RPC threads will prevent it from being blocking. You need to create applications which do not use this command if it is an option.

4
  • Do you think that if I imported each address separately using guzzle (to send it asynchronously) will rpcthreads=100, rpcworkqueue=50 have the effect?
    – Tailer
    Commented Apr 2, 2018 at 8:08
  • No, the RPC blocks the entire bitcoind, it can't even respond to network connections during this time.
    – Claris
    Commented Apr 2, 2018 at 14:33
  • Shouldn't we disable wallet locking especially when we're importing watch-only addresses? github.com/bitcoin/bitcoin/issues/12858
    – Tailer
    Commented Apr 2, 2018 at 14:35
  • No, as watch only keys still require a rescan.
    – Claris
    Commented Apr 2, 2018 at 17:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.