Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WinRPM Build failure on Windows Server 2012 #47

Open
howard4086 opened this issue Aug 11, 2015 · 17 comments · May be fixed by #144
Open

WinRPM Build failure on Windows Server 2012 #47

howard4086 opened this issue Aug 11, 2015 · 17 comments · May be fixed by #144

Comments

@howard4086
Copy link

Hello,

I am trying to install a package that requires winRPM on a Windows 2012 Server. I am able to install other packages fine (specifically JuMP and PyCall), but WinRPM seems to be failing.

JuMP installs Clp and Cbc, and Cbc then has a build error. I tried to rebuild Cbc manually, and it appears to be a WinRPM failure. For some reason it can't seem to pull anything down. I didn't know if this may be a Windows 2012 issue, or a config problem?

I'm puzzled that other packages download and build fine, but WinRPM doesn't...

Here is the error messages I get when trying to build Cbc (which then tries to build WinRPM). I get the same download errors if I try to directly build WinRPM.

julia> Pkg.build("Cbc")
INFO: Building WinRPM
INFO: Downloading https://cache.e.ip.saba.us/http://download.opensuse.org/reposi
tories/windows:/mingw:/win32/openSUSE_13.1/repodata/repomd.xml
INFO: Downloading https://cache.e.ip.saba.us/http://download.opensuse.org/reposi
tories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e8bebadadf423d314868c33de07
66daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 1/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e8bebadadf423
d314868c33de0766daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 2/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e8bebadadf423
d314868c33de0766daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 3/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e8bebadadf423
d314868c33de0766daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 4/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e8bebadadf423
d314868c33de0766daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 5/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e8bebadadf423
d314868c33de0766daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
WARNING: received error 0 while downloading https://cache.e.ip.saba.us/http://do
wnload.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1/repodata/0e
8bebadadf423d314868c33de0766daf460167b5f2033ace800054c6d2de46c-primary.xml.gz
INFO: Downloading https://cache.e.ip.saba.us/http://download.opensuse.org/reposi
tories/windows:/mingw:/win64/openSUSE_13.1/repodata/repomd.xml
INFO: Downloading https://cache.e.ip.saba.us/http://download.opensuse.org/reposi
tories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6ba3bd5dc04da833d5f42944d3f
1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 1/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6ba3bd5dc04da
833d5f42944d3f1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 2/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6ba3bd5dc04da
833d5f42944d3f1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 3/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6ba3bd5dc04da
833d5f42944d3f1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 4/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6ba3bd5dc04da
833d5f42944d3f1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
WARNING: Unknown download failure, error code: 2148270088
WARNING: Retry 5/5 downloading: https://cache.e.ip.saba.us/http://download.opens
use.org/repositories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6ba3bd5dc04da
833d5f42944d3f1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
WARNING: received error 0 while downloading https://cache.e.ip.saba.us/http://do
wnload.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.1/repodata/a6
ba3bd5dc04da833d5f42944d3f1bfea14cf19e538da3b4ff4f8040e9defbcc-primary.xml.gz
INFO: Building Cbc
=================================[ ERROR: Cbc ]=================================

None of the selected providers can install dependency libclp.
Use BinDeps.debug(package_name) to see available providers

while loading C:\Users\Administrator.julia\v0.3\Cbc\deps\build.jl, in expressio
n starting on line 63

================================[ BUILD ERRORS ]================================

WARNING: Cbc had build errors.

  • packages with build errors remain installed in C:\Users\Administrator.julia
    v0.3
  • build the package(s) and all dependencies with Pkg.build("Cbc")
  • build a single package by running its deps/build.jl script

julia>

@tkelman
Copy link
Contributor

tkelman commented Aug 11, 2015

Hm, what version of Julia are you using? Can you try editing the file C:\Users\Administrator\.julia\v0.3\WinRPM\sources.list to remove the https://cache.e.ip.saba.us/ prefix and try again?

@howard4086
Copy link
Author

I'm using 0.3.11.

That fix worked. It was obvious once you said it, but I would not have thought to do it on my own!

Thanks for the help!

@tkelman
Copy link
Contributor

tkelman commented Aug 11, 2015

I'd really like to find some way of making the default setting robust for everyone. It may be that there are intermittent issues with the cache server, would you mind trying to test with the cache prefix added back every so often to see whether it's a permanent problem?

@howard4086
Copy link
Author

Will do. I'll let you know.

@tkelman
Copy link
Contributor

tkelman commented Aug 11, 2015

