From ad9e86dca11dce023d827d342e966f3806c39d27 Mon Sep 17 00:00:00 2001 From: Gavin Andresen Date: Wed, 25 Mar 2015 13:13:09 -0400 Subject: Keep mempool consistent during block-reorgs This fixes a subtle bug involving block re-orgs and non-standard transactions. Start with a block containing a non-standard transaction, and one or more transactions spending it in the memory pool. Then re-org away from that block to another chain that does not contain the non-standard transaction. Result before this fix: the dependent transactions get stuck in the mempool without their parent, putting the mempool in an inconsistent state. Tested with a new unit test. --- src/Makefile.test.include | 1 + 1 file changed, 1 insertion(+) (limited to 'src/Makefile.test.include') diff --git a/src/Makefile.test.include b/src/Makefile.test.include index 8dd0a28454..52ff3f224f 100644 --- a/src/Makefile.test.include +++ b/src/Makefile.test.include @@ -50,6 +50,7 @@ BITCOIN_TESTS =\ test/hash_tests.cpp \ test/key_tests.cpp \ test/main_tests.cpp \ + test/mempool_tests.cpp \ test/miner_tests.cpp \ test/mruset_tests.cpp \ test/multisig_tests.cpp \ -- cgit v1.2.3