Our cluster is running with 0 Swap set and mlockall on, but we ran into a lot OOM-killed situation that system killed elasticsearch processes due to OOM.
So we are thinking and testing the swappiness option
After few days test, seem like Java process that run elasticsearch still been swapped when node is overloaded. Why mlockall did prevent that happen?
Also, OOM-kill only start happening recently after we upgrade our cluster to 5.4.x. Is there anything that new introduced in 5.x version?