Update and reactivate the rocksdb tombstone_count test
The same test can be performed using a different RocksDB table.
This commit is contained in:
parent
2500dfb902
commit
d8a2f4e9ce
1 changed files with 8 additions and 11 deletions
|
|
@ -2436,14 +2436,13 @@ namespace nano
|
||||||
{
|
{
|
||||||
// This thest ensures the tombstone_count is increased when there is a delete. The tombstone_count is part of a flush
|
// This thest ensures the tombstone_count is increased when there is a delete. The tombstone_count is part of a flush
|
||||||
// logic bound to the way RocksDB is used by the node.
|
// logic bound to the way RocksDB is used by the node.
|
||||||
/* The unchecked table was deprecated and it is being removed, rewrite this test using another table
|
|
||||||
TEST (rocksdb_block_store, tombstone_count)
|
TEST (rocksdb_block_store, tombstone_count)
|
||||||
{
|
{
|
||||||
if (!nano::rocksdb_config::using_rocksdb_in_tests ())
|
if (!nano::rocksdb_config::using_rocksdb_in_tests ())
|
||||||
{
|
{
|
||||||
GTEST_SKIP ();
|
GTEST_SKIP ();
|
||||||
}
|
}
|
||||||
nano::test::system system{};
|
nano::test::system system;
|
||||||
nano::logger_mt logger;
|
nano::logger_mt logger;
|
||||||
auto store = std::make_unique<nano::rocksdb::store> (logger, nano::unique_path (), nano::dev::constants);
|
auto store = std::make_unique<nano::rocksdb::store> (logger, nano::unique_path (), nano::dev::constants);
|
||||||
ASSERT_TRUE (!store->init_error ());
|
ASSERT_TRUE (!store->init_error ());
|
||||||
|
|
@ -2457,20 +2456,18 @@ TEST (rocksdb_block_store, tombstone_count)
|
||||||
.work (5)
|
.work (5)
|
||||||
.build_shared ();
|
.build_shared ();
|
||||||
// Enqueues a block to be saved in the database
|
// Enqueues a block to be saved in the database
|
||||||
auto previous = block->previous ();
|
nano::account account{ 1 };
|
||||||
store->unchecked.put (store->tx_begin_write (), previous, nano::unchecked_info (block));
|
store->account.put (store->tx_begin_write (), account, nano::account_info{});
|
||||||
nano::unchecked_key key{ previous, block->hash () };
|
|
||||||
auto check_block_is_listed = [&] (nano::transaction const & transaction_a) {
|
auto check_block_is_listed = [&] (nano::transaction const & transaction_a) {
|
||||||
return store->unchecked.exists (transaction_a, key);
|
return store->account.exists (transaction_a, account);
|
||||||
};
|
};
|
||||||
// Waits for the block to get saved
|
// Waits for the block to get saved
|
||||||
ASSERT_TIMELY (5s, check_block_is_listed (store->tx_begin_read ()));
|
ASSERT_TIMELY (5s, check_block_is_listed (store->tx_begin_read ()));
|
||||||
ASSERT_EQ (store->tombstone_map.at (nano::tables::unchecked).num_since_last_flush.load (), 0);
|
ASSERT_EQ (store->tombstone_map.at (nano::tables::accounts).num_since_last_flush.load (), 0);
|
||||||
// Perorms a delete and checks for the tombstone counter
|
// Performs a delete operation and checks for the tombstone counter
|
||||||
store->unchecked.del (store->tx_begin_write (), nano::unchecked_key (previous, block->hash ()));
|
store->account.del (store->tx_begin_write (), account);
|
||||||
ASSERT_TIMELY (5s, store->tombstone_map.at (nano::tables::unchecked).num_since_last_flush.load () == 1);
|
ASSERT_TIMELY (5s, store->tombstone_map.at (nano::tables::accounts).num_since_last_flush.load () == 1);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace nano
|
namespace nano
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue