Artifactory Conda 包 returns MD5mismatch 错误

Artifactory Conda packages returns MD5mismatch error

我使用的是 Artifactory Pro 版本 6.8.1。

我已经使用 conda 远程设置创建了一个 conda 虚拟存储库。

一开始没问题,但最近我遇到这个错误 运行

conda install -y <package_name>

它returns

MD5MismatchError: Conda detected a mismatch between the expected content and downloaded content

用户 conda 信息如下:

(base) C:\Users\user>conda info

     active environment : base
    active env location : C:\Users\user\AppData\Local\Continuum\miniconda3
            shell level : 1
       user config file : C:\Users\user\.condarc
 populated config files : C:\Users\user\.condarc
          conda version : 4.6.8
    conda-build version : not installed
         python version : 3.6.0.final.0
       base environment : C:\Users\user\AppData\Local\Continuum\miniconda3  (writable)
           channel URLs : https://user:token@artifactory/api/conda/conda/win-64
                          https://user:token@artifactory/api/conda/conda/noarch
          package cache : C:\Users\user\AppData\Local\Continuum\miniconda3\pkgs
                          C:\Users\user\.conda\pkgs
                          C:\Users\user\AppData\Local\conda\conda\pkgs
       envs directories : C:\Users\user\AppData\Local\Continuum\miniconda3\envs
                          C:\Users\user\.conda\envs
                          C:\Users\user\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.6.8 requests/2.21.0 CPython/3.6.0 Windows/10 Windows/10.0.14393
          administrator : False
             netrc file : None
           offline mode : False

运行 conda 安装:

Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: C:\Users\user\AppData\Local\Continuum\miniconda3

  added / updated specs:
    - python=3.6.0


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    certifi-2019.3.9           |           py36_0         149 KB  /
    conda-4.6.8                |           py36_0         892 KB  /
    ------------------------------------------------------------
                                           Total:         1.0 MB

The following packages will be SUPERSEDED by a higher-priority channel:

  ca-certificates                           api/conda/conda --> /
  certifi                                   api/conda/conda --> /
  conda                                     api/conda/conda --> /
  openssl                                   api/conda/conda --> /
  python                                    api/conda/conda --> /



Downloading and Extracting Packages
conda-4.6.8          | 892 KB    | #############################################################################################                                |  75%
certifi-2019.3.9     | 149 KB    | #############################################################################################                                |  75%

MD5MismatchError: Conda detected a mismatch between the expected content and downloaded content
for url 'https://user:token@artifactory/api/conda/conda/win-64/conda-4.6.8-py36_0.tar.bz2'.
  download saved to: C:\Users\user\AppData\Local\Continuum\miniconda3\pkgs\conda-4.6.8-py36_0.tar.bz2
  expected md5 sum: 31068a3770bb220225b7d7d766b6c0ac
  actual md5 sum: 558ed226130cc8c978f80b8061d1c831

MD5MismatchError: Conda detected a mismatch between the expected content and downloaded content
for url 'https://user:token@artifactory/api/conda/conda/win-64/certifi-2019.3.9-py36_0.tar.bz2'.
  download saved to: C:\Users\user\AppData\Local\Continuum\miniconda3\pkgs\certifi-2019.3.9-py36_0.tar.bz2
  expected md5 sum: d78307cb9c50a02f3446e7fb5e4c6cd8
  actual md5 sum: e1faa30cf88c0cd141dfe71e70a9597a

我试着运行

conda clean --all

但还是显示MD5不匹配错误。有什么建议可以修复 Artifactory 的这个 MD5 异常吗?

我设法以某种方式找到了解决方案,只是为了分享给有同样问题的人。

Artifactory 生成自己的校验和并将其与下载的校验和进行比较。

更多详情:

https://jfrog.com/knowledge-base/what-are-client-checksum-server-checksum-and-checksum-policy-in-local-repositories/

我所做的是,

1) 转到 Artifactory。查找已下载的存在校验和不匹配问题的工件。

2) 点击神器,右边会显示

Checksums
SHA-256: XXX(Uploaded: Identical)
SHA-1: XYZ (Uploaded: None)
MD5: XYY(Uploaded: None)
Client did not publish a checksum value.
If you trust the uploaded artifact you can accept the actual checksum by clicking the 
'Fix Checksum' button.

3) 查看远程仓库中下载的MD5,Artifactory正在连接 并从下载包。

4) 验证它是否相同,一旦验证通过,点击修复校验和按钮。

5) 这应该可以解决 MD5 错误问题。希望对您有所帮助。

我使用 Artifactory 版本 6.16.0

对我来说,只有当我在远程 Conda 频道中删除 Artifactory 中的缓存文件时,它才有效

作为授权用户,我进入了神器主页的快速搜索,我输入了

   conda-4.6.8-py36_0.tar.bz2  
   pytz-2019.3-py_0.tar.bz2 (I also had problems with pytz ) 

我从缓存中删除了每一个(我也遇到了其他包的问题,​​比如 google-pasta 和 wheel)