Commit 90a4ac03 authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #52161 from CaoShuFeng/kubectl_cp

Automatic merge from submit-queue (batch tested with PRs 52109, 52235, 51809, 52161, 50080). 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>.. Allow kubectl cp large amounts of files from container When we try to copy out a dir with large amounts of files from container, we hit such error: ```bash kubectl cp mypod:/ ./a/ tar: Removing leading `/' from member names tar: Removing leading `/' from hard link targets error: open a/usr/share/zoneinfo/Asia/Rangoon: too many open files ``` This is because kubectl opens too many files at the same. We should close them after Write() function. **Release note**: ``` NONE ```
parents 37780d1c 9820e65e
......@@ -259,8 +259,12 @@ func untarAll(reader io.Reader, destFile, prefix string) error {
if err != nil {
return err
}
defer outFile.Close()
io.Copy(outFile, tarReader)
if _, err := io.Copy(outFile, tarReader); err != nil {
return err
}
if err := outFile.Close(); err != nil {
return err
}
}
return nil
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment