Skip to content
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

nerdctl commit taking long time possibly because of fs.Changes walking through all files #236

Open
pankajkumar229 opened this issue Jan 23, 2024 · 3 comments

Comments

@pankajkumar229
Copy link

pankajkumar229 commented Jan 23, 2024

We have an 8GB image we are trying to commit with nerdctl. It takes a long time for this to happen. It seems to be because fs.Changes implemented in continuity is not using the diff functionality from overlayfs but just walking every file.

func Changes(ctx context.Context, a, b string, changeFn ChangeFunc) error {

It seems like this needs to be implemented here:

https://github.com/containerd/continuity/blob/main/fs/diff_unix.go#L34

Could someone please take a look to see if our understanding is correct. If it is, what would it take to fix this code so it can work more effectively for overlayfs?

@AkihiroSuda
Copy link
Member

@pankajkumar229
Copy link
Author

Thanks for pointing this out. The changes look like they are almost complete. Wondering why this was never merged. if it would be possible to make this fix work by people unfamiliar with this codebase in a reasonable amount of time.

@guyLee687
Copy link

@AkihiroSuda Do you know if this issue can be closed and when #236 (comment) will be deployed to production for containerd?

I'm also trying create a service using "nerctl commit" without the large latency involved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants