You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Qian Zhang (JIRA)" <ji...@apache.org> on 2016/11/07 23:40:59 UTC

[jira] [Comment Edited] (MESOS-6360) The handling of whiteout files in provisioner is not correct.

    [ https://issues.apache.org/jira/browse/MESOS-6360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15639019#comment-15639019 ] 

Qian Zhang edited comment on MESOS-6360 at 11/7/16 11:40 PM:
-------------------------------------------------------------

commit e3c12c4c3fabc64c8a3de9e514340bfb52237d69
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Wed Oct 19 16:19:59 2016 +0800

    Added `setxattr()` and `getxattr()` in stout.
    
    Review: https://reviews.apache.org/r/53041

commit 50f6c117e3874efbefe605b51cd3d3efb2cf64ba
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Wed Oct 19 21:39:02 2016 +0800

    Added `FsTest.Xattr` test.
    
    Review: https://reviews.apache.org/r/53042

commit ac62ee27f3f2d226732da439a74ed33aed7c071f
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Thu Oct 20 17:34:43 2016 +0800

    Divided utils.hpp to utils.hpp and utils.cpp.
    
    Review: https://reviews.apache.org/r/53053

commit 3800cfd0d2d65e649b21d079e1c1a4ce743558dd
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Tue Oct 25 11:20:26 2016 +0800

    Implemented the conversion from AUFS whiteouts to OverlayFS whiteouts.
    
    Review: https://reviews.apache.org/r/53161

commit 0f4c15ad735e437a8e8b9bb6846025aea02c765b
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Sat Oct 22 21:45:44 2016 +0800

    Implemented handling AUFS whiteouts for copy backend.
    
    Review: https://reviews.apache.org/r/53115

commit 3b6af1d8d336edeefb14f5a86e028c3b099371f5
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Sun Oct 23 09:03:14 2016 +0800

    Removed `ProvisionerProcess::__provision()`.
    
    Review: https://reviews.apache.org/r/53116

commit 9cea997c811b869d54b5c892710efbf074b08e3a
Author: Qian Zhang <zh...@gmail.com>
Date:   Mon Oct 24 16:23:12 2016 +0800

    Added the test `ProvisionerDockerWhiteoutTest`.
    
    Review: https://reviews.apache.org/r/53127


was (Author: qianzhang):
commit e3c12c4c3fabc64c8a3de9e514340bfb52237d69
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Wed Oct 19 16:19:59 2016 +0800

    Added `setxattr()` and `getxattr()` in stout.
    
    Review: https://reviews.apache.org/r/53041

commit 50f6c117e3874efbefe605b51cd3d3efb2cf64ba
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Wed Oct 19 21:39:02 2016 +0800

    Added `FsTest.Xattr` test.
    
    Review: https://reviews.apache.org/r/53042

commit ac62ee27f3f2d226732da439a74ed33aed7c071f
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Thu Oct 20 17:34:43 2016 +0800

    Divided utils.hpp to utils.hpp and utils.cpp.
    
    Review: https://reviews.apache.org/r/53053

commit 3800cfd0d2d65e649b21d079e1c1a4ce743558dd
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Tue Oct 25 11:20:26 2016 +0800

    Implemented the conversion from AUFS whiteouts to OverlayFS whiteouts.
    
    Review: https://reviews.apache.org/r/53161

commit 0f4c15ad735e437a8e8b9bb6846025aea02c765b
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Sat Oct 22 21:45:44 2016 +0800

    Implemented handling AUFS whiteouts for copy backend.
    
    Review: https://reviews.apache.org/r/53115

commit 3b6af1d8d336edeefb14f5a86e028c3b099371f5
Author: Qian Zhang <zh...@cn.ibm.com>
Date:   Sun Oct 23 09:03:14 2016 +0800

    Removed `ProvisionerProcess::__provision()`.
    
    Review: https://reviews.apache.org/r/53116

> The handling of whiteout files in provisioner is not correct.
> -------------------------------------------------------------
>
>                 Key: MESOS-6360
>                 URL: https://issues.apache.org/jira/browse/MESOS-6360
>             Project: Mesos
>          Issue Type: Bug
>            Reporter: Qian Zhang
>            Assignee: Qian Zhang
>            Priority: Blocker
>
> Currently when user launches a container from a Docker image via universal containerizer, we always handle the whiteout files in {{ProvisionerProcess::__provision()}} regardless of which backend is used.
> However this is actually not correct, because the way to handle whiteout files is backend dependent, that means for different backends, we need to handle whiteout files in different ways, e.g.:
> * AUFS backend: It seems the AUFS whiteout ({{.wh.<filename/dirname>}} and {{.wh..wh..opq}}) is the whiteout standard in Docker (see [this comment | https://github.com/docker/docker/blob/v1.12.1/pkg/archive/archive.go#L259:L262] for details), so that means after the Docker image is pulled, its whiteout files in the store are already in aufs format, then we do not need to do anything about whiteout file handling because the aufs mount done in {{AufsBackendProcess::provision()}} will handle it automatically.
> * Overlay backend: Overlayfs has its own whiteout files (see [this doc | https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt] for details), so we need to convert the aufs whiteout files to overlayfs whiteout files before we do the overlay mount in {{OverlayBackendProcess::provision}} which will automatically handle the overlayfs whiteout files.
> * Copy backend: We need to manually handle the aufs whiteout files when we copy each layer in {{CopyBackendProcess::_provision()}}.



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