----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/67914/ -----------------------------------------------------------
Review request for mesos and James Peach. Bugs: MESOS-9007 https://issues.apache.org/jira/browse/MESOS-9007 Repository: mesos Description ------- Currently upon container destruction its project ID is unallocated by the isolator and removed from the container work directory. However due to API limitations we can't unset project IDs on symlinks that may exist inside the directory. Because of that the project may still exist until the container directory is garbage collected. If the project ID is reused for a new container, any lingering symlinks that still have that project ID will contribute to disk usage of the new container. Typically symlinks don't take much space, but still this leads to inaccuracy in disk space usage accounting. This patch postpones project ID reclaiming to sandbox GC time. The isolator periodically checks if sandboxes of terminated containers still exist and deallocates their project IDs if not. This mechanism can be improved in the future if we introduce a way for the isolators to learn about disk GCs. Diffs ----- src/slave/containerizer/mesos/isolators/xfs/disk.hpp 0891f7709aa4f98758a727856d58e6177d46adca src/slave/containerizer/mesos/isolators/xfs/disk.cpp 25f52a43b34b141bdaf7c448817423cf4264e22a src/slave/flags.hpp eeb9708f9ec76d83b6719541f4a012544c7c0cbe src/slave/flags.cpp 58cdc0f1100fe244e5bf1036e1ccf39478d5d478 src/tests/containerizer/xfs_quota_tests.cpp bee0c2db7adc1dc7d774f9152931130093fe5b50 Diff: https://reviews.apache.org/r/67914/diff/1/ Testing ------- Added `ROOT_XFS_QuotaTest.ProjectIDReclaiming` test that verifies that project ID is reclaimed and reused after sandbox GC. Ran `sudo make check`. Thanks, Ilya Pronin