container-diff icon indicating copy to clipboard operation
container-diff copied to clipboard

fatal error: runtime: out of memory

Open russellgan opened this issue 5 years ago • 6 comments

Expected behavior container-diff diff daemon://<local_image1> daemon://<local_image2> --type=file

Actual behavior fails with fatal error

Steps to reproduce the behavior container-diff diff daemon://<local_image1> daemon://<local_image2> --type=file

I know a lot people have the same issue.So does anyone know other tools like container-diff which can explore file tree and export.PLEASE TELL ME!thanks a lot!!!

russellgan avatar Jul 07 '20 08:07 russellgan

@russellgan thanks for the issue. could you provide a little more detail on the image you're trying to run on? I'd love to be able to repro this so we can figure out a way to fix the problem.

nkubala avatar Jul 30 '20 00:07 nkubala

@nkubala thank you for replying.The image I compare is a private image from the company i am working at.So I'm sorry i can't give you more detail about it.But what I can tell you is size of image is about 5g.And before analyzing there is around 12g free memory,but still not enough.To be honest,I deeply doubt if this could be a problem caused by tool itself.

russellgan avatar Jul 30 '20 04:07 russellgan

Hello, i'm having the exact same issue on my side using 0.16.0 release on ubuntu 20.04 amd64 Playing with the diff options on 2 large docker images (~15Gb each)

my debug logs

container-diff diff daemon://myimage1:testdaemon://myimage2:test --type=history -v debug
INFO[0000] starting diff on images daemon://myimage1:test and daemon://myimage2:test, using differs: [history] 
INFO[0000] retrieving image: daemon://myimage2:test
INFO[0000] retrieving image: daemon://myimage1:test

Then the program exit with this message 5 minutes after: [1] 68808 killed container-diff diff daemon://myimage1:test --type=history -v debug

And using dmesg I have this message :

[sam. janv. 23 21:18:12 2021] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/user.slice/user-1000.slice/[email protected],task=container-diff,pid=68808,uid=1000
[sam. janv. 23 21:18:12 2021] Out of memory: Killed process 68808 (container-diff) total-vm:18034048kB, anon-rss:11263888kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:22148kB oom_score_adj:0
[sam. janv. 23 21:18:12 2021] oom_reaper: reaped process 68808 (container-diff), now anon-rss:0kB, file-rss:0kB, shmem-rss:0kB

vDMG avatar Jan 23 '21 20:01 vDMG

If it helps, this happened for me with discourse/base for a repro, but my machine is also memory constrained (4gig total)

jessicah avatar Apr 01 '21 13:04 jessicah

just got hit by the same error, OOM

fxpester avatar May 25 '21 09:05 fxpester

For me this issue is not there if passing .tar files of docker image to the program.

sandeepy1 avatar Apr 28 '22 17:04 sandeepy1