diff --git a/src/bench/coin_selection.cpp b/src/bench/coin_selection.cpp --- a/src/bench/coin_selection.cpp +++ b/src/bench/coin_selection.cpp @@ -36,8 +36,7 @@ NodeContext node; auto chain = interfaces::MakeChain(node, Params()); - CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CWallet wallet(chain.get(), WalletLocation(), CreateDummyWalletDatabase()); wallet.SetupLegacyScriptPubKeyMan(); std::vector> wtxs; LOCK(wallet.cs_wallet); @@ -110,8 +109,7 @@ NodeContext node; auto chain = interfaces::MakeChain(node, Params()); - CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CWallet wallet(chain.get(), WalletLocation(), CreateDummyWalletDatabase()); LOCK(wallet.cs_wallet); diff --git a/src/bench/wallet_balance.cpp b/src/bench/wallet_balance.cpp --- a/src/bench/wallet_balance.cpp +++ b/src/bench/wallet_balance.cpp @@ -33,7 +33,7 @@ NodeContext node; std::unique_ptr chain = interfaces::MakeChain(node, config.GetChainParams()); - CWallet wallet{chain.get(), WalletLocation(), WalletDatabase::CreateMock()}; + CWallet wallet{chain.get(), WalletLocation(), CreateMockWalletDatabase()}; { wallet.SetupLegacyScriptPubKeyMan(); bool first_run; diff --git a/src/qt/test/addressbooktests.cpp b/src/qt/test/addressbooktests.cpp --- a/src/qt/test/addressbooktests.cpp +++ b/src/qt/test/addressbooktests.cpp @@ -62,7 +62,7 @@ std::shared_ptr wallet = std::make_shared(node.context()->chain.get(), WalletLocation(), - WalletDatabase::CreateMock()); + CreateMockWalletDatabase()); wallet->SetupLegacyScriptPubKeyMan(); bool firstRun; diff --git a/src/qt/test/wallettests.cpp b/src/qt/test/wallettests.cpp --- a/src/qt/test/wallettests.cpp +++ b/src/qt/test/wallettests.cpp @@ -117,7 +117,7 @@ node.setContext(&test.m_node); std::shared_ptr wallet = std::make_shared(node.context()->chain.get(), WalletLocation(), - WalletDatabase::CreateMock()); + CreateMockWalletDatabase()); bool firstRun; wallet->LoadWallet(firstRun); diff --git a/src/wallet/salvage.cpp b/src/wallet/salvage.cpp --- a/src/wallet/salvage.cpp +++ b/src/wallet/salvage.cpp @@ -130,8 +130,7 @@ } DbTxn *ptxn = env->TxnBegin(); - CWallet dummyWallet(nullptr, WalletLocation(), - WalletDatabase::CreateDummy()); + CWallet dummyWallet(nullptr, WalletLocation(), CreateDummyWalletDatabase()); for (KeyValPair &row : salvagedData) { /* Filter for only private key type KV pairs to be added to the salvaged * wallet */ diff --git a/src/wallet/test/coinselector_tests.cpp b/src/wallet/test/coinselector_tests.cpp --- a/src/wallet/test/coinselector_tests.cpp +++ b/src/wallet/test/coinselector_tests.cpp @@ -326,7 +326,7 @@ empty_wallet(); { auto wallet = std::make_unique(m_chain.get(), WalletLocation(), - WalletDatabase::CreateMock()); + CreateMockWalletDatabase()); bool firstRun; wallet->LoadWallet(firstRun); LOCK(wallet->cs_wallet); @@ -350,7 +350,7 @@ BOOST_AUTO_TEST_CASE(knapsack_solver_test) { auto testChain = interfaces::MakeChain(testNode, Params()); CWallet testWallet(testChain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); CoinSet setCoinsRet, setCoinsRet2; Amount nValueRet; @@ -781,7 +781,7 @@ BOOST_AUTO_TEST_CASE(SelectCoins_test) { auto testChain = interfaces::MakeChain(testNode, Params()); CWallet testWallet(testChain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); testWallet.SetupLegacyScriptPubKeyMan(); // Random generator stuff diff --git a/src/wallet/test/ismine_tests.cpp b/src/wallet/test/ismine_tests.cpp --- a/src/wallet/test/ismine_tests.cpp +++ b/src/wallet/test/ismine_tests.cpp @@ -38,7 +38,7 @@ // P2PK compressed { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); scriptPubKey = GetScriptForRawPubKey(pubkeys[0]); @@ -56,7 +56,7 @@ // P2PK uncompressed { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); scriptPubKey = GetScriptForRawPubKey(uncompressedPubkey); @@ -75,7 +75,7 @@ // P2PKH compressed { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); scriptPubKey = GetScriptForDestination(PKHash(pubkeys[0])); @@ -93,7 +93,7 @@ // P2PKH uncompressed { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); scriptPubKey = GetScriptForDestination(PKHash(uncompressedPubkey)); @@ -112,7 +112,7 @@ // P2SH { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); @@ -138,7 +138,7 @@ // (P2PKH inside) P2SH inside P2SH (invalid) { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); @@ -162,7 +162,7 @@ // scriptPubKey multisig { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); @@ -197,7 +197,7 @@ // P2SH multisig { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); BOOST_CHECK( @@ -222,7 +222,7 @@ // OP_RETURN { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0])); @@ -237,7 +237,7 @@ // Nonstandard { CWallet keystore(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); keystore.SetupLegacyScriptPubKeyMan(); LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore); BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0])); diff --git a/src/wallet/test/scriptpubkeyman_tests.cpp b/src/wallet/test/scriptpubkeyman_tests.cpp --- a/src/wallet/test/scriptpubkeyman_tests.cpp +++ b/src/wallet/test/scriptpubkeyman_tests.cpp @@ -20,8 +20,7 @@ NodeContext node; std::unique_ptr chain = interfaces::MakeChain(node, Params()); - CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CWallet wallet(chain.get(), WalletLocation(), CreateDummyWalletDatabase()); LegacyScriptPubKeyMan &keyman = *wallet.GetOrCreateLegacyScriptPubKeyMan(); // Make a 1 of 2 multisig script diff --git a/src/wallet/test/wallet_test_fixture.cpp b/src/wallet/test/wallet_test_fixture.cpp --- a/src/wallet/test/wallet_test_fixture.cpp +++ b/src/wallet/test/wallet_test_fixture.cpp @@ -10,7 +10,7 @@ WalletTestingSetup::WalletTestingSetup(const std::string &chainName) : TestingSetup(chainName), m_chain(interfaces::MakeChain(m_node, Params())), - m_wallet(m_chain.get(), WalletLocation(), WalletDatabase::CreateMock()) { + m_wallet(m_chain.get(), WalletLocation(), CreateMockWalletDatabase()) { bool fFirstRun; m_wallet.LoadWallet(fFirstRun); m_chain_notifications_handler = diff --git a/src/wallet/test/wallet_tests.cpp b/src/wallet/test/wallet_tests.cpp --- a/src/wallet/test/wallet_tests.cpp +++ b/src/wallet/test/wallet_tests.cpp @@ -82,7 +82,7 @@ // Verify ScanForWalletTransactions fails to read an unknown start block. { CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); { LOCK(wallet.cs_wallet); wallet.SetLastBlockProcessed(::ChainActive().Height(), @@ -105,7 +105,7 @@ // and new block files. { CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); { LOCK(wallet.cs_wallet); wallet.SetLastBlockProcessed(::ChainActive().Height(), @@ -135,7 +135,7 @@ // file. { CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); { LOCK(wallet.cs_wallet); wallet.SetLastBlockProcessed(::ChainActive().Height(), @@ -164,7 +164,7 @@ // Verify ScanForWalletTransactions scans no blocks. { CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CreateDummyWalletDatabase()); { LOCK(wallet.cs_wallet); wallet.SetLastBlockProcessed(::ChainActive().Height(), @@ -206,7 +206,7 @@ // after. { std::shared_ptr wallet = std::make_shared( - chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + chain.get(), WalletLocation(), CreateDummyWalletDatabase()); wallet->SetupLegacyScriptPubKeyMan(); WITH_LOCK(wallet->cs_wallet, wallet->SetLastBlockProcessed(newTip->nHeight, @@ -290,7 +290,7 @@ // Import key into wallet and call dumpwallet to create backup file. { std::shared_ptr wallet = std::make_shared( - chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + chain.get(), WalletLocation(), CreateDummyWalletDatabase()); { auto spk_man = wallet->GetOrCreateLegacyScriptPubKeyMan(); LOCK2(wallet->cs_wallet, spk_man->cs_KeyStore); @@ -315,7 +315,7 @@ // were scanned, and no prior blocks were scanned. { std::shared_ptr wallet = std::make_shared( - chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + chain.get(), WalletLocation(), CreateDummyWalletDatabase()); LOCK(wallet->cs_wallet); wallet->SetupLegacyScriptPubKeyMan(); @@ -348,8 +348,7 @@ BOOST_FIXTURE_TEST_CASE(coin_mark_dirty_immature_credit, TestChain100Setup) { NodeContext node; auto chain = interfaces::MakeChain(node, Params()); - CWallet wallet(chain.get(), WalletLocation(), - WalletDatabase::CreateDummy()); + CWallet wallet(chain.get(), WalletLocation(), CreateDummyWalletDatabase()); auto spk_man = wallet.GetOrCreateLegacyScriptPubKeyMan(); CWalletTx wtx(&wallet, m_coinbase_txns.back()); @@ -533,7 +532,7 @@ CreateAndProcessBlock({}, GetScriptForRawPubKey(coinbaseKey.GetPubKey())); wallet = std::make_unique(m_chain.get(), WalletLocation(), - WalletDatabase::CreateMock()); + CreateMockWalletDatabase()); { LOCK2(wallet->cs_wallet, ::cs_main); wallet->SetLastBlockProcessed( @@ -663,7 +662,7 @@ NodeContext node; auto chain = interfaces::MakeChain(node, Params()); std::shared_ptr wallet = std::make_shared( - chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + chain.get(), WalletLocation(), CreateDummyWalletDatabase()); wallet->SetupLegacyScriptPubKeyMan(); wallet->SetMinVersion(FEATURE_LATEST); wallet->SetWalletFlag(WALLET_FLAG_DISABLE_PRIVATE_KEYS); diff --git a/src/wallet/test/walletdb_tests.cpp b/src/wallet/test/walletdb_tests.cpp --- a/src/wallet/test/walletdb_tests.cpp +++ b/src/wallet/test/walletdb_tests.cpp @@ -21,7 +21,7 @@ NodeContext node; auto chain = interfaces::MakeChain(node, Params()); std::unique_ptr wallet = std::make_unique( - chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + chain.get(), WalletLocation(), CreateDummyWalletDatabase()); DBErrors res = batch.LoadWallet(wallet.get()); BOOST_CHECK(res == DBErrors::LOAD_OK); return wallet; diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -4139,7 +4139,7 @@ // Keep same database environment instance across Verify/Recover calls // below. std::unique_ptr database = - WalletDatabase::Create(wallet_path); + CreateWalletDatabase(wallet_path); try { return database->Verify(error_string); @@ -4166,7 +4166,7 @@ _("Zapping all transactions from wallet...").translated); std::unique_ptr tempWallet = std::make_unique( - &chain, location, WalletDatabase::Create(location.GetPath())); + &chain, location, CreateWalletDatabase(location.GetPath())); DBErrors nZapWalletRet = tempWallet->ZapWalletTx(vWtx); if (nZapWalletRet != DBErrors::LOAD_OK) { error = @@ -4182,8 +4182,7 @@ // TODO: Can't use std::make_shared because we need a custom deleter but // should be possible to use std::allocate_shared. std::shared_ptr walletInstance( - new CWallet(&chain, location, - WalletDatabase::Create(location.GetPath())), + new CWallet(&chain, location, CreateWalletDatabase(location.GetPath())), ReleaseWallet); DBErrors nLoadWalletRet = walletInstance->LoadWallet(fFirstRun); if (nLoadWalletRet != DBErrors::LOAD_OK) { diff --git a/src/wallet/wallettool.cpp b/src/wallet/wallettool.cpp --- a/src/wallet/wallettool.cpp +++ b/src/wallet/wallettool.cpp @@ -32,7 +32,7 @@ // dummy chain interface std::shared_ptr wallet_instance( new CWallet(nullptr /* chain */, WalletLocation(name), - WalletDatabase::Create(path)), + CreateWalletDatabase(path)), WalletToolReleaseWallet); LOCK(wallet_instance->cs_wallet); bool first_run = true; @@ -64,7 +64,7 @@ // dummy chain interface std::shared_ptr wallet_instance( new CWallet(nullptr /* chain */, WalletLocation(name), - WalletDatabase::Create(path)), + CreateWalletDatabase(path)), WalletToolReleaseWallet); DBErrors load_wallet_ret; try { @@ -127,7 +127,7 @@ static bool SalvageWallet(const fs::path &path) { // Create a Database handle to allow for the db to be initialized before // recovery - std::unique_ptr database = WalletDatabase::Create(path); + std::unique_ptr database = CreateWalletDatabase(path); // Initialize the environment before recovery bilingual_str error_string;