Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Give CValidationInterface Support for calling notifications on the CScheduler Thread #10179
Apologies for the plumbing-only no-changes PR, but the "move wallet updates out of cs_main into a background thread" changeset is a bit big for all one go, so instead I'm doing this first. It simply gives CValidationInterface the neccessary plumbing to handle callbacks on the CScheduler thread. See TheBlueMatt@4e82e40 for a commit which switches a callback into the background thread.
The CScheduler thread was super lonely, so I decided to use that instead of adding new threads.
This conflicts trivially with #10178, but not enough to avoid doing parallel reviews. After that and this are merged, "move wallet callbacks into background thread" is just one more (somewhat large, sadly) PR away. See https://github.com/TheBlueMatt/bitcoin/commits/2017-01-wallet-cache-inmempool for the full branch.
I don't currently have tests written, but given nearly everything passes through I've found its pretty well-excersized by existing wallet functional tests. I'll add unit tests for this to my to-do list.…
On April 25, 2017 8:55:34 AM EDT, "Wladimir J. van der Laan" ***@***.***> wrote: utACK e5d0c66 - are you planning on adding tests for this functionality later?
9 times, most recently
Apr 26, 2017
referenced this pull request
Apr 27, 2017
Added a comment on flush/drop behavior -
ryanofsky left a comment
utACK 3192975. Changes since last review were rebase after multiwallet & ScriptForMining removal, and adding the flush commit.
I left a few suggestions pertaining to the flush commit. I think this code would be good to clean up at some point, though it don't think it should hold up the PR.