diff options
author | yuryalekseev <[email protected]> | 2023-02-05 11:11:52 +0300 |
---|---|---|
committer | yuryalekseev <[email protected]> | 2023-02-05 11:11:52 +0300 |
commit | 9331e4d05e2f395a0a5ab5f5647517eab412bbed (patch) | |
tree | 4b00fbb2feb9cfb9e33e61c57df5ec90080d8e30 | |
parent | bc6c67e2881b48c46bc7ef1dedf6ae2db06bccba (diff) |
Update PDiskConfig only for nonstatic PDisks.
-rw-r--r-- | ydb/core/mind/bscontroller/config_fit_pdisks.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/ydb/core/mind/bscontroller/config_fit_pdisks.cpp b/ydb/core/mind/bscontroller/config_fit_pdisks.cpp index 1c34987e892..97d16737065 100644 --- a/ydb/core/mind/bscontroller/config_fit_pdisks.cpp +++ b/ydb/core/mind/bscontroller/config_fit_pdisks.cpp @@ -82,7 +82,15 @@ namespace NKikimr { pdiskInfo->SharedWithOs = disk.SharedWithOs; pdiskInfo->ReadCentric = disk.ReadCentric; pdiskInfo->BoxId = disk.BoxId; - pdiskInfo->PDiskConfig = disk.PDiskConfig; + if (pdiskInfo->PDiskConfig != disk.PDiskConfig) { + // update PDiskConfig only for nonstatic PDisks + if (!state.FindStaticPDiskByLocation(disk.NodeId, disk.Path)) { + pdiskInfo->PDiskConfig = disk.PDiskConfig; + } else { + throw TExError() << "Skipping PDiskConfig update for static disk" << TErrorParams::NodeId(disk.NodeId) << TErrorParams::Path(disk.Path); + } + } + // run ExtractConfig as the very last step pdiskInfo->ExtractConfig(defaultMaxSlots); } } |