Nephio is a Kubernetes-based automation platform for deploying and managing highly distributed, interconnected workloads such as 5G Network Functions, and the underlying infrastructure on which those workloads depend.
In #3993 we added checks for resource version. This should help a lot, but it's probably not sufficient. For example, I suspect since we don't acquire a pacakgerevision mutex, you could still have a race condition where two simultaneous update calls came in and bypassed each others resource version checks. Similarly, I am not sure whether we have mutex on the package revision / package revision resources when we do our multi-commit saves (maybe we do have this?).
In any case, I suspect there is still a fair bit of work to do to make sure all concurrency issues are resolved, so I am raising this issue to track that work.
Original issue URL: https://github.com/kptdev/kpt/issues/4003 Original issue user: https://github.com/johnbelamaric Original issue created at: 2023-07-08T00:19:18Z Original issue last updated at: 2023-07-21T16:03:24Z Original issue body: ### Describe your problem
In #3993 we added checks for resource version. This should help a lot, but it's probably not sufficient. For example, I suspect since we don't acquire a pacakgerevision mutex, you could still have a race condition where two simultaneous update calls came in and bypassed each others resource version checks. Similarly, I am not sure whether we have mutex on the package revision / package revision resources when we do our multi-commit saves (maybe we do have this?).
In any case, I suspect there is still a fair bit of work to do to make sure all concurrency issues are resolved, so I am raising this issue to track that work.
Original issue comments: Comment user: https://github.com/johnbelamaric Comment created at: 2023-07-08T00:21:59Z Comment last updated at: 2023-07-08T00:21:59Z Comment body: See also: https://github.com/GoogleContainerTools/kpt/pull/3993#issuecomment-1622123322