-
Notifications
You must be signed in to change notification settings - Fork 743
Description
Problem
Simplified mirror-3dc consists of 3 servers with 3 disks each. When such a cluster is attempted to be restarted using ydbops (it using Maintenance API internally), it fails with an error You cannot get two or more disks from the same group at the same time without specifying the PartialPermissionAllowed parameter.
What happens here?
Maintenance API almost always use PartialPermissionAllowed, this allows requests consisting of multiple action groups to be performed piecemeal. But when this option is enabled, the CMS behaves a little smarter than is expected of it. It allows only one VDisk to be maintained from a storage group per refresh of the task (even if the group does not go beyond the failure model) with the expectation that the user is happy with partial fulfillment and will come back next time for the rest VDisks.
This behaviour doesn't work in a simplified mirror-3dc, VDisks of the same group can be on the same node, and to maintain a node you need to maintain all the VDisks of the node at once.