Fix tests
This commit is contained in:
parent
5b9a106909
commit
ef63c23b6e
4 changed files with 37 additions and 12 deletions
|
|
@ -2783,9 +2783,8 @@ TEST (node, rollback_vote_self)
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
|
|
||||||
// Without the rollback being finished, the aggregator should not reply with any vote
|
// Without the rollback being finished, the aggregator should not reply with any vote
|
||||||
auto channel = std::make_shared<nano::transport::fake::channel> (node);
|
node.aggregator.request ({ { send2->hash (), send2->root () } }, node.loopback_channel);
|
||||||
node.aggregator.request ({ { send2->hash (), send2->root () } }, channel);
|
ASSERT_ALWAYS (1s, !election->votes ().contains (nano::dev::genesis_key.pub));
|
||||||
ASSERT_ALWAYS_EQ (1s, node.stats.count (nano::stat::type::request_aggregator_replies), 0);
|
|
||||||
|
|
||||||
// Going out of the scope allows the rollback to complete
|
// Going out of the scope allows the rollback to complete
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,9 @@ TEST (request_aggregator, one)
|
||||||
nano::test::system system;
|
nano::test::system system;
|
||||||
nano::node_config node_config = system.default_config ();
|
nano::node_config node_config = system.default_config ();
|
||||||
node_config.backlog_scan.enable = false;
|
node_config.backlog_scan.enable = false;
|
||||||
auto & node (*system.add_node (node_config));
|
nano::node_flags node_flags;
|
||||||
|
node_flags.disable_rep_crawler = true;
|
||||||
|
auto & node (*system.add_node (node_config, node_flags));
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
nano::block_builder builder;
|
nano::block_builder builder;
|
||||||
auto send1 = builder
|
auto send1 = builder
|
||||||
|
|
@ -77,7 +79,9 @@ TEST (request_aggregator, one_update)
|
||||||
nano::test::system system;
|
nano::test::system system;
|
||||||
nano::node_config node_config = system.default_config ();
|
nano::node_config node_config = system.default_config ();
|
||||||
node_config.backlog_scan.enable = false;
|
node_config.backlog_scan.enable = false;
|
||||||
auto & node (*system.add_node (node_config));
|
nano::node_flags node_flags;
|
||||||
|
node_flags.disable_rep_crawler = true;
|
||||||
|
auto & node (*system.add_node (node_config, node_flags));
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
nano::keypair key1;
|
nano::keypair key1;
|
||||||
auto send1 = nano::state_block_builder ()
|
auto send1 = nano::state_block_builder ()
|
||||||
|
|
@ -143,7 +147,9 @@ TEST (request_aggregator, two)
|
||||||
nano::test::system system;
|
nano::test::system system;
|
||||||
nano::node_config node_config = system.default_config ();
|
nano::node_config node_config = system.default_config ();
|
||||||
node_config.backlog_scan.enable = false;
|
node_config.backlog_scan.enable = false;
|
||||||
auto & node (*system.add_node (node_config));
|
nano::node_flags node_flags;
|
||||||
|
node_flags.disable_rep_crawler = true;
|
||||||
|
auto & node (*system.add_node (node_config, node_flags));
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
nano::keypair key1;
|
nano::keypair key1;
|
||||||
nano::state_block_builder builder;
|
nano::state_block_builder builder;
|
||||||
|
|
@ -273,7 +279,9 @@ TEST (request_aggregator, split)
|
||||||
nano::test::system system;
|
nano::test::system system;
|
||||||
nano::node_config node_config = system.default_config ();
|
nano::node_config node_config = system.default_config ();
|
||||||
node_config.backlog_scan.enable = false;
|
node_config.backlog_scan.enable = false;
|
||||||
auto & node (*system.add_node (node_config));
|
nano::node_flags node_flags;
|
||||||
|
node_flags.disable_rep_crawler = true;
|
||||||
|
auto & node (*system.add_node (node_config, node_flags));
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
std::vector<std::pair<nano::block_hash, nano::root>> request;
|
std::vector<std::pair<nano::block_hash, nano::root>> request;
|
||||||
std::vector<std::shared_ptr<nano::block>> blocks;
|
std::vector<std::shared_ptr<nano::block>> blocks;
|
||||||
|
|
@ -328,7 +336,9 @@ TEST (request_aggregator, channel_max_queue)
|
||||||
nano::node_config node_config = system.default_config ();
|
nano::node_config node_config = system.default_config ();
|
||||||
node_config.backlog_scan.enable = false;
|
node_config.backlog_scan.enable = false;
|
||||||
node_config.request_aggregator.max_queue = 0;
|
node_config.request_aggregator.max_queue = 0;
|
||||||
auto & node (*system.add_node (node_config));
|
nano::node_flags node_flags;
|
||||||
|
node_flags.disable_rep_crawler = true;
|
||||||
|
auto & node (*system.add_node (node_config, node_flags));
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
nano::block_builder builder;
|
nano::block_builder builder;
|
||||||
auto send1 = builder
|
auto send1 = builder
|
||||||
|
|
@ -390,6 +400,7 @@ TEST (request_aggregator, cannot_vote)
|
||||||
nano::test::system system;
|
nano::test::system system;
|
||||||
nano::node_flags flags;
|
nano::node_flags flags;
|
||||||
flags.disable_request_loop = true;
|
flags.disable_request_loop = true;
|
||||||
|
flags.disable_rep_crawler = true;
|
||||||
auto & node (*system.add_node (flags));
|
auto & node (*system.add_node (flags));
|
||||||
nano::state_block_builder builder;
|
nano::state_block_builder builder;
|
||||||
auto send1 = builder.make_block ()
|
auto send1 = builder.make_block ()
|
||||||
|
|
@ -548,7 +559,12 @@ TEST (request_aggregator, forked_open)
|
||||||
TEST (request_aggregator, epoch_conflict)
|
TEST (request_aggregator, epoch_conflict)
|
||||||
{
|
{
|
||||||
nano::test::system system;
|
nano::test::system system;
|
||||||
auto & node = *system.add_node ();
|
|
||||||
|
nano::node_flags node_flags;
|
||||||
|
// Workaround for vote spacing dropping requests with the same root
|
||||||
|
// FIXME: Vote spacing should use full qualified root
|
||||||
|
node_flags.disable_rep_crawler = true;
|
||||||
|
auto & node = *system.add_node (node_flags);
|
||||||
|
|
||||||
// Voting needs a rep key set up on the node
|
// Voting needs a rep key set up on the node
|
||||||
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
system.wallet (0)->insert_adhoc (nano::dev::genesis_key.prv);
|
||||||
|
|
|
||||||
|
|
@ -114,7 +114,7 @@ TEST (vote_processor, weights)
|
||||||
auto & node (*system.nodes[0]);
|
auto & node (*system.nodes[0]);
|
||||||
|
|
||||||
// Create representatives of different weight levels
|
// Create representatives of different weight levels
|
||||||
auto const stake = node.config.online_weight_minimum.number ();
|
auto const stake = nano::dev::genesis->balance ().number ();
|
||||||
auto const level0 = stake / 5000; // 0.02%
|
auto const level0 = stake / 5000; // 0.02%
|
||||||
auto const level1 = stake / 500; // 0.2%
|
auto const level1 = stake / 500; // 0.2%
|
||||||
auto const level2 = stake / 50; // 2%
|
auto const level2 = stake / 50; // 2%
|
||||||
|
|
|
||||||
|
|
@ -38,6 +38,11 @@ void nano::rep_crawler::start ()
|
||||||
{
|
{
|
||||||
debug_assert (!thread.joinable ());
|
debug_assert (!thread.joinable ());
|
||||||
|
|
||||||
|
if (node.flags.disable_rep_crawler)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
thread = std::thread{ [this] () {
|
thread = std::thread{ [this] () {
|
||||||
nano::thread_role::set (nano::thread_role::name::rep_crawler);
|
nano::thread_role::set (nano::thread_role::name::rep_crawler);
|
||||||
run ();
|
run ();
|
||||||
|
|
@ -130,11 +135,16 @@ void nano::rep_crawler::validate_and_process (nano::unique_lock<nano::mutex> & l
|
||||||
|
|
||||||
if (inserted)
|
if (inserted)
|
||||||
{
|
{
|
||||||
logger.info (nano::log::type::rep_crawler, "Found representative: {} at: {}", vote->account.to_account (), channel->to_string ());
|
logger.info (nano::log::type::rep_crawler, "Found representative: {} at: {}",
|
||||||
|
vote->account.to_account (),
|
||||||
|
channel->to_string ());
|
||||||
}
|
}
|
||||||
if (updated)
|
if (updated)
|
||||||
{
|
{
|
||||||
logger.warn (nano::log::type::rep_crawler, "Updated representative: {} at: {} (was at: {})", vote->account.to_account (), channel->to_string (), prev_channel->to_string ());
|
logger.warn (nano::log::type::rep_crawler, "Updated representative: {} at: {} (was at: {})",
|
||||||
|
vote->account.to_account (),
|
||||||
|
channel->to_string (),
|
||||||
|
prev_channel->to_string ());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue