diff --git a/src/coins.h b/src/coins.h index ae7f34f4658..df29c00bf75 100644 --- a/src/coins.h +++ b/src/coins.h @@ -335,9 +335,6 @@ public: //! The passed cursor is used to iterate through the coins. virtual void BatchWrite(CoinsViewCacheCursor& cursor, const uint256& block_hash) = 0; - //! Get a cursor to iterate over the whole state. Implementations may return nullptr. - virtual std::unique_ptr Cursor() const = 0; - //! Estimate database size virtual size_t EstimateSize() const = 0; }; @@ -363,7 +360,6 @@ public: { for (auto it{cursor.Begin()}; it != cursor.End(); it = cursor.NextAndMaybeErase(*it)) { } } - std::unique_ptr Cursor() const override { return {}; } size_t EstimateSize() const override { return 0; } }; @@ -384,7 +380,6 @@ public: uint256 GetBestBlock() const override { return base->GetBestBlock(); } std::vector GetHeadBlocks() const override { return base->GetHeadBlocks(); } void BatchWrite(CoinsViewCacheCursor& cursor, const uint256& block_hash) override { base->BatchWrite(cursor, block_hash); } - std::unique_ptr Cursor() const override { return base->Cursor(); } size_t EstimateSize() const override { return base->EstimateSize(); } }; @@ -435,9 +430,6 @@ public: uint256 GetBestBlock() const override; void SetBestBlock(const uint256& block_hash); void BatchWrite(CoinsViewCacheCursor& cursor, const uint256& block_hash) override; - std::unique_ptr Cursor() const override { - throw std::logic_error("CCoinsViewCache cursor iteration not supported."); - } /** * Check if we have the given utxo already loaded in this cache. diff --git a/src/test/fuzz/coins_view.cpp b/src/test/fuzz/coins_view.cpp index 6116150ecd6..bee42024862 100644 --- a/src/test/fuzz/coins_view.cpp +++ b/src/test/fuzz/coins_view.cpp @@ -227,13 +227,6 @@ void TestCoinsView(FuzzedDataProvider& fuzzed_data_provider, CCoinsViewCache& co } { - bool expected_code_path = false; - try { - (void)coins_view_cache.Cursor(); - } catch (const std::logic_error&) { - expected_code_path = true; - } - assert(expected_code_path); (void)coins_view_cache.DynamicMemoryUsage(); (void)coins_view_cache.EstimateSize(); (void)coins_view_cache.GetBestBlock(); diff --git a/src/txdb.h b/src/txdb.h index 8d4e2cc8271..872395661f9 100644 --- a/src/txdb.h +++ b/src/txdb.h @@ -52,7 +52,8 @@ public: uint256 GetBestBlock() const override; std::vector GetHeadBlocks() const override; void BatchWrite(CoinsViewCacheCursor& cursor, const uint256& block_hash) override; - std::unique_ptr Cursor() const override; + //! Get a cursor to iterate over the whole state. + std::unique_ptr Cursor() const; //! Whether an unsupported database format is used. bool NeedsUpgrade();