Add debug startup parameter -fastprune for more effective pruning tests
https://github.com/bitcoin/bitcoin/pull/15946/commits/00d57ff76854938ead800767fb673a8af46eac8e
Add functional test for blockfilterindex in prune-mode
https://github.com/bitcoin/bitcoin/pull/15946/commits/ab3a0a2fb915d8b8384c30a8b38b4b5cc35236fd11
Fix several bugs in feature_blockfilterindex_prune.py
test: Intermittent issue in feature_blockfilterindex_prune
test: improve assertions in feature_blockfilterindex_prune.py
test: remove unneeded node from feature_blockfilterindex_prune.py
This is a backport of core#15946, core#21230, core#21252 and core#21297
Backport notes:
- the test was buggy and ugly after the first commit, so I had to squash all these commits to reach an acceptable quality. Reviewing can be done against this commit.
- I had to use different numbers of blocks that are generated and pruned, because Bitcoin ABC can fit more blocks into each blk?????.dat file than core because in this test the witness data of the coinbase transaction makes core blocks larger. Comments were added to explain this where needed.
- I used the shortcut node = self.nodes[0] to make the code a bit more readable (shorter lines)
Depends on D11145