Revert "Revert "view_update_generator: Increase the registration_queue_size""

This reverts commit 4cee8206f8.

The test is fixed.

Closes #14750
This commit is contained in:
Asias He
2023-07-19 11:24:39 +08:00
committed by Botond Dénes
parent 6ce0d3a202
commit c29e7e4644
2 changed files with 12 additions and 12 deletions

View File

@@ -50,7 +50,7 @@ using wait_for_all_updates = bool_class<wait_for_all_updates_tag>;
class view_update_generator : public async_sharded_service<view_update_generator> {
public:
static constexpr size_t registration_queue_size = 5;
static constexpr size_t registration_queue_size = 100;
private:
replica::database& _db;

View File

@@ -464,17 +464,17 @@ SEASTAR_TEST_CASE(test_view_update_generator) {
BOOST_REQUIRE_EQUAL(view_update_generator.available_register_units(), db::view::view_update_generator::registration_queue_size);
parallel_for_each(ssts.begin(), ssts.begin() + 10, [&] (shared_sstable& sst) {
return view_update_generator.register_staging_sstable(sst, t);
}).get();
BOOST_REQUIRE_EQUAL(view_update_generator.available_register_units(), db::view::view_update_generator::registration_queue_size);
parallel_for_each(ssts.begin() + 10, ssts.end(), [&] (shared_sstable& sst) {
return view_update_generator.register_staging_sstable(sst, t);
}).get();
BOOST_REQUIRE_EQUAL(view_update_generator.available_register_units(), db::view::view_update_generator::registration_queue_size);
auto register_and_check_semaphore = [&view_update_generator, t] (std::vector<shared_sstable>::iterator b, std::vector<shared_sstable>::iterator e) {
std::vector<future<>> register_futures;
for (auto it = b; it != e; ++it) {
register_futures.emplace_back(view_update_generator.register_staging_sstable(*it, t));
}
const auto qsz = db::view::view_update_generator::registration_queue_size;
when_all(register_futures.begin(), register_futures.end()).get();
REQUIRE_EVENTUALLY_EQUAL(view_update_generator.available_register_units(), qsz);
};
register_and_check_semaphore(ssts.begin(), ssts.begin() + 10);
register_and_check_semaphore(ssts.begin() + 10, ssts.end());
auto select_by_p_id = e.prepare("SELECT * FROM t WHERE p = ?").get();
auto select_by_p_and_c_id = e.prepare("SELECT * FROM t WHERE p = ? and c = ?").get();