rbd: return InvalidArgument for unrecognized QoS - #6457
Conversation
iPraveenParihar
left a comment
There was a problem hiding this comment.
@Madhu-1, Have you tested if when the VAC is deleted or removed from a PVC, the QoS settings are cleared?
This can never happened, only VAC can be changed from the PVC and VAC cannot be deleted if its attached to a PVC, what we have is safe check where it never happens in kubernetes. kept it to be on safer side for other CO |
|
/queue |
|
@Mergifyio rebase |
🛑 The pull request rule doesn't match anymoreDetailsThis action has been cancelled. |
|
/test ci/centos/upgrade-tests-cephfs |
|
/test ci/centos/upgrade-tests-rbd |
|
/test ci/centos/k8s-e2e-external-storage/1.35 |
|
/test ci/centos/k8s-e2e-external-storage/1.36 |
|
/test ci/centos/mini-e2e-helm/k8s-1.35 |
|
/test ci/centos/mini-e2e-helm/k8s-1.36 |
|
/test ci/centos/mini-e2e/k8s-1.35 |
|
/test ci/centos/mini-e2e/k8s-1.36 |
|
/test ci/centos/k8s-e2e-external-storage/1.34 |
|
/test ci/centos/mini-e2e-helm/k8s-1.34 |
|
/test ci/centos/mini-e2e/k8s-1.34 |
|
|
@nixpanic reusing the RBD functions like CreateVolume can cause problem for nvme, we need to separate it out as checks are unique for RBD and nvme will never pass through or we need to unset parameters specific to nvme before calling RBD functions |
|
I guess there is something in the NVMe-oF Controller that calls ControllerModifyVolume on the RBD Controller 🤔 All failed CI jobs (3 currently, all other e2e still running), failed with this: /cc @gadididi |
Unrecognized or invalid QoS parameters in mutable volume attributes are a client input error, not an internal server error. Wrap these errors with ErrInvalidArgument so callers return codes.InvalidArgument instead of codes.Internal. Assisted-by: Claude <noreply@anthropic.com> Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
it because we are calling rbd createVolume from vnme CreateVolume. added a 2nd commit to strip nvme specific mutable parameters |
Pull request has been modified.
|
/test ci/centos/mini-e2e/k8s-1.36 |
|
/test ci/centos/mini-e2e/k8s-1.35 |
|
Added one more commit to allow unsetting the Qos |
Accept "max" to reset QoS limits to unlimited and "0" to fully throttle I/O. This enables users to revert QoS configurations applied by a VolumeAttributesClass by creating a VAC with all values set to "max". Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
Unrecognized or invalid QoS parameters in mutable volume attributes are a client input error, not an internal
server error. Wrap these errors with ErrInvalidArgument so callers return codes.InvalidArgument instead of codes.Internal.
Allow unsetting the Qos by setting the values as max