Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Make reusable base class for auxiliary indices #13243
This refactors most of the logic in TxIndex into a reusable base class for other indices. There are two commits moving code between files, which may be be more easily reviewed using
The motivation for this is to support BIP 157 by indexing block filters.
jamesob left a comment
Tested ACK da17ca6
Did a manual test of txindex behavior. Take or leave my previous comment about member attribute naming. Great change.
Manual test plan
ec3073a index: Move index DBs into index/ directory. (Jim Posen) 89eddcd index: Remove TxIndexDB from public interface of TxIndex. (Jim Posen) 2318aff MOVEONLY: Move BaseIndex to its own file. (Jim Posen) f376a49 index: Generalize logged statements in BaseIndex. (Jim Posen) 61a1226 index: Extract logic from TxIndex into reusable base class. (Jim Posen) e5af5fc db: Make reusable base class for index databases. (Jim Posen) 9b0ec1a db: Remove obsolete methods from CBlockTreeDB. (Jim Posen) Pull request description: This refactors most of the logic in TxIndex into a reusable base class for other indices. There are two commits moving code between files, which may be be more easily reviewed using `git diff --color-moved` (https://blog.github.com/2018-04-05-git-217-released/). The motivation for this is to support BIP 157 by indexing block filters. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/bitcoin/bitcoin/13243) <!-- Reviewable:end --> Tree-SHA512: 0857f04df2aa920178dab2eb8e57984d8eb4d5010deca9971190358479e05b6672ccca2a08af0a7ac9fe02afb947be84cf35a3693204d0667263c6add2959cbf
Updated the code modified through bitcoin/bitcoin#13243 for Namecoin's changes to the validation interface (BlockConnected, in particular). Conflicts: contrib/init/README.md doc/init.md doc/release-process.md src/Makefile.qt.include src/Makefile.qttest.include src/Makefile.test.include src/index/txindex.cpp src/index/txindex.h src/test/test_bitcoin.h src/txdb.cpp