Which java you are using? The default bundle come with the distro or oracle one? I had have the experience of getting distro bundle java is a problemetic.Precisely I was playing with tomcat for a while.YMMV On Wednesday, July 20, 2016 at 2:52:32 PM UTC+5:30, Mikhail Krestjaninoff wrote: > > I have a docker container which starts a simple java (jgroups-based) > application through a bash script. The java process is limited through > 'Xmx' by 128m, the *container* is allowed to *use 256m (swap is disabled)*. > Unfortunately, time to time I face the following OOM messages: > > Jul 07 02:43:54 ip-10-1-2-125 kernel: oom_kill_process: 16 callbacks > suppressed > Jul 07 02:43:54 ip-10-1-2-125 kernel: java invoked oom-killer: gfp_mask= > 0x2400040, order=0, oom_score_adj=0 > Jul 07 02:43:54 ip-10-1-2-125 kernel: java cpuset= > 0ead341e639c2f2bd27a38666aa0834c969e8c7e6d2fb21516a2c698adce8d5f > mems_allowed=0 > Jul 07 02:43:54 ip-10-1-2-125 kernel: CPU: 0 PID: 26686 Comm: java Not > tainted 4.4.0-28-generic #47-Ubuntu > Jul 07 02:43:54 ip-10-1-2-125 kernel: Hardware name: Xen HVM domU, BIOS > 4.2.amazon 05/12/2016 > Jul 07 02:43:54 ip-10-1-2-125 kernel: 0000000000000286 000000006ffe9d71 > ffff8800bb3c7c88 ffffffff813eb1a3 > Jul 07 02:43:54 ip-10-1-2-125 kernel: ffff8800bb3c7d68 ffff880033aea940 > ffff8800bb3c7cf8 ffffffff812094fe > Jul 07 02:43:54 ip-10-1-2-125 kernel: 000000000000258c 000000000000000a > ffffffff81e66760 0000000000000206 > Jul 07 02:43:54 ip-10-1-2-125 kernel: Call Trace: > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff813eb1a3>] dump_stack+ > 0x63/0x90 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff812094fe>] dump_header+ > 0x5a/0x1c5 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff811913b2>] > oom_kill_process+0x202/0x3c0 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff811fd304>] ? > mem_cgroup_iter+0x204/0x390 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff811ff363>] > mem_cgroup_out_of_memory+0x2b3/0x300 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff81200138>] > mem_cgroup_oom_synchronize+0x338/0x350 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff811fb660>] ? kzalloc_node > .constprop.48+0x20/0x20 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff81191a64>] > pagefault_out_of_memory+0x44/0xc0 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff8106b2c2>] mm_fault_error > +0x82/0x160 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff8106b778>] > __do_page_fault+0x3d8/0x400 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff8106b7c2>] do_page_fault+ > 0x22/0x30 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [<ffffffff81829838>] page_fault+ > 0x28/0x30 > Jul 07 02:43:54 ip-10-1-2-125 kernel: Task in /docker/ > 0ead341e639c2f2bd27a38666aa0834c969e8c7e6d2fb21516a2c698adce8d5f killed as > a result of limit of /docker/0ead341e639c2f2bd27a38666aa0834c96 > Jul 07 02:43:54 ip-10-1-2-125 kernel: memory: usage 262144kB, limit > 262144kB, failcnt 6868 > Jul 07 02:43:54 ip-10-1-2-125 kernel: memory+swap: usage 0kB, limit > 9007199254740988kB, failcnt 0 > Jul 07 02:43:54 ip-10-1-2-125 kernel: kmem: usage 0kB, limit > 9007199254740988kB, failcnt 0 > Jul 07 02:43:54 ip-10-1-2-125 kernel: Memory cgroup stats for /docker/ > 0ead341e639c2f2bd27a38666aa0834c969e8c7e6d2fb21516a2c698adce8d5f: cache: > 96KB rss:262048KB rss_huge:135168KB mapped_file:16 > Jul 07 02:43:54 ip-10-1-2-125 kernel: [ pid ] uid tgid total_vm > rss nr_ptes nr_pmds swapents oom_score_adj name > Jul 07 02:43:54 ip-10-1-2-125 kernel: [26659] 0 26659 1127 > 20 7 3 0 0 sh > Jul 07 02:43:54 ip-10-1-2-125 kernel: [26665] 0 26665 1127 > 20 7 3 0 0 run.sh > Jul 07 02:43:54 ip-10-1-2-125 kernel: [26675] 0 26675 688639 > 64577 204 7 0 0 java > Jul 07 02:43:54 ip-10-1-2-125 kernel: Memory cgroup out of memory: Kill > process 26675 (java) score 988 or sacrifice child > Jul 07 02:43:54 ip-10-1-2-125 kernel: Killed process 26675 (java) total-vm > :2754556kB, anon-rss:258308kB, file-rss:0kB > Jul 07 02:43:54 ip-10-1-2-125 docker[977]: Killed > > > I know that java's heap isn't the only memory which a jvm process uses, > but as you can see above *RSS of my app is just about 64M*. In the same > time, for some reason *RSS of the cgroup is 256M* (including 128M of huge > pages). > Is that a kind of OS caches? If so, why OOM doesn't flush them before > killing user's apps? > > *System info*: > Docker 1.11.1 > Ubuntu 16.04 / 4.4.0-28-generic (AWS) >
-- You received this message because you are subscribed to the Google Groups "docker-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to docker-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.