You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Felipe Alfaro Solana (JIRA)" <ji...@apache.org> on 2019/06/03 07:50:00 UTC

[jira] [Commented] (MESOS-9800) libarchive cannot extract tarfile due to UTF-8 encoding issues

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

Felipe Alfaro Solana commented on MESOS-9800:
---------------------------------------------

The output of the {{locale}} command:

{{LANG=en_US.UTF-8}}
{{LANGUAGE=}}
{{LC_CTYPE="en_US.UTF-8"}}
{{LC_NUMERIC="en_US.UTF-8"}}
{{LC_TIME="en_US.UTF-8"}}
{{LC_COLLATE="en_US.UTF-8"}}
{{LC_MONETARY="en_US.UTF-8"}}
{{LC_MESSAGES="en_US.UTF-8"}}
{{LC_PAPER="en_US.UTF-8"}}
{{LC_NAME="en_US.UTF-8"}}
{{LC_ADDRESS="en_US.UTF-8"}}
{{LC_TELEPHONE="en_US.UTF-8"}}
{{LC_MEASUREMENT="en_US.UTF-8"}}
{{LC_IDENTIFICATION="en_US.UTF-8"}}
{{LC_ALL=}}

And the environment variables used by the {{mesos-slave}} process:

{{MESOS_EXECUTOR_REGISTRATION_TIMEOUT=5mins}}
{{TERM=linux}}
{{MESOS_OPTION_PREFIX=MESOS_}}
{{MESOS_PORT=5051}}
{{LC_ALL=en_US.UTF-8}}
{{LOGS=}}
{{MESOS_CONTAINERIZERS=docker,mesos}}
{{MESOS_WORK_DIR=/var/mesos}}
{{PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin}}
{{RUNLEVEL=2}}
{{PWD=/}}
{{JOB=rc}}
{{RESULT=ok}}
{{ZK=zk://10.101.0.10:2181,10.101.0.11:2181,10.101.0.12:2181/mesos}}
{{PREVLEVEL=N}}
{{MESOS_RESOURCES=ports(*):[23-9091,9093-9996,9998-30000];ports(marathon_role):[9092,9997];}}
{{MESOS_ISOLATION=cgroups/cpu,cgroups/mem}}
{{MESOS_HOSTNAME=t01m01.node.t01.dns.teralytics.net}}
{{SHLVL=0}}
{{MESOS_MASTER=zk://10.101.0.10:2181,10.101.0.11:2181,10.101.0.12:2181/mesos}}
{{UPSTART_INSTANCE=}}
{{UPSTART_EVENTS=stopped}}
{{CLUSTER=mesos_cluster}}
{{MESOS_HADOOP_HOME=/usr/local/tl/hadoop}}
{{UPSTART_JOB=mesos-slave}}
{{INSTANCE=}}
{{IP=10.101.0.10}}
{{MESOS_GC_DISK_HEADROOM=0.1}}
{{MESOS_GC_DELAY=4weeks}}
{{ULIMIT=-n 200000}}

 

> libarchive cannot extract tarfile due to UTF-8 encoding issues
> --------------------------------------------------------------
>
>                 Key: MESOS-9800
>                 URL: https://issues.apache.org/jira/browse/MESOS-9800
>             Project: Mesos
>          Issue Type: Bug
>          Components: fetcher
>    Affects Versions: 1.7.2
>         Environment: Mesos 1.7.2 and Marathon 1.4.3 running on top of Ubuntu 16.04.
>            Reporter: Felipe Alfaro Solana
>            Priority: Major
>         Attachments: certificates2.tar.gz
>
>
> Starting with Mesos 1.7, the following change has been introduced:
>  * [MESOS-8064] - Mesos now requires libarchive to programmatically decode .zip, .tar, .gzip, and other common file compression schemes. Version 3.3.2 is bundled in Mesos.
> However, this version of libarchive which is used by the fetcher component in Mesos has problems in dealing with archive files (.tar and .zip) which contain UTF-8 characters. We run Marahton on top of Mesos, and one of our Marathon application relies on a .tar file which contains symlinks whose target contains certain UTF-8 characters (Turkish) or the symlink name itself contains UTF-8 characters. Mesos fetcher is unable to extract the archive and fails with the following error:
> {{May 28 10:47:30 t01m01.node.t01.dns.teralytics.net mesos-slave[4319]: E0528 10:47:30.791250  6136 fetcher.cpp:613] EXIT with status 1: Failed to fetch '/tmp/certificates.tar.gz': Failed to extract archive '/var/mesos/slaves/10c35371-f690-4d40-8b9e-30ffd04405fb-S6/frameworks/ff2993eb-987f-47b0-b3af-fb8b49ab0470-0000/executors/test-nginx.fe01a0c0-8135-11e9-a160-02427a38aa03/runs/6a6e87e8-5eef-4e8e-8c00-3f081fa187b0/certificates.tar.gz' to '/var/mesos/slaves/10c35371-f690-4d40-8b9e-30ffd04405fb-S6/frameworks/ff2993eb-987f-47b0-b3af-fb8b49ab0470-0000/executors/test-nginx.fe01a0c0-8135-11e9-a160-02427a38aa03/runs/6a6e87e8-5eef-4e8e-8c00-3f081fa187b0': Failed to read archive header: Linkname can't be converted from UTF-8 to current locale.}}
> {{May 28 10:47:30 t01m01.node.t01.dns.teralytics.net mesos-slave[4319]:}}
> {{May 28 10:47:30 t01m01.node.t01.dns.teralytics.net mesos-slave[4319]: End fetcher log for container 6a6e87e8-5eef-4e8e-8c00-3f081fa187b0}}
> {{May 28 10:47:30 t01m01.node.t01.dns.teralytics.net mesos-slave[4319]: E0528 10:47:30.846695  4343 fetcher.cpp:571] Failed to run mesos-fetcher: Failed to fetch all URIs for container '6a6e87e8-5eef-4e8e-8c00-3f081fa187b0': exited with status 1}}
> The same Marathon application works fine with Mesos 1.6 which does not use libarchive.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)