> On March 24, 2016, 9:54 a.m., Jiang Yan Xu wrote:
> > src/slave/containerizer/mesos/isolators/disk/xfs.cpp, line 568
> > <https://reviews.apache.org/r/44948/diff/8/?file=1311210#file1311210line568>
> >
> > It seems that we don't need to modify `totalProjectIds` (which can be a
> > const) here, this change doesn't survive agent restart anyways and we use
> > `freeProjectIds` to assign IDs.
>
> James Peach wrote:
> I think it is better to handle this consistently. We use
> ``totalProjectIds`` to bound the set of possible IDs and this ID is not
> longer possible.
I am not sure about the intended consistency here because I can't think of a
case where in the following place:
```
if (totalProjectIds.contains(projectId)) {
freeProjectIds += projectId;
}
```
`projectId` could be in `totalProjectIds` (and therefore incorrectly returned)
if `totalProjectIds` was always the initial value but would not be in
`totalProjectIds` if we modify `totalProjectIds` like we currently do in the
code.
Can you think of any?
> On March 24, 2016, 9:54 a.m., Jiang Yan Xu wrote:
> > src/slave/containerizer/mesos/isolators/disk/xfs.cpp, lines 501-503
> > <https://reviews.apache.org/r/44948/diff/8/?file=1311210#file1311210line501>
> >
> > If the new resources have no disk resources, shouldn't we cleanup the
> > sandbox?
>
> James Peach wrote:
> It's not clear to me what this means. If you had a disk resource and now
> you don't are you unrestricted or do you have zero disk? I think it is better
> to only remove the project ID in cleanup, but maybe we should still adjust
> the quota here?
Dropping this for a new suggestion in the new review.
- Jiang Yan
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/44948/#review124983
-----------------------------------------------------------
On April 4, 2016, 10:28 a.m., James Peach wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/44948/
> -----------------------------------------------------------
>
> (Updated April 4, 2016, 10:28 a.m.)
>
>
> Review request for mesos, Jie Yu and Jiang Yan Xu.
>
>
> Bugs: MESOs-4828
> https://issues.apache.org/jira/browse/MESOs-4828
>
>
> Repository: mesos
>
>
> Description
> -------
>
> Track sandbox directory usage by dynamically assigning XFS project
> quotas. We track a range of XFS project IDs, assigning a project ID
> and a project quota to each sandbox as it is created. When the task
> reaches the quota, writes will fail with EDQUOT, and the task will have
> an opportunity to handle that.
>
> Quotas are not applied to volume resources since the isolator interface
> has no insight into the volume lifecycle. Thus it is not currently
> possible to accurately assign and reclaim project IDs.
>
> If LOW is the lower bound of the project ID range and HIGH is the upper
> bound, you can show the currently allocated project quotas using the
> xfs_quota command:
>
> $ xfs_quota -x -c "report -a -n -L LOW -U HIGH"
>
> To show the project ID assigned to the file PATH, use the xfs_io command:
>
> $ xfs_io -r -c stat PATH
>
>
> Diffs
> -----
>
> src/Makefile.am f22ae5b3bd9336a56c802e0e51d39d6cb675caf2
> src/slave/containerizer/mesos/containerizer.cpp
> a5dd22380066aa85de04d485052084e2629681c0
> src/slave/containerizer/mesos/isolators/xfs/disk.hpp PRE-CREATION
> src/slave/containerizer/mesos/isolators/xfs/disk.cpp PRE-CREATION
> src/slave/containerizer/mesos/isolators/xfs/utils.hpp PRE-CREATION
> src/slave/containerizer/mesos/isolators/xfs/utils.cpp PRE-CREATION
> src/slave/flags.hpp d0c606eea74e1a2e69067c43a267047e65a22a04
> src/slave/flags.cpp 0551ec334c6747507bf7bb068d27d67f3fdd6c83
>
> Diff: https://reviews.apache.org/r/44948/diff/
>
>
> Testing
> -------
>
> Make check. Manual testing. Tests in subsequent patches.
>
>
> Thanks,
>
> James Peach
>
>