Open yuxiang-he opened 4 months ago
This is another issue discovered while investigating https://github.com/kubernetes-csi/external-provisioner/issues/1161
This makes sense to me.
/triage accepted /help
@pohly: This request has been marked as needing help from a contributor.
Please ensure that the issue body includes answers to the following questions:
For more details on the requirements of such an issue, please see here and ensure that they are met.
If this request no longer meets these requirements, the label can be removed
by commenting with the /remove-help
command.
Is your feature request related to a problem?/Why is this needed
See
onSCAddOrUpdate
implementation in https://github.com/kubernetes-csi/external-provisioner/blob/v4.0.0/pkg/capacity/capacity.go#L378-L384Currently the capacity controller creates a workqueue item for every
segment x storageClass
combination, some of which are impossible.Describe the solution you'd like in detail
Storage classes can specify allowed topologies https://kubernetes.io/docs/concepts/storage/storage-classes/#allowed-topologies so not all combinations of
segment x storageClass
are valid here. An example would be certain types of storage (and hence storage class) are only available in selected topology segments.We can reduce potential workqueue cardinality by filtering out impossible
segment x storageClass
combinations. This allows quickerCSIStorageCapacity
object updates.Describe alternatives you've considered
Additional context