Can't start ES with HEAP SIZE larger than 7g

Even though my machine has 12GB of memory available and knowing that the mlockall is true, I'm not able to start elasticsearch using a HEAP SIZE larger than 7g. Is there any configuration that I'm missing?

Thanks in advance

Update 1:

I get the following logs using the debug mode when I restart the service.

[2017-04-16 15:26:33,094][DEBUG][bootstrap ] seccomp(SECCOMP_SET_MODE_FILTER): Function not implemented, falling back to prctl(PR_SET_SECCOMP)...
[2017-04-16 15:26:33,094][DEBUG][bootstrap ] Linux seccomp filter installation successful, threads: [app]

This also happens when I put a ES_MIN_MEM equals to ES_MAX_MEM or if I use ES_HEAP_SIZE instead.
My elasticsearch version is 2.3.2

Update 2

My kernel is 3.10.0-229 of a Centos 7, it might be related with the seccomp call but it should fall back to the other function properly.

The kernel log says:

Out of memory: Kill process 6593 (java) score 546 or sacrifice child
Killed process 6593 (java) total-vm:16040776kB, anon-rss:7659632kB, file-rss:124120kB

But the machine does have enough memory.

What kind of "not able to start" ? Are you getting an error upon starting? Anything usefull in the logs ?

1 Like

What kind of "not able to start" ? Are you getting an error upon starting?

No error in the logs. It just crash after restarting the service. I changed the log level to DEBUG and got these:

I get the following logs using the debug mode.

[2017-04-16 15:26:33,094][DEBUG][bootstrap ] seccomp(SECCOMP_SET_MODE_FILTER): Function not implemented, falling back to prctl(PR_SET_SECCOMP)...
[2017-04-16 15:26:33,094][DEBUG][bootstrap ] Linux seccomp filter installation successful, threads: [app]

This also happens when I put a ES_MIN_MEM equals to ES_MAX_MEM or if I use ES_HEAP_SIZE instead.
My elasticsearch version is 2.3.2

do you have hugepages enabled? if yes, you also need to add a flag to java, so it can use it: -XX:+UseLargePages -XX:LargePageSizeInBytes=2m (or whatever the size you may be using)

check your hugepages setup with cat /proc/meminfo |grep Huge
please notice that a hugepage can not use used by nom-hugepage apps, so free will show then as free, but they can not be used

1 Like

My hugepages configurations is set to "madvise".

And the details from the meminfo are the following:

AnonHugePages: 3373056 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB

Thanks for the help

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.