-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Pod schedule change #15658
Pod schedule change #15658
Conversation
⏱️ 22m total CI duration on this PR
|
pvc_bound_status[i % len(self.pvcs)] or i < len(self.pvcs) | ||
): # we only create a new pod to intialize the pvc before the PVC is bound | ||
if ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The condition for initializing PVCs needs to be more precise. The current check i < len(self.pvcs)
allows any pod with an index less than the PVC count to proceed, but this could lead to multiple pods initializing the same PVC. Instead, use pvc_bound_status[i % len(self.pvcs)] or (i < len(self.pvcs) and i == i % len(self.pvcs))
to ensure only the first pod for each PVC can initialize it, while subsequent pods must wait for the PVC to be bound.
Spotted by Graphite Reviewer
Is this helpful? React 👍 or 👎 to let us know.
@grao1991 please stamp this? |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ Forge suite
|
✅ Forge suite
|
Description
only schedule pod when the PVC is bound if the pod is not the first pod when initializing the PVC.
Previously, this is not an issue. But recently the first pod of a PVC could be scheduled after the following ones causing disk zone misalignment. will follow up separately on why the pod scheduling is delayed on k8s.
How Has This Been Tested?
local run replay-verify on k8s cluster
Key Areas to Review
Type of Change
Which Components or Systems Does This Change Impact?
Checklist