Closed RayVR closed 10 years ago
Which packages?
this is independent of a particular package
Can you paste a more detailed example output (or take a screenshot)?
I will take a screenshot the next time it happens.
Conda 3.0 was just released. Can you see if it fixes the issue. conda update conda
.
I also pushed a commit that makes this message more verbose. That won't make it until the next release.
This issue continues. I'm on conda 3.0.3 and still seeing this nearly every time I use conda to update/install.
I am trying to update Anaconda and I've hit this issue 20 times already and I'm not yet finished with the updates. I can't detect any pattern in the md5 failure. Sometimes it happens on the first package fetch, sometimes I get through 7 or 8.
It has to be a bad internet connection.
I also have this problem using conda 3.9.1. The problem is repeatable on two different computers, one running Ubuntu 14.04 and the other running Windows 7. Both these computers are using the same http proxy.
Here are my observations:
You can downgrade requests with conda install requests=2.5.2
to check.
I just had the md5 mismatch issue (conda 3.9.1) it affected both the new package i tried to install and all updates and didnt work on repeated attempts.
At the time i was tethering to my mobile with good signal, after using a VPN on the same connection the issue stopped so I suspect in my case the carrier was manipulating my traffic.
Are you also having the .part files in your anaconda/pkgs? To me it is weird that it prematurely stops downloading and proceeds to check the md5. There is no problem downloading the same file with wget. Also I can report that downgrading requests did not solve the issue.
This is the code that downloads the files. The only way the download can stop (other than an error, which would exit the code before the md5 check happened) is if requests stops giving data.
Yeah i get the .part files.
I disabled my vpn and removed certifi
(and deleted the related files in anaconda/pkgs) tried to reinstall it
The following NEW packages will be INSTALLED:
certifi: 14.05.14-py27_0
Proceed ([y]/n)? y
Fetching packages ...
certifi-14.05. 100% |################################| Time: 0:00:00 2.54 MB/s
certifi-14.05. 100% |################################| Time: 0:00:00 2.65 MB/s
Error: MD5 sums mismatch for download: http://repo.continuum.io/pkgs/free/osx-64/certifi-
14.05.14-py27_0.tar.bz2 (b9c238b22b7db9d7f4c9eaa29a438437 != 5f09f093af9c4ac949e1e86900b32871)
Looking in anaconda/pkgs i have _certifi-14.05.14-py270.tar.bz2.part which for all intents and purposes seems identical to the _certifi-14.05.14-py270.tar.bz2 you get when it installs correctly, though i checked and the md5 hashes are different.
As a quick comparison i unpacked both files committed one in a git repo then overwrote it with the other and there were no changes.
It does seem i get the full file, that is somehow different and it remains as a .part
If you are interested here is the file when it works https://www.dropbox.com/s/0hmdp5f8asweo5z/certifi-14.05.14-py27_0.tar.bz2?dl=0
and the .part when it doesnt https://www.dropbox.com/s/lqi1k3mimjadhar/certifi-14.05.14-py27_0.tar.bz2.part?dl=0
edit: interestingly i get 4db031a91890f241c979eca4af033b55 for the .part md5 and 5f09f093af9c4ac949e1e86900b32871 for the normal. Note that 4db031a91890f241c979eca4af033b55 != b9c238b22b7db9d7f4c9eaa29a438437 which is printed as a .part md5 in the error.
I just installed certifi on my MacBook, and found no issues. I get the following MD5 sum from the downloaded package: $ md5 ~/python/pkgs/certifi-14.05.14-py27_0.tar.bz2 MD5 (/Users/ilan/python/pkgs/certifi-14.05.14-py27_0.tar.bz2) = 5f09f093af9c4ac949e1e86900b32871
Which equal to the MD5 sum listed here: http://repo.continuum.io/pkgs/free/osx-64/index.html
On Tue, Mar 10, 2015 at 6:45 PM, Ryan Varley notifications@github.com wrote:
Yeah get the .part files.
I disabled my vpn and removed certifi (and deleted the related files in anaconda/pkgs) tried to reinstall it
The following NEW packages will be INSTALLED:
certifi: 14.05.14-py27_0
Proceed ([y]/n)? y
Fetching packages ... certifi-14.05. 100% |################################| Time: 0:00:00 2.54 MB/s certifi-14.05. 100% |################################| Time: 0:00:00 2.65 MB/s Error: MD5 sums mismatch for download: http://repo.continuum.io/pkgs/free/osx-64/certifi- 14.05.14-py27_0.tar.bz2 (b9c238b22b7db9d7f4c9eaa29a438437 != 5f09f093af9c4ac949e1e86900b32871)
Looking in anaconda/pkgs i have _certifi-14.05.14-py270.tar.bz2.part which for all intents and purposes seems identical to the _certifi-14.05.14-py270.tar.bz2 you get when it installs correctly, though i checked and the md5 hashes are different.
As a quick comparison i unpacked both files through one in a git repo, overwrote it with the other and there were no changes.
It does seem i get the full file, that is somehow different, but it remains as a .part
If you are interested here is the file when it works https://www.dropbox.com/s/0hmdp5f8asweo5z/certifi-14.05.14-py27_0.tar.bz2?dl=0
and the .part when it doesnt https://www.dropbox.com/s/lqi1k3mimjadhar/certifi-14.05.14-py27_0.tar.bz2.part?dl=0
— Reply to this email directly or view it on GitHub https://github.com/ContinuumIO/anaconda-issues/issues/71#issuecomment-78173185 .
BTW: this was done using: conda 3.9.1 py27_0 requests 2.5.3 py27_0
On Tue, Mar 10, 2015 at 11:33 PM, Ilan Schnell ilan@continuum.io wrote:
I just installed certifi on my MacBook, and found no issues. I get the following MD5 sum from the downloaded package: $ md5 ~/python/pkgs/certifi-14.05.14-py27_0.tar.bz2 MD5 (/Users/ilan/python/pkgs/certifi-14.05.14-py27_0.tar.bz2) = 5f09f093af9c4ac949e1e86900b32871
Which equal to the MD5 sum listed here: http://repo.continuum.io/pkgs/free/osx-64/index.html
- Ilan
On Tue, Mar 10, 2015 at 6:45 PM, Ryan Varley notifications@github.com wrote:
Yeah get the .part files.
I disabled my vpn and removed certifi (and deleted the related files in anaconda/pkgs) tried to reinstall it
The following NEW packages will be INSTALLED:
certifi: 14.05.14-py27_0
Proceed ([y]/n)? y
Fetching packages ... certifi-14.05. 100% |################################| Time: 0:00:00 2.54 MB/s certifi-14.05. 100% |################################| Time: 0:00:00 2.65 MB/s Error: MD5 sums mismatch for download: http://repo.continuum.io/pkgs/free/osx-64/certifi- 14.05.14-py27_0.tar.bz2 (b9c238b22b7db9d7f4c9eaa29a438437 != 5f09f093af9c4ac949e1e86900b32871)
Looking in anaconda/pkgs i have _certifi-14.05.14-py270.tar.bz2.part which for all intents and purposes seems identical to the _certifi-14.05.14-py270.tar.bz2 you get when it installs correctly, though i checked and the md5 hashes are different.
As a quick comparison i unpacked both files through one in a git repo, overwrote it with the other and there were no changes.
It does seem i get the full file, that is somehow different, but it remains as a .part
If you are interested here is the file when it works https://www.dropbox.com/s/0hmdp5f8asweo5z/certifi-14.05.14-py27_0.tar.bz2?dl=0
and the .part when it doesnt https://www.dropbox.com/s/lqi1k3mimjadhar/certifi-14.05.14-py27_0.tar.bz2.part?dl=0
— Reply to this email directly or view it on GitHub https://github.com/ContinuumIO/anaconda-issues/issues/71#issuecomment-78173185 .
On Tue, Mar 10, 2015 at 6:45 PM, Ryan Varley notifications@github.com wrote:
Yeah get the .part files.
I disabled my vpn and removed certifi (and deleted the related files in anaconda/pkgs) tried to reinstall it
The following NEW packages will be INSTALLED:
certifi: 14.05.14-py27_0
Proceed ([y]/n)? y
Fetching packages ... certifi-14.05. 100% |################################| Time: 0:00:00 2.54 MB/s certifi-14.05. 100% |################################| Time: 0:00:00 2.65 MB/s Error: MD5 sums mismatch for download: http://repo.continuum.io/pkgs/free/osx-64/certifi- 14.05.14-py27_0.tar.bz2 (b9c238b22b7db9d7f4c9eaa29a438437 != 5f09f093af9c4ac949e1e86900b32871)
Looking in anaconda/pkgs i have _certifi-14.05.14-py270.tar.bz2.part which for all intents and purposes seems identical to the _certifi-14.05.14-py270.tar.bz2 you get when it installs correctly, though i checked and the md5 hashes are different.
As a quick comparison i unpacked both files through one in a git repo, overwrote it with the other and there were no changes.
It does seem i get the full file, that is somehow different, but it remains as a .part
If you are interested here is the file when it works https://www.dropbox.com/s/0hmdp5f8asweo5z/certifi-14.05.14-py27_0.tar.bz2?dl=0
and the .part when it doesnt https://www.dropbox.com/s/lqi1k3mimjadhar/certifi-14.05.14-py27_0.tar.bz2.part?dl=0
It looks like the file sizes are different
-rw-r-----@ 1 aaronmeurer staff 157876 Mar 11 11:09 /Users/aaronmeurer/Downloads/certifi-14.05.14-py27_0.tar.bz2 -rw-r-----@ 1 aaronmeurer staff 158666 Mar 11 11:09 /Users/aaronmeurer/Downloads/certifi-14.05.14-py27_0.tar.bz2.part
I tried running some tar commands on the part archive but they all failed with errors like
tar: This does not look like a tar archive tar: Skipping to next header tar: Exiting with failure status due to previous errors
Aaron Meurer
— Reply to this email directly or view it on GitHub https://github.com/ContinuumIO/anaconda-issues/issues/71#issuecomment-78173185 .
Reversing conda/conda@63e97d3fd9bf14e87c7acfdc9a51a4fa518889ed fixes the problem for me.
@davidosterberg thanks for the fix, seems to help here too.
Maybe this should be a new issue, but #71 seems to be the only reference I can find to trouble with ".part" files in /pkgs.
When I try to do "conda update anaconda" (or install additional packages like, "conda install netcdf4") I get the following error:
Fetching packages ... Error: Could not open u'$HOMEDIR/anaconda/pkgs/libdynd-0.6.5-0.tar.bz2.part' for writing (seek).
(above, the actual path to my home directory I've replace with $HOMEDIR)
I'm on Ubuntu 14.04. I originally used the latest installer (Anaconda-2.2.0-Linux-x86_64.sh) and then reverted to Anaconda-1.9.2-Linux-x86_64.sh to work around this. But if I update conda like "conda update conda" and then do "conda update anaconda" I'm back to this issue. Or if I install another package which at the same time upgrades conda then I'm toast again.
@davidosterberg, your reference to here conda/conda@63e97d3 seems pertinent. Not sure how/if I can help besides chirping about this.
I think you have a different issue. Could it be so simple that you don't have write permissions to either the pkgs directory or the specific file libdynd-0.6.5-0.tar.bz2.part? I recommend that you try to create a file in this directory using a file manager. Also manually remove any existing .part files. Good luck.
Thanks for the quick reply. Checked the permissions. And also created a file there. Also tried removing the .part files. *pkgs does get populated, so I don't think that's the issue. I don't think my disk is full either. So, by "different issue," do you mean that I should post this as a separate issue?
@davidosterberg tell()
in n = resp.raw.tell()
throws an io.UnsupportedOperation: seek which I found by loosening up the last except (which I've commented out). This stackoverflow thread seems to point in the right direction for a real fix. For now, doing the below in fetch.py seems to have solved the issue for me.
Anyone who want to carry the torch further please let me know.
if md5:
h = hashlib.new('md5')
# getLogger('md5: ').info(h.hexdigest())
# # getLogger('%s, %s, session=%s, md5=%s, urlstxt=%s, retries=%s').info(url, dst_path, session, md5,urlstxt, retries)
# getLogger('%s, %s, session=%s, md5=%s, urlstxt=%s, retries=%s').info((url, dst_path, session, md5,urlstxt, retries))
try:
with open(pp, 'wb') as fo:
more = True
while more:
# Use resp.raw so that requests doesn't decode gz files
chunk = resp.raw.read(2**14)
if not chunk:
more = False
try:
fo.write(chunk)
except IOError:
raise RuntimeError("Failed to write to %r." % pp)
if md5:
h.update(chunk)
getLogger('fetch.type_resp').info(type(resp.raw))
getLogger('fetch.type_resp').info(resp.__dict__.keys())
getLogger('fetch.size').info(size)
# update n with actual bytes read
# n = resp.raw.tell()
# getLogger('fetch.before_size').info("yes")
#
# if size and 0 <= n <= size:
# getLogger('fetch.update').info(n)
# getLogger('fetch.before_size').info("after")
except:
raise
# except IOError as e:
# if e.errno == 104 and retries: # Connection reset by pee
# # try again
# log.debug("%s, trying again" % e)
# return download(url, dst_path, session=session, md5=md5,
# urlstxt=urlstxt, retries=retries - 1)
# raise RuntimeError("Could not open %r for writing (%s)." % (pp, e))```
For reference, this is talking about this block of code:
https://github.com/conda/conda/blob/master/conda/fetch.py#L347-L371
If the outer try/except is where the change happens, then this has just removed the exception handling in effect. If this is a way to better handle these situations (removing n = resp.raw.tell()
) then the outer try/except should just be removed entirely.
The outer except is supposed to be there for retrying (on connections that get interrupted). It is not related to the resp.raw.tell() call.
@mrstu what version of requests do you have installed (conda info
will tell you).
Also, do you use a proxy?
@asmeurer, here's the request info (after I hacked the conda update into working). I don't (knowingly) use a proxy.
Current conda install:
platform : linux-64
conda version : 3.12.0
conda-build version : not installed python version : 2.7.9.final.0 requests version : 2.2.1 root environment : /home/matt/anaconda (writable) default environment : /home/matt/anaconda envs directories : /home/matt/anaconda/envs package cache : /home/matt/anaconda/pkgs channel URLs : https://repo.continuum.io/pkgs/free/linux-64/ https://repo.continuum.io/pkgs/free/noarch/ https://repo.continuum.io/pkgs/pro/linux-64/ https://repo.continuum.io/pkgs/pro/noarch/ config file : /home/matt/.condarc is foreign system : False
@mrstu the issue is likely your old version of requests (the latest is 2.7.0). Try conda update requests
. If that doesn't update the version in conda info
, show me your conda info -a
.
@asmeurer, looks like it didn't update.
Current conda install:
platform : linux-64
conda version : 3.12.0
conda-build version : not installed
python version : 2.7.9.final.0
requests version : 2.2.1
root environment : /home/matt/anaconda (writable)
default environment : /home/matt/anaconda
envs directories : /home/matt/anaconda/envs
package cache : /home/matt/anaconda/pkgs
channel URLs : https://repo.continuum.io/pkgs/free/linux-64/
https://repo.continuum.io/pkgs/free/noarch/
https://repo.continuum.io/pkgs/pro/linux-64/
https://repo.continuum.io/pkgs/pro/noarch/
config file : /home/matt/.condarc
is foreign system : False
# conda environments:
#
env1 /home/matt/anaconda/envs/env1
root * /home/matt/anaconda
sys.version: 2.7.9 |Continuum Analytics, Inc.| (defau...
sys.prefix: /home/matt/anaconda
sys.executable: /home/matt/anaconda/bin/python
conda location: /home/matt/anaconda/lib/python2.7/site-packages/conda
conda-build: None
conda-env: /home/matt/anaconda/bin/conda-env
user site dirs: ~/.local/lib/python2.7
CIO_TEST: <not set>
CONDA_DEFAULT_ENV: <not set>
CONDA_ENVS_PATH: <not set>
LD_LIBRARY_PATH: <not set>
PATH: /home/matt/anaconda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
PYTHONHOME: <not set>
PYTHONPATH: <not set>
WARNING: could not import _license.show_info
# try:
# $ conda install -n root _license
You probably have an old version installed in ~/.local/lib/python2.7. I recommend removing that directory.
I just moved ~/.local/lib/python2.7 to remove it. Then,
:~$ conda update requests
Fetching package metadata: ....
# All requested packages already installed.
# packages in environment at /home/matt/anaconda:
#
requests 2.7.0 py27_0
and request actually seems to have updated, from conda info -a
requests version : 2.7.0
Great. Does this fix the issues you were having with the conda.fetch module?
It seems to be fixed.
`installing: requests-2.6.0-py27_0 ...
conda update requests
requests version : 2.7.0
Then I just installed netcdf4
which was what I originally set out to do and it seems to have worked as expected.
Thanks @asmeurer and @ijstokes !
I’d argue the Could not open ... for writing (seek)
problem (with updating requests
as the solution) should be broken out into its own Issue. It’s quite a lot of reading to find this information, and the unrelated title and Closed status throw you off.
Hello,
I also had a similar problem, but mine isn't with requests
but with the mpmath
package
➜ ~ conda update --all
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ....
Solving package specifications: ..........
Package plan for installation in environment /Users/diego/anaconda:
The following packages will be downloaded:
package | build
---------------------------|-----------------
mpmath-0.19 | py35_0 898 KB
setuptools-20.2.2 | py35_0 458 KB
pip-8.1.0 | py35_0 1.6 MB
sympy-1.0 | py35_0 5.9 MB
xlwings-0.7.0 | py35_0 383 KB
anaconda-client-1.3.1 | py35_0 100 KB
conda-build-1.19.1 | py35_0 216 KB
jupyter_core-4.1.0 | py35_0 51 KB
jupyter_client-4.2.1 | py35_0 98 KB
scikit-image-0.12.3 | np110py35_0 17.8 MB
jupyter_console-4.1.1 | py35_0 25 KB
------------------------------------------------------------
Total: 27.5 MB
The following NEW packages will be INSTALLED:
mpmath: 0.19-py35_0
The following packages will be UPDATED:
anaconda-client: 1.2.2-py35_0 --> 1.3.1-py35_0
conda-build: 1.19.0-py35_0 --> 1.19.1-py35_0
jupyter_client: 4.1.1-py35_0 --> 4.2.1-py35_0
jupyter_console: 4.1.0-py35_0 --> 4.1.1-py35_0
jupyter_core: 4.0.6-py35_0 --> 4.1.0-py35_0
openssl: 1.0.2d-0 --> 1.0.2g-0
path.py: 7.6.1-py35_0 --> 8.1.2-py35_1
pip: 8.0.3-py35_0 --> 8.1.0-py35_0
scikit-image: 0.11.3-np110py35_0 --> 0.12.3-np110py35_0
setuptools: 20.1.1-py35_0 --> 20.2.2-py35_0
sympy: 0.7.6.1-py35_0 --> 1.0-py35_0
xlwings: 0.6.4-py35_0 --> 0.7.0-py35_0
Proceed ([y]/n)? y
Fetching packages ...
mpmath-0.19-py 100% |################################| Time: 0:00:00 1.32 GB/s
mpmath-0.19-py 100% |################################| Time: 0:00:00 1.86 GB/s
mpmath-0.19-py 100% |################################| Time: 0:00:00 1.57 GB/s
mpmath-0.19-py 100% |################################| Time: 0:00:00 1.48 GB/s
Error: MD5 sums mismatch for download: https://repo.continuum.io/pkgs/free/osx-64/mpmath-0.19-py35_0.tar.bz2 (d41d8cd98f00b204e9800998ecf8427e != 99f62b5688ac6a6cb5a9bb0c9efc641e)
➜ ~ conda install mpmath
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ....
Solving package specifications: ..........
Package plan for installation in environment /Users/diego/anaconda:
The following packages will be downloaded:
package | build
---------------------------|-----------------
mpmath-0.19 | py35_0 898 KB
The following NEW packages will be INSTALLED:
mpmath: 0.19-py35_0
Proceed ([y]/n)? y
Fetching packages ...
mpmath-0.19-py 100% |################################| Time: 0:00:00 979.73 MB/s
mpmath-0.19-py 100% |################################| Time: 0:00:00 1.08 GB/s
mpmath-0.19-py 100% |################################| Time: 0:00:00 855.77 MB/s
mpmath-0.19-py 100% |################################| Time: 0:00:00 2.00 GB/s
Error: MD5 sums mismatch for download: https://repo.continuum.io/pkgs/free/osx-64/mpmath-0.19-py35_0.tar.bz2 (d41d8cd98f00b204e9800998ecf8427e != 99f62b5688ac6a6cb5a9bb0c9efc641e)
➜ ~ conda info -a
Using Anaconda Cloud api site https://api.anaconda.org
Current conda install:
platform : osx-64
conda version : 4.0.3
conda-build version : 1.19.0
python version : 3.5.1.final.0
requests version : 2.9.1
root environment : /Users/diego/anaconda (writable)
default environment : /Users/diego/anaconda
envs directories : /Users/diego/anaconda/envs
package cache : /Users/diego/anaconda/pkgs
channel URLs : https://repo.continuum.io/pkgs/free/osx-64/
https://repo.continuum.io/pkgs/free/noarch/
https://repo.continuum.io/pkgs/pro/osx-64/
https://repo.continuum.io/pkgs/pro/noarch/
config file : /Users/diego/.condarc
is foreign system : False
# conda environments:
#
python2 /Users/diego/anaconda/envs/python2
root * /Users/diego/anaconda
sys.version: 3.5.1 |Anaconda 2.5.0 (x86_64)| (default...
sys.prefix: /Users/diego/anaconda
sys.executable: /Users/diego/anaconda/bin/python3
conda location: /Users/diego/anaconda/lib/python3.5/site-packages/conda
conda-build: /Users/diego/anaconda/bin/conda-build
conda-convert: /Users/diego/anaconda/bin/conda-convert
conda-develop: /Users/diego/anaconda/bin/conda-develop
conda-env: /Users/diego/anaconda/bin/conda-env
conda-index: /Users/diego/anaconda/bin/conda-index
conda-inspect: /Users/diego/anaconda/bin/conda-inspect
conda-metapackage: /Users/diego/anaconda/bin/conda-metapackage
conda-pipbuild: /Users/diego/anaconda/bin/conda-pipbuild
conda-server: /Users/diego/anaconda/bin/conda-server
conda-sign: /Users/diego/anaconda/bin/conda-sign
conda-skeleton: /Users/diego/anaconda/bin/conda-skeleton
user site dirs:
CIO_TEST: <not set>
CONDA_DEFAULT_ENV: <not set>
CONDA_ENVS_PATH: <not set>
DYLD_LIBRARY_PATH: <not set>
PATH: /Users/diego/bin:/Users/diego/anaconda/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/texbin:/Library/TeX/texbin:/usr/local/opt/fzf/bin
PYTHONHOME: <not set>
PYTHONPATH: <not set>
License directories:
/Users/diego/.continuum
/Users/diego/Library/Application Support/Anaconda
/Users/diego/anaconda/licenses
License files (license*.txt):
/Users/diego/.continuum/license_academic_20150420165736.txt
Reading license file : 1
Signature valid : 1
Vendor match : 1
product : 'Academic'
packages : 'numbapro mkl iopro'
end_date : '2016-04-19'
type : None
Package/feature end dates:
iopro : 2016-04-19
numbapro : 2016-04-19
mkl : 2016-04-19
For me it was on libgfortran
Fetching package metadata: ....
Solving package specifications: ..........
Package plan for installation in environment /opt/conda:
The following packages will be downloaded:
package | build
---------------------------|-----------------
libgfortran-3.0 | 0 261 KB
libpng-1.6.17 | 0 214 KB
mkl-11.3.1 | 0 121.2 MB
freetype-2.5.5 | 0 2.2 MB
libxml2-2.9.2 | 0 4.2 MB
fontconfig-2.11.1 | 5 402 KB
numpy-1.10.4 | py35_1 5.9 MB
pyparsing-2.0.3 | py35_0 66 KB
pytz-2015.7 | py35_0 173 KB
sip-4.16.9 | py35_0 222 KB
six-1.10.0 | py35_0 17 KB
cycler-0.10.0 | py35_0 11 KB
python-dateutil-2.4.2 | py35_0 220 KB
qt-4.8.7 | 1 36.4 MB
scipy-0.17.0 | np110py35_2 29.5 MB
pandas-0.17.1 | np110py35_0 13.3 MB
pyqt-4.11.4 | py35_1 3.5 MB
scikit-learn-0.17.1 | np110py35_0 8.7 MB
matplotlib-1.5.1 | np110py35_0 8.4 MB
seaborn-0.7.0 | py35_0 274 KB
ipywidgets-4.1.1 | py35_0 99 KB
------------------------------------------------------------
Total: 235.1 MB
The following NEW packages will be INSTALLED:
cycler: 0.10.0-py35_0
fontconfig: 2.11.1-5
freetype: 2.5.5-0
ipywidgets: 4.1.1-py35_0
libgfortran: 3.0-0
libpng: 1.6.17-0
libxml2: 2.9.2-0
matplotlib: 1.5.1-np110py35_0
mkl: 11.3.1-0
numpy: 1.10.4-py35_1
pandas: 0.17.1-np110py35_0
pyparsing: 2.0.3-py35_0
pyqt: 4.11.4-py35_1
python-dateutil: 2.4.2-py35_0
pytz: 2015.7-py35_0
qt: 4.8.7-1
scikit-learn: 0.17.1-np110py35_0
scipy: 0.17.0-np110py35_2
seaborn: 0.7.0-py35_0
sip: 4.16.9-py35_0
six: 1.10.0-py35_0
Error: MD5 sums mismatch for download: https://repo.continuum.io/pkgs/free/linux-64/libgfortran-3.0-0.tar.bz2 (d41d8cd98f00b204e9800998ecf8427e != 0d1664f9e5992bbd447a9c4d8bc43c64)
Same here when trying to create a new environment.
19:17 $ conda create -n test python
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ......
Solving package specifications: ..........
Package plan for installation in environment /home/gbra/anaconda/envs/test:
The following packages will be downloaded:
package | build
---------------------------|-----------------
setuptools-20.2.2 | py27_0 453 KB
The following NEW packages will be INSTALLED:
openssl: 1.0.2g-0
pip: 8.1.0-py27_0
python: 2.7.11-0
readline: 6.2-2
setuptools: 20.2.2-py27_0
sqlite: 3.9.2-0
tk: 8.5.18-0
wheel: 0.29.0-py27_0
zlib: 1.2.8-0
Proceed ([y]/n)?
Fetching packages ...
setuptools-20. 100% |##################################################################################################| Time: 0:00:00 373.94 MB/s
setuptools-20. 100% |##################################################################################################| Time: 0:00:00 486.58 MB/s
setuptools-20. 100% |##################################################################################################| Time: 0:00:00 531.23 MB/s
setuptools-20. 100% |##################################################################################################| Time: 0:00:00 572.52 MB/s
Error: MD5 sums mismatch for download: https://repo.continuum.io/pkgs/free/linux-64/setuptools-20.2.2-py27_0.tar.bz2 (d41d8cd98f00b204e9800998ecf8427e != 298a72ee2ca5346141c5fd87367a20ab)
And this is my conda info
.
19:18 $ conda info
Using Anaconda Cloud api site https://api.anaconda.org
Current conda install:
platform : linux-64
conda version : 4.0.3
conda-build version : 1.3.5
python version : 2.7.11.final.0
requests version : 2.9.1
root environment : /home/gbra/anaconda (writable)
default environment : /home/gbra/anaconda
envs directories : /home/gbra/anaconda/envs
package cache : /home/gbra/anaconda/pkgs
channel URLs : https://repo.continuum.io/pkgs/free/linux-64/
https://repo.continuum.io/pkgs/free/noarch/
https://repo.continuum.io/pkgs/pro/linux-64/
https://repo.continuum.io/pkgs/pro/noarch/
http://conda.binstar.org/gabraganca/linux-64/
http://conda.binstar.org/gabraganca/noarch/
config file : /home/gbra/.condarc
is foreign system : False
Like @apsey I'm getting this error with libgfortran, but it's happening on travis with an environment that should be fairly canonical.
Now, I tried to update conda
and get it with conda
itself!
➜ ~ conda update conda
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ....
.Solving package specifications: ..........
Package plan for installation in environment /Users/diego/anaconda:
The following packages will be downloaded:
package | build
---------------------------|-----------------
conda-4.0.4 | py35_0 188 KB
The following packages will be UPDATED:
conda: 4.0.3-py35_0 --> 4.0.4-py35_0
Proceed ([y]/n)? y
Fetching packages ...
conda-4.0.4-py 100% |################################| Time: 0:00:00 227.09 MB/s
conda-4.0.4-py 100% |################################| Time: 0:00:00 230.85 MB/s
conda-4.0.4-py 100% |################################| Time: 0:00:00 209.12 MB/s
conda-4.0.4-py 100% |################################| Time: 0:00:00 362.30 MB/s
Error: MD5 sums mismatch for download: https://repo.continuum.io/pkgs/free/osx-64/conda-4.0.4-py35_0.tar.bz2 (d41d8cd98f00b204e9800998ecf8427e != f4763f3ffa7789fee3b8b6287a175771)
Same here with the libfortran package on Travis. Should we open a new Issue, or reopen this one?
Seems fixed, builds run fine when restarted.
Subscribing. Same here with Appveyor, when trying to install pyqt. Seems related to jpeg module.
[00:00:00] Build started
[00:00:01] ECHO %PYTHON_ARCH%
[00:00:01] 32
[00:00:01] ECHO %PYTHON_VERSION%
[00:00:01] ECHO is off.
[00:00:01] ECHO %MINICONDA%
[00:00:01] C:\Miniconda3
[00:00:01] ECHO %APPVEYOR_BUILD_FOLDER%
[00:00:01] C:\projects\pytelemetrycli
[00:00:01] ECHO %PYTHONPATH%
[00:00:01] ECHO is off.
[00:00:01] git clone -q --branch=transport-monitoring https://github.com/Overdrivr/pytelemetrycli.git C:\projects\pytelemetrycli
[00:00:02] git checkout -qf 28eec447bc86162ec98bdc660826a0ddcbf5e31b
[00:00:03] Running Install scripts
[00:00:03] %MINICONDA%\Scripts\conda install numpy -y -q
[00:00:04] Fetching package metadata:
[00:00:05] .
[00:00:05] .
[00:00:05] .
[00:00:06] .
[00:00:06]
[00:00:06] Solving package specifications:
[00:00:06] .
[00:00:30]
[00:00:30] Package plan for installation in environment C:\Miniconda3:
[00:00:30]
[00:00:30] The following packages will be downloaded:
[00:00:30]
[00:00:30] package | build
[00:00:30] ---------------------------|-----------------
[00:00:30] mkl-11.3.1 | 0 73.9 MB
[00:00:30] msvc_runtime-1.0.1 | vc10_0 1.1 MB
[00:00:30] conda-env-2.4.5 | py34_0 62 KB
[00:00:30] menuinst-1.3.2 | py34_0 93 KB
[00:00:30] numpy-1.10.4 | py34_0 2.4 MB
[00:00:30] pyyaml-3.11 | py34_3 113 KB
[00:00:30] requests-2.9.1 | py34_0 650 KB
[00:00:30] setuptools-20.2.2 | py34_0 763 KB
[00:00:30] wheel-0.29.0 | py34_0 120 KB
[00:00:30] conda-4.0.3 | py34_0 229 KB
[00:00:30] pip-8.1.0 | py34_0 1.6 MB
[00:00:30] ------------------------------------------------------------
[00:00:30]
[00:00:30] Total: 81.0 MB
[00:00:30]
[00:00:30] The following NEW packages will be INSTALLED:
[00:00:30]
[00:00:30] mkl: 11.3.1-0
[00:00:30] msvc_runtime: 1.0.1-vc10_0 [vc10]
[00:00:30] numpy: 1.10.4-py34_0
[00:00:30] pip: 8.1.0-py34_0
[00:00:30] setuptools: 20.2.2-py34_0
[00:00:30] wheel: 0.29.0-py34_0
[00:00:30]
[00:00:30] The following packages will be UPDATED:
[00:00:30]
[00:00:30] conda: 3.16.0-py34_0 --> 4.0.3-py34_0
[00:00:30] conda-env: 2.4.2-py34_0 --> 2.4.5-py34_0
[00:00:30] menuinst: 1.0.4-py34_0 --> 1.3.2-py34_0
[00:00:30] pyyaml: 3.11-py34_1 --> 3.11-py34_3
[00:00:30] requests: 2.7.0-py34_0 --> 2.9.1-py34_0
[00:00:30]
[00:00:30] %MINICONDA%\Scripts\conda install pyqt -y -q
[00:00:30] Fetching package metadata:
[00:00:31] .
[00:00:31] .
[00:00:31] .
[00:00:32] .
[00:00:32]
[00:00:32] Solving package specifications:
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32] .
[00:00:32]
[00:00:33]
[00:00:33] Package plan for installation in environment C:\Miniconda3:
[00:00:33]
[00:00:33] The following packages will be downloaded:
[00:00:33]
[00:00:33] package | build
[00:00:33] ---------------------------|-----------------
[00:00:33] jpeg-8d | vc10_0 145 KB
[00:00:33] libpng-1.6.17 | vc10_1 403 KB
[00:00:33] zlib-1.2.8 | vc10_2 93 KB
[00:00:33] libtiff-4.0.6 | vc10_1 367 KB
[00:00:33] python-3.4.4 | 2 30.5 MB
[00:00:33] qt-4.8.7 | vc10_6 42.0 MB
[00:00:33] sip-4.16.9 | py34_2 199 KB
[00:00:33] pyqt-4.11.4 | py34_5 2.2 MB
[00:00:33] ------------------------------------------------------------
[00:00:33] Total: 75.9 MB
[00:00:33]
[00:00:33] The following NEW packages will be INSTALLED:
[00:00:33]
[00:00:33] jpeg: 8d-vc10_0 [vc10]
[00:00:33] libpng: 1.6.17-vc10_1 [vc10]
[00:00:33] libtiff: 4.0.6-vc10_1 [vc
[00:00:33] 10]
[00:00:33] pyqt: 4.11.4-py34_5
[00:00:33] qt: 4.8.7-vc10_6 [vc10]
[00:00:33] sip: 4.16.9-py34_2
[00:00:33] zlib: 1.2.8-vc10_2 [vc10]
[00:00:33]
[00:00:33] The following packages will be UPDATED:
[00:00:33]
[00:00:33] python: 3.4.3-0 --> 3.4.4-2
[00:00:33]
[00:00:33] Error: MD5 sums mismatch for download: https://repo.continuum.io/pkgs/free/win-32/jpeg-8d-vc10_0.tar.bz2 (d41d8cd98f00b204e9800998ecf8427e != 4bfcb9bb14e6aedde6bdf9e705390fc0)
[00:00:33] Command exited with code 1
EDIT: Re-ran the build and it completed just fine.
I think the initial post is a duplicate of https://github.com/conda/conda/issues/2181 and fixed in https://github.com/conda/conda/pull/2183.
Also, conda 4.0.3
is broken. Consider it 403 FORBIDDEN
. We had it in the wild for just over an hour yesterday, and then released 4.0.4
shortly after. Reference to that issue is here: https://github.com/conda/conda/issues/2232
Also on Appveyor:
https://ci.appveyor.com/project/Eric89GXL/nibabel/build/1.0.693/job/ffqewq8bv4ovnaut
But seems intermittent. For example, on a previous build:
https://ci.appveyor.com/project/Eric89GXL/nibabel/build/1.0.691/job/w55a29rlxbyx707g
@kalefranz there have been periods where the MD5 problem has been endemic. It was due to one or both of (I cannot recall exactly):
I wonder if we have suitable stats on the repository infrastructure performance (disk, RAM, CPU, network) coupled with web log stats to see if we get into situations where this problem manifests due to the first issue.
Additionally it may be worth having an "audit" of single-digit-percent of all our packages to verify MD5s are correct. I would expect a perfect pass -- anything less should trigger a full verification and a process to establish how the inconsistency arose.
We have to realize that is some cases the MD5 mismatches are due to real download problems. This is why the MD5 checksum test is important. The new cas-mirror 1.5.0
has a command cas-verify
, which makes it easy to verify the consistency of conda repositories, ie. it MD5 run in repodata.json
is check against the calculated MD5 hash of the files on disk. I have run this test on all conda repositories on repo.continuum.io
in the past, and just now ran it again. The outcome: not a single mismatch!
@ijstokes
there have been periods where the MD5 problem has been endemic
Agreed.
I wonder if we have suitable stats on the repository infrastructure performance
It's an Ops question really, with recognition that we have two systems here: anaconda.org and repo.continuum.io. We should probably have dashboards for both, including HTTP error counts. I'm not sure we do right now.
when multiple packages need to be updated the conda tool generates an error saying md5 sum mismatch after the first package. This sometimes disappears during a second run.
conda info output:
platform : win-32 conda version : 2.3.0 root environment : C:\Anaconda (writable) default environment : C:\Anaconda envs directories : C:\Anaconda\envs package cache : C:\Anaconda\pkgs channel URLs : http://repo.continuum.io/pkgs/free/win-32/ http://repo.continuum.io/pkgs/pro/win-32/ config file : None is foreign system : False