diff options
author | t1mursadykov <t1mursadykov@ydb.tech> | 2022-10-06 12:16:49 +0300 |
---|---|---|
committer | t1mursadykov <t1mursadykov@ydb.tech> | 2022-10-06 12:16:49 +0300 |
commit | 92515b8e8d1c011fcbd3916230ef55e294bf9be5 (patch) | |
tree | 1177fa4a54d8248b24b76a323013ea42e140f728 | |
parent | f691e892568ed44ba61c85b96bfe665cb0e47a7a (diff) | |
download | ydb-92515b8e8d1c011fcbd3916230ef55e294bf9be5.tar.gz |
Fix Mirror3dc max availability in CMS
-rw-r--r-- | ydb/core/cms/cms_ut.cpp | 8 | ||||
-rw-r--r-- | ydb/core/cms/erasure_checkers.cpp | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/ydb/core/cms/cms_ut.cpp b/ydb/core/cms/cms_ut.cpp index c38b96315df..740181c370b 100644 --- a/ydb/core/cms/cms_ut.cpp +++ b/ydb/core/cms/cms_ut.cpp @@ -1304,6 +1304,14 @@ Y_UNIT_TEST_SUITE(TCmsTest) { TCmsTestEnv env(options); + env.CheckPermissionRequest("user", false, true, false, true, MODE_MAX_AVAILABILITY, TStatus::ALLOW, + MakeAction(TAction::RESTART_SERVICES, env.GetNodeId(2), 60000000, "storage")); + + TFakeNodeWhiteboardService::Info[env.GetNodeId(1)].Connected = false; + env.RestartCms(); + + env.CheckPermissionRequest("user", false, true, false, true, MODE_MAX_AVAILABILITY, TStatus::DISALLOW_TEMP, + MakeAction(TAction::RESTART_SERVICES, env.GetNodeId(2), 60000000, "storage")); // 3dc disabled TFakeNodeWhiteboardService::Info[env.GetNodeId(7)].Connected = false; TFakeNodeWhiteboardService::Info[env.GetNodeId(4)].Connected = false; diff --git a/ydb/core/cms/erasure_checkers.cpp b/ydb/core/cms/erasure_checkers.cpp index 0009db01669..122cd4b9b35 100644 --- a/ydb/core/cms/erasure_checkers.cpp +++ b/ydb/core/cms/erasure_checkers.cpp @@ -159,6 +159,7 @@ void TMirror3dcCounter::CountVDisk(const TVDiskInfo& vdisk, error.Reason = TStringBuilder() << "Issue in affected group " << GroupId << ". " << err.Reason; error.Deadline = Max(error.Deadline, err.Deadline); + ++Locked; ++DataCenterDisabledNodes[vdisk.VDiskId.FailRealm]; } } |