-
Notifications
You must be signed in to change notification settings - Fork 159
Serialize controller operations on the same volume #307
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I haven't thought much about if all of the controller operations, ie create/delete/expand also all need to be serialized together. |
/kind bug |
For attach and detach, we could get into strange states like returning success from Detach while an Attach to the same node is in progress. |
If the problem is that there is a race condition on Attach ops for the same volume and the GCP layer does not handle this, then we can look into applying similar changes as #303 and serialize ops on the same volume. |
GCP layer does handle this, however, I think our CSI driver layer does not. ie, 2 threads are processing in parallel, an attach and a detach. One of them is going to be waiting for the other, but ordering of operation calls and checks between the two operations are not guaranteed at the moment. |
ie attach and detach should not be allowed to occur in parallel for the same volume
cc @davidz627
The text was updated successfully, but these errors were encountered: