|
@@ -5532,6 +5532,33 @@ Y_UNIT_TEST_SUITE(THiveTest) {
|
|
|
UNIT_ASSERT_VALUES_EQUAL(nodeTablets[4], 0);
|
|
|
UNIT_ASSERT_VALUES_EQUAL(nodeTablets[5], NUM_TABLETS);
|
|
|
}
|
|
|
+
|
|
|
+ Y_UNIT_TEST(TestProgressWithMaxTabletsScheduled) {
|
|
|
+ TTestBasicRuntime runtime(2, false);
|
|
|
+
|
|
|
+ Setup(runtime, true, 1, [](TAppPrepare& app) {
|
|
|
+ app.HiveConfig.SetMaxTabletsScheduled(1);
|
|
|
+ app.HiveConfig.SetBootStrategy(NKikimrConfig::THiveConfig::HIVE_BOOT_STRATEGY_FAST);
|
|
|
+ });
|
|
|
+
|
|
|
+ const ui64 hiveTablet = MakeDefaultHiveID(0);
|
|
|
+ const ui64 testerTablet = MakeDefaultHiveID(1);
|
|
|
+
|
|
|
+ CreateTestBootstrapper(runtime, CreateTestTabletInfo(hiveTablet, TTabletTypes::Hive), &CreateDefaultHive);
|
|
|
+
|
|
|
+ TTabletTypes::EType tabletType = TTabletTypes::Dummy;
|
|
|
+ TVector<ui64> tablets;
|
|
|
+ for (int i = 0; i < 10; ++i) {
|
|
|
+ THolder<TEvHive::TEvCreateTablet> ev(new TEvHive::TEvCreateTablet(testerTablet, 100500 + i, tabletType, BINDED_CHANNELS));
|
|
|
+ ui64 tabletId = SendCreateTestTablet(runtime, hiveTablet, testerTablet, std::move(ev), 0, true);
|
|
|
+ tablets.emplace_back(tabletId);
|
|
|
+ };
|
|
|
+
|
|
|
+ SendKillLocal(runtime, 0);
|
|
|
+ for (auto tablet : tablets) {
|
|
|
+ WaitForTabletIsUp(runtime, tablet, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
}
|