[ https://issues.apache.org/jira/browse/MESOS-6360?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexander Rukletsov updated MESOS-6360: --------------------------------------- Summary: The handling of whiteout files in provisioner is not correct. (was: The handling of whiteout files in provisioner is not correct) > 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)