Another option might be to have both the cache-prefixed version and the non-prefixed version listed in the file, though that may slow things down a bit if everyone always has to download 2 copies of the repomd, and possibly lead to confusion with duplicate available copies of every package.

@stevengj
Copy link

Can't it download the cache-prefixed version, and if that doesn't work try the non-prefixed version?

@tkelman
Copy link
Contributor

tkelman commented Aug 24, 2015

I need someone who can reproduce the problem to tell me that. @AndyGreenwell mind testing some things out here?

@tkelman tkelman reopened this Aug 24, 2015
@tkelman
Copy link
Contributor

tkelman commented Aug 24, 2015

Another option would be to do something about #40, but preferring the powershell route rather than curl since curl won't be available in the windows binaries forever. From the last few times I've tested, Base.download doesn't follow redirects. Apparently URLDownloadToCacheFileW (used by WinRPM) is better than URLDownloadToFileW (used by Base.download) in this respect.

@jankatins
Copy link

I've just installed julia as an admin and using it as a normal user. I've seen a similar error as above and removing the https://cache.e.ip.saba.us/ in C:\Users\jschulz\.julia\v0.4\WinRPM\souces.list helped: I could install IJulia afterwards (Pkg.build("IJulia")).

When I try URLs like https://cache.e.ip.saba.us/http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.2/repodata/repomd.xml in chrome, I get a Bad Request (400) message :-(

@AStupidBear
Copy link

Is this so difficult to solve? I have this issue on Julia 0.5 again recently on Win10.

@hustf
Copy link
Contributor

hustf commented Jan 23, 2017

There was a call for testing above, but I took it (from file names) that testing requires a 32 bit Windows server. Is that your setup, or would winrpm.update() be relevant to you?

@AStupidBear
Copy link

Modifying WinRPM.download to Base.download will work.

@SimonDanisch
Copy link
Member

What worked for me was fixing WinRPM to version v"0.2.1". If I remember correctly, it still got the warnings (download failure, error code: 2148270088) but it stopped after 2 somehow got around them.

@tkelman
Copy link
Contributor

tkelman commented Feb 17, 2017

The only thing non-trivial that's been changed since then was switching from LegacyStrings to Compat.transcode https://github.com/JuliaPackaging/WinRPM.jl/compare/v0.2.1...master?w=1

@SimonDanisch
Copy link
Member

Weird...Could this be spurious? That'd also explain, why not more people are affected by this.
Since it's a long procedure, I actually didn't try this multiple times on the affected machine.

@tkelman
Copy link
Contributor

tkelman commented Feb 17, 2017

There are several issues here that tend to all get reported in the same issue because the errors happen at the same place.

One is a security policy issue with some server versions of Windows that blocks the API that's used for downloading here. Another is just generally flaky downloads. Retrying 5 times should help there, but apparently not if your connection is especially bad?

@zhopan77
Copy link

zhopan77 commented Apr 21, 2017

I encountered the same problem when doing Pkg.update() after installing JuliaPro 0.5.1.1. HDF5 and EzXML failed to build due to the failure of WinRPM, which is again related to the Unknown download failure 2148270086.

I have 2 Windows 10 64-bit machines. One of them has no issue, but the other has this problem. NEITHER of them is running Windows server version.

I am in the United States, on a home network and I can use a browser to open the repomd.xml link.

I tried disabling Windows firewall; set Security level for all zones to minimum in Internet Options; made sure "Enable Enhanced Protected Mode" is unchecked (as default) in Internet Options -> Advanced. All these have no effect at all.

Editing the sources.list file to remove the "https://cache.julialang.org/" prefixes did change the displayed messages somewhat, but eventually downloading still fails with error code 2148270086 and the build cannot complete.

This is actually quite repeatable - one of my machine does not have the problem when I run Pkg.update(), the other one has. Network is the same. Don't know what is different that leads to this issue.

UPDATE: I was able to get around the problem using the PowerShell download method mentioned in #40 . In particular, I edited C:\JuliaPro\pkgs-0.5.1.1\v0.5\WinRPM\src\WinRPM.jl (C:\JuliaPro is where I installed JuliaPro to), and modified the Windows version of the function download() as below (I used readstring instead of readall as readall is deprecated):

...
elseif is_windows()
    function download(source::AbstractString; retry=5)
		return readstring(`powershell -Command "(new-object net.webclient).DownloadString(\"$source\")"`), 200
    end
else
    error("Platform not supported: $(KERNEL)")
end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants