mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 14:38:29 +01:00
Remove utxo db upgrade code
This commit is contained in:
@@ -98,7 +98,7 @@ test/functional/test_runner.py --extended
|
||||
In order to run backwards compatibility tests, download the previous node binaries:
|
||||
|
||||
```
|
||||
test/get_previous_releases.py -b v22.0 v0.21.0 v0.20.1 v0.19.1 v0.18.1 v0.17.2 v0.16.3 v0.15.2
|
||||
test/get_previous_releases.py -b v22.0 v0.21.0 v0.20.1 v0.19.1 v0.18.1 v0.17.2 v0.16.3 v0.15.2 v0.14.3
|
||||
```
|
||||
|
||||
By default, up to 4 tests will be run in parallel by test_runner. To specify
|
||||
|
||||
61
test/functional/feature_unsupported_utxo_db.py
Executable file
61
test/functional/feature_unsupported_utxo_db.py
Executable file
@@ -0,0 +1,61 @@
|
||||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2022 The Bitcoin Core developers
|
||||
# Distributed under the MIT software license, see the accompanying
|
||||
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||
"""Test that unsupported utxo db causes an init error.
|
||||
|
||||
Previous releases are required by this test, see test/README.md.
|
||||
"""
|
||||
|
||||
import shutil
|
||||
|
||||
from test_framework.test_framework import BitcoinTestFramework
|
||||
from test_framework.util import assert_equal
|
||||
|
||||
|
||||
class UnsupportedUtxoDbTest(BitcoinTestFramework):
|
||||
def set_test_params(self):
|
||||
self.setup_clean_chain = True
|
||||
self.num_nodes = 2
|
||||
|
||||
def skip_test_if_missing_module(self):
|
||||
self.skip_if_no_previous_releases()
|
||||
|
||||
def setup_network(self):
|
||||
self.add_nodes(
|
||||
self.num_nodes,
|
||||
versions=[
|
||||
140300, # Last release with previous utxo db format
|
||||
None, # For MiniWallet, without migration code
|
||||
],
|
||||
)
|
||||
|
||||
def run_test(self):
|
||||
self.log.info("Create previous version (v0.14.3) utxo db")
|
||||
self.start_node(0)
|
||||
block = self.generate(self.nodes[0], 1, sync_fun=self.no_op)[-1]
|
||||
assert_equal(self.nodes[0].getbestblockhash(), block)
|
||||
assert_equal(self.nodes[0].gettxoutsetinfo()["total_amount"], 50)
|
||||
self.stop_nodes()
|
||||
|
||||
self.log.info("Check init error")
|
||||
legacy_utxos_dir = self.nodes[0].chain_path / "chainstate"
|
||||
legacy_blocks_dir = self.nodes[0].chain_path / "blocks"
|
||||
recent_utxos_dir = self.nodes[1].chain_path / "chainstate"
|
||||
recent_blocks_dir = self.nodes[1].chain_path / "blocks"
|
||||
shutil.copytree(legacy_utxos_dir, recent_utxos_dir)
|
||||
shutil.copytree(legacy_blocks_dir, recent_blocks_dir)
|
||||
self.nodes[1].assert_start_raises_init_error(
|
||||
expected_msg="Error: Unsupported chainstate database format found. "
|
||||
"Please restart with -reindex-chainstate. "
|
||||
"This will rebuild the chainstate database.",
|
||||
)
|
||||
|
||||
self.log.info("Drop legacy utxo db")
|
||||
self.start_node(1, extra_args=["-reindex-chainstate"])
|
||||
assert_equal(self.nodes[1].getbestblockhash(), block)
|
||||
assert_equal(self.nodes[1].gettxoutsetinfo()["total_amount"], 50)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
UnsupportedUtxoDbTest().main()
|
||||
@@ -307,6 +307,7 @@ BASE_SCRIPTS = [
|
||||
'p2p_ping.py',
|
||||
'rpc_scantxoutset.py',
|
||||
'feature_txindex_compatibility.py',
|
||||
'feature_unsupported_utxo_db.py',
|
||||
'feature_logging.py',
|
||||
'feature_anchors.py',
|
||||
'feature_coinstatsindex.py --legacy-wallet',
|
||||
|
||||
@@ -19,8 +19,12 @@ import subprocess
|
||||
import sys
|
||||
import hashlib
|
||||
|
||||
|
||||
SHA256_SUMS = {
|
||||
"0e2819135366f150d9906e294b61dff58fd1996ebd26c2f8e979d6c0b7a79580": "bitcoin-0.14.3-aarch64-linux-gnu.tar.gz",
|
||||
"d86fc90824a85c38b25c8488115178d5785dbc975f5ff674f9f5716bc8ad6e65": "bitcoin-0.14.3-arm-linux-gnueabihf.tar.gz",
|
||||
"1b0a7408c050e3d09a8be8e21e183ef7ee570385dc41216698cc3ab392a484e7": "bitcoin-0.14.3-osx64.tar.gz",
|
||||
"706e0472dbc933ed2757650d54cbcd780fd3829ebf8f609b32780c7eedebdbc9": "bitcoin-0.14.3-x86_64-linux-gnu.tar.gz",
|
||||
#
|
||||
"d40f18b4e43c6e6370ef7db9131f584fbb137276ec2e3dba67a4b267f81cb644": "bitcoin-0.15.2-aarch64-linux-gnu.tar.gz",
|
||||
"54fb877a148a6ad189a1e1ab1ff8b11181e58ff2aaf430da55b3fd46ae549a6b": "bitcoin-0.15.2-arm-linux-gnueabihf.tar.gz",
|
||||
"87e9340ff3d382d543b2b69112376077f0c8b4f7450d372e83b68f5a1e22b2df": "bitcoin-0.15.2-osx64.tar.gz",
|
||||
|
||||
Reference in New Issue
Block a user