Page MenuHomePhabricator

Add functional test for blockfilterindex in prune-mode
AbandonedPublic

Authored by PiRK on Mar 8 2022, 14:55.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Summary

core#15946:

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

core#21230

Fix several bugs in feature_blockfilterindex_prune.py

core#21252:

test: Intermittent issue in feature_blockfilterindex_prune

core#21297:

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

Test Plan

ninja all check-all

Event Timeline

PiRK requested review of this revision.Mar 8 2022, 14:55

Tail of the build log:

Build 'Bitcoin ABC Diffs / Diff Testing' #43661, branch 'refs/tags/phabricator/diff/32634'
Triggered 2022-03-08 14:55:49 by 'Phabricator Staging (phabricator-staging)'
Started 2022-03-08 14:55:52 on agent 'buildagent1'
Finished 2022-03-08 14:55:57 with status FAILURE 'Snapshot dependency failed to start: Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout'
VCS revisions: 'BitcoinABC_BitcoinAbcStaging' (Git, instance id 5): 'N/A' (checkout rules: '+:. => ./bitcoin-abc')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=364179&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2019.2.4 (build 72059), server timezone: GMT (UTC)

[14:55:49]E: bt15 (running for 8s)
[14:55:49]i: TeamCity server version is 2019.2.4 (build 72059)
[14:55:49] : Collecting changes in 2 VCS roots
[14:55:49] :	 [Collecting changes in 2 VCS roots] VCS Root details
[14:55:49] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=5, parent internal id=3, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:55:49] :		 [VCS Root details] "abc-infrastructure" {instance id=7, parent internal id=7, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:55:52] : The build is removed from the queue to be prepared for the start
[14:55:57]W: This build has not been started because some of the builds it depends on failed to start
[14:55:57]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout" failed
[14:55:57] : Build finished

Tail of the build log:

Build 'Bitcoin ABC Diffs / Diff Testing' #43663, branch 'refs/tags/phabricator/diff/32634'
Triggered 2022-03-08 14:55:50 by 'Phabricator Staging (phabricator-staging)'
Started 2022-03-08 14:55:53 on agent 'buildagent3'
Finished 2022-03-08 14:55:59 with status FAILURE 'Snapshot dependency failed to start: Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout'
VCS revisions: 'BitcoinABC_BitcoinAbcStaging' (Git, instance id 5): 'N/A' (checkout rules: '+:. => ./bitcoin-abc')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=364185&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2019.2.4 (build 72059), server timezone: GMT (UTC)

[14:55:50]E: bt15 (running for 8s)
[14:55:50]i: TeamCity server version is 2019.2.4 (build 72059)
[14:55:50] : Collecting changes in 2 VCS roots
[14:55:50] :	 [Collecting changes in 2 VCS roots] VCS Root details
[14:55:50] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=5, parent internal id=3, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:55:50] :		 [VCS Root details] "abc-infrastructure" {instance id=7, parent internal id=7, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:55:53] : The build is removed from the queue to be prepared for the start
[14:55:59]W: This build has not been started because some of the builds it depends on failed to start
[14:55:59]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout" failed
[14:55:59] : Build finished

Tail of the build log:

Build 'Bitcoin ABC Diffs / Diff Testing' #43664, branch 'refs/tags/phabricator/diff/32634'
Triggered 2022-03-08 14:55:50 by 'Phabricator Staging (phabricator-staging)'
Started 2022-03-08 14:55:53 on agent 'buildagent7'
Finished 2022-03-08 14:55:59 with status FAILURE 'Snapshot dependency failed to start: Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout'
VCS revisions: 'BitcoinABC_BitcoinAbcStaging' (Git, instance id 5): 'N/A' (checkout rules: '+:. => ./bitcoin-abc')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=364187&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2019.2.4 (build 72059), server timezone: GMT (UTC)

[14:55:50]E: bt15 (running for 8s)
[14:55:50]i: TeamCity server version is 2019.2.4 (build 72059)
[14:55:50] : Collecting changes in 2 VCS roots
[14:55:50] :	 [Collecting changes in 2 VCS roots] VCS Root details
[14:55:50] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=5, parent internal id=3, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:55:50] :		 [VCS Root details] "abc-infrastructure" {instance id=7, parent internal id=7, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:55:53] : The build is removed from the queue to be prepared for the start
[14:55:59]W: This build has not been started because some of the builds it depends on failed to start
[14:55:59]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout" failed
[14:55:59] : Build finished

