Bjoern Metzdorf created MESOS-2128:
--------------------------------------

             Summary: Turning on cgroups_limit_swap effectively disables memory 
isolation
                 Key: MESOS-2128
                 URL: https://issues.apache.org/jira/browse/MESOS-2128
             Project: Mesos
          Issue Type: Bug
          Components: isolation
         Environment: mesos-0.20.1 on 3.8.13-26.2.2.el6uek.x86_64

            Reporter: Bjoern Metzdorf


Our test runs show that enabling cgroups_limit_swap effectively disables memory 
isolation altogether.

Per: 
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/sec-memory.html

"It is important to set the memory.limit_in_bytes parameter before setting the 
memory.memsw.limit_in_bytes parameter: attempting to do so in the reverse order 
results in an error. This is because memory.memsw.limit_in_bytes becomes 
available only after all memory limitations (previously set in 
memory.limit_in_bytes) are exhausted."

Looks like the flag sets "memory.memsw.limit_in_bytes" if true and 
"memory.limit_in_bytes" if false, but should always set "memory.limit_in_bytes" 
and in addition set "memory.memsw.limit_in_bytes" if true. Otherwise the limits 
won't be set and enforced.

See: 
https://github.com/apache/mesos/blob/c8598f7f5a24a01b6a68e0f060b79662ee97af89/src/slave/containerizer/isolators/cgroups/mem.cpp#L365




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to