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.

Reply via email to