-
Bug
-
Resolution: Unresolved
-
Undefined
-
None
-
4.21
-
None
Description of problem:
Using the o2ims-infrastructureProvisioning API to update a ProvisioningRequest sometimes results in a 500 error returned due to a race condition in the update function in the API between when the resource version is fetched and when the update is applied. Seems to be happening more recently, but it doesn't seem to be due to recent changes to the provisioning server. It seems like it'd be better to retry on conflict around the update to prevent this from being returned to the user, since there's nothing they can do through the API other than try again. API error: 500 failed to update ProvisioningRequest (9c5372f3-ea1d-4a96-8157-b3b874a55cf9): Operation cannot be fulfilled on provisioningrequests.clcm.openshift.io "9c5372f3-ea1d-4a96-8157-b3b874a55cf9": the object has been modified; please apply your changes to the latest version and try again
The error seems to come from this line.
Version-Release number of selected component (if applicable):
latest 4.21, FBC digest sha256:33e17256a14e5affc2290755550ba8e40f5111dfaa65d9adb542ed98e4719bc2
How reproducible:
see 1 or 2 in CI, so relatively rare considering how many updates
Steps to Reproduce:
1. Update ProvisioningRequest through o2ims-infrastructureProvisioning API request
2. See returned error
3.
Actual results:
500 due to conflict
Expected results:
preferrably the API internally retries on conflict to prevent the error
Additional info:
google drive with some logs, although they don't show much
- blocks
-
OCPBUGS-73806 ProvisioningRequest update fails with 500 due to k8s conflict
-
- Verified
-
- is cloned by
-
OCPBUGS-73806 ProvisioningRequest update fails with 500 due to k8s conflict
-
- Verified
-
- links to