mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 20:53:33 +00:00
copy podStatus.ContainerStatuses before sorting it
This commit is contained in:
parent
006d5b8539
commit
ab1807f2bc
@ -1837,11 +1837,15 @@ func (kl *Kubelet) convertToAPIContainerStatuses(pod *v1.Pod, podStatus *kubecon
|
|||||||
statuses[container.Name] = status
|
statuses[container.Name] = status
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Copy the slice before sorting it
|
||||||
|
containerStatusesCopy := make([]*kubecontainer.Status, len(podStatus.ContainerStatuses))
|
||||||
|
copy(containerStatusesCopy, podStatus.ContainerStatuses)
|
||||||
|
|
||||||
// Make the latest container status comes first.
|
// Make the latest container status comes first.
|
||||||
sort.Sort(sort.Reverse(kubecontainer.SortContainerStatusesByCreationTime(podStatus.ContainerStatuses)))
|
sort.Sort(sort.Reverse(kubecontainer.SortContainerStatusesByCreationTime(containerStatusesCopy)))
|
||||||
// Set container statuses according to the statuses seen in pod status
|
// Set container statuses according to the statuses seen in pod status
|
||||||
containerSeen := map[string]int{}
|
containerSeen := map[string]int{}
|
||||||
for _, cStatus := range podStatus.ContainerStatuses {
|
for _, cStatus := range containerStatusesCopy {
|
||||||
cName := cStatus.Name
|
cName := cStatus.Name
|
||||||
if _, ok := statuses[cName]; !ok {
|
if _, ok := statuses[cName]; !ok {
|
||||||
// This would also ignore the infra container.
|
// This would also ignore the infra container.
|
||||||
|
Loading…
Reference in New Issue
Block a user