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

Qian Zhang commented on MESOS-6360:
-----------------------------------

commit e3c12c4c3fabc64c8a3de9e514340bfb52237d69
Author: Qian Zhang <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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)

Reply via email to