libopenstorage / cloudops

Apache License 2.0
7 stars 13 forks source link

PWX-38340: fix race issues when updating k8s configmaps #178

Closed pureneelesh closed 2 months ago

pureneelesh commented 2 months ago

What this PR does / why we need it:

CreateKey(), PutKey() and DeleteKey() updated the configmap keys that they had not locked because they specified all keys to Patch(). This overwrote the updates made by other nodes under a different lock.

Now, we use the new PatchKeyLocked() interface provided by the sched-ops repo.

Vendored in the for-cloudops branch from sched-ops repo. This branch in sched-ops repo was created from the current sched-ops git-hash used by the cloudops repo. Then, cherry-picked all the changes in sched-ops that involved k8s/cores/configmap directory. Used the following command to identify the commits to cherry-pick to the for-cloudops branch in the sched-ops repo.

$ git log --oneline ead591c0f22d..master -- k8s/core/configmap

Which issue(s) this PR fixes (optional) PWX-38340

Special notes for your reviewer: