mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-21 10:51:29 +00:00
Merge pull request #60448 from Random-Liu/image-cache-return-copy
Automatic merge from submit-queue (batch tested with PRs 59365, 60446, 60448, 55019, 60431). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Let image manager return a copy of image list. Fixes https://github.com/kubernetes/kubernetes/issues/60443. /cc @kubernetes/sig-node-pr-reviews **Release note**: ```release-note none ```
This commit is contained in:
commit
c7b3e163d3
@ -124,7 +124,7 @@ func (i *imageCache) set(images []container.Image) {
|
||||
func (i *imageCache) get() []container.Image {
|
||||
i.RLock()
|
||||
defer i.RUnlock()
|
||||
return i.images
|
||||
return append([]container.Image{}, i.images...)
|
||||
}
|
||||
|
||||
// Information about the images we track.
|
||||
|
@ -548,6 +548,16 @@ func TestValidateImageGCPolicy(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestImageCacheReturnCopiedList(t *testing.T) {
|
||||
cache := &imageCache{}
|
||||
testList := []container.Image{{ID: "1"}, {ID: "2"}}
|
||||
cache.set(testList)
|
||||
list := cache.get()
|
||||
assert.Len(t, list, 2)
|
||||
list[0].ID = "3"
|
||||
assert.Equal(t, cache.get(), testList)
|
||||
}
|
||||
|
||||
func uint64Ptr(i uint64) *uint64 {
|
||||
return &i
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user