Tail of the build log:

Build 'Bitcoin ABC Diffs / Diff Testing' #43662, branch 'refs/tags/phabricator/diff/32634'
Triggered 2022-03-08 14:55:50 by 'Phabricator Staging (phabricator-staging)'
Started 2022-03-08 14:55:52 on agent 'buildagent2'
Finished 2022-03-08 14:56:00 with status FAILURE 'Snapshot dependency failed to start: Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout'
VCS revisions: 'BitcoinABC_BitcoinAbcStaging' (Git, instance id 5): 'N/A' (checkout rules: '+:. => ./bitcoin-abc')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=364183&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2019.2.4 (build 72059), server timezone: GMT (UTC)

[14:55:50]E: bt15 (running for 10s)
[14:55:50]i: TeamCity server version is 2019.2.4 (build 72059)
[14:55:50] : Collecting changes in 2 VCS roots
[14:55:50] :	 [Collecting changes in 2 VCS roots] VCS Root details
[14:55:50] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=5, parent internal id=3, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:55:50] :		 [VCS Root details] "abc-infrastructure" {instance id=7, parent internal id=7, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:55:52] : The build is removed from the queue to be prepared for the start
[14:56:00]W: This build has not been started because some of the builds it depends on failed to start
[14:56:00]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout" failed
[14:56:00] : Build finished

Tail of the build log:

Build 'Bitcoin ABC Diffs / Diff Testing' #43665, branch 'refs/tags/phabricator/diff/32634'
Triggered 2022-03-08 14:55:50 by 'Phabricator Staging (phabricator-staging)'
Started 2022-03-08 14:55:53 on agent 'buildagent4'
Finished 2022-03-08 14:55:59 with status FAILURE 'Snapshot dependency failed to start: Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout'
VCS revisions: 'BitcoinABC_BitcoinAbcStaging' (Git, instance id 5): 'N/A' (checkout rules: '+:. => ./bitcoin-abc')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=364189&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2019.2.4 (build 72059), server timezone: GMT (UTC)

[14:55:50]E: bt15 (running for 9s)
[14:55:50]i: TeamCity server version is 2019.2.4 (build 72059)
[14:55:50] : Collecting changes in 2 VCS roots
[14:55:50] :	 [Collecting changes in 2 VCS roots] VCS Root details
[14:55:50] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=5, parent internal id=3, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:55:50] :		 [VCS Root details] "abc-infrastructure" {instance id=7, parent internal id=7, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:55:53] : The build is removed from the queue to be prepared for the start
[14:55:59]W: This build has not been started because some of the builds it depends on failed to start
[14:55:59]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout" failed
[14:55:59] : Build finished

Tail of the build log:

Build 'Bitcoin ABC Diffs / Diff Testing' #43666, branch 'refs/tags/phabricator/diff/32634'
Triggered 2022-03-08 14:55:50 by 'Phabricator Staging (phabricator-staging)'
Started 2022-03-08 14:55:57 on agent 'buildagent5'
Finished 2022-03-08 14:56:06 with status FAILURE 'Snapshot dependency failed to start: Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout'
VCS revisions: 'BitcoinABC_BitcoinAbcStaging' (Git, instance id 5): 'N/A' (checkout rules: '+:. => ./bitcoin-abc')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=364181&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2019.2.4 (build 72059), server timezone: GMT (UTC)

[14:55:50]E: bt15 (running for 16s)
[14:55:50]i: TeamCity server version is 2019.2.4 (build 72059)
[14:55:50] : Collecting changes in 2 VCS roots (4s)
[14:55:50] :	 [Collecting changes in 2 VCS roots] VCS Root details
[14:55:50] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=5, parent internal id=3, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:55:50] :		 [VCS Root details] "abc-infrastructure" {instance id=7, parent internal id=7, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:55:57] : The build is removed from the queue to be prepared for the start
[14:56:06]W: This build has not been started because some of the builds it depends on failed to start
[14:56:06]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Infra / Bitcoin-ABC Infra Checkout" failed
[14:56:06] : Build finished
Fabien requested changes to this revision.Mar 10 2022, 09:50
Fabien added a subscriber: Fabien.

The feature was added in D11145, this is where it belongs

This revision now requires changes to proceed.Mar 10 2022, 09:50