Skip to content
New issue

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

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

Already on GitHub? # to your account

Internal opam solver failure #3447

Open
lpw25 opened this issue Jul 11, 2018 · 6 comments · Fixed by #5510
Open

Internal opam solver failure #3447

lpw25 opened this issue Jul 11, 2018 · 6 comments · Fixed by #5510

Comments

@lpw25
Copy link
Contributor

lpw25 commented Jul 11, 2018

According to opam ci there are opam solver failures on two versions of the prof_spacetime package:

$ opam ci log prof_spacetime.0.1.0 --compiler=4.05

====> prof_spacetime.0.1.0 4.05 Debian 9 (Stretch) amd64 (internal opam solver failure) (opam-repository 88fd9cd8):
<no logs available>

====> prof_spacetime.0.1.0 Dockerfile for 4.05 Debian 9 (Stretch) amd64:
# Autogenerated by OCaml-Dockerfile scripts
FROM ocaml/opam2:debian-9-ocaml-4.05
RUN opam switch 4.05
ENV OPAMYES 1
WORKDIR /home/opam/opam-repository
RUN git pull origin master
RUN git checkout 88fd9cd811d22c98d2bd573d053cd5818bdae488
RUN opam update
RUN opam install -y depext
RUN opam depext -iy jbuilder ocamlfind
RUN opam depext -uiv prof_spacetime.0.1.0
$ opam ci log prof_spacetime.0.1.0 --compiler=4.04

====> prof_spacetime.0.1.0 4.04 Debian 9 (Stretch) amd64 (internal opam solver failure) (opam-repository 88fd9cd8):
<no logs available>

====> prof_spacetime.0.1.0 Dockerfile for 4.04 Debian 9 (Stretch) amd64:
# Autogenerated by OCaml-Dockerfile scripts
FROM ocaml/opam2:debian-9-ocaml-4.04
RUN opam switch 4.04
ENV OPAMYES 1
WORKDIR /home/opam/opam-repository
RUN git pull origin master
RUN git checkout 88fd9cd811d22c98d2bd573d053cd5818bdae488
RUN opam update
RUN opam install -y depext
RUN opam depext -iy jbuilder ocamlfind
RUN opam depext -uiv prof_spacetime.0.1.0

I was told it would be useful to report this fact here.

@avsm
Copy link
Member

avsm commented Jul 11, 2018

Thanks; I suspect this is due to the large number of cohttp packages in the stable opam-repo

@rjbou
Copy link
Collaborator

rjbou commented Jul 13, 2018

Update:

$ opam ci logs prof_spacetime 
prof_spacetime: multiple build failures found with different configuration parameters.
Please refine the command to select exactly one of the following:
  opam-ci logs prof_spacetime.0.1.0 --compiler=4.04 --arch=amd64 --distro=debian-9
  opam-ci logs prof_spacetime.0.1.0 --compiler=4.06 --arch=ppc64le --distro=debian-9
$ opam-ci logs prof_spacetime.0.1.0 --compiler=4.06 --arch=ppc64le --distro=debian-9

====> prof_spacetime.0.1.0 4.06 Debian 9 (Stretch) ppc64le (dependency failed) (opam-repository 43284a6f):
 [...warnings...]
 # Warning : strength option is not supported

====> prof_spacetime.0.1.0 Dockerfile for 4.06 Debian 9 (Stretch) ppc64le:
# Autogenerated by OCaml-Dockerfile scripts
FROM ocaml/opam2:debian-9-ocaml-4.06
RUN opam switch 4.06
ENV OPAMYES 1
WORKDIR /home/opam/opam-repository
RUN git pull origin master
RUN git checkout 43284a6f1779def38c522352503681d7b22a3b87
RUN opam update
RUN opam install -y depext
RUN opam depext -iy jbuilder ocamlfind
RUN opam depext -uiv prof_spacetime.0.1.0
$ opam-ci logs prof_spacetime.0.1.0 --compiler=4.04 --arch=amd64 --distro=debian-9
====> prof_spacetime.0.1.0 4.04 Debian 9 (Stretch) amd64 (internal opam solver failure) (opam-repository 07f587e8):
<no logs available>

====> prof_spacetime.0.1.0 Dockerfile for 4.04 Debian 9 (Stretch) amd64:
# Autogenerated by OCaml-Dockerfile scripts
FROM ocaml/opam2:debian-9-ocaml-4.04
RUN opam switch 4.04
ENV OPAMYES 1
WORKDIR /home/opam/opam-repository
RUN git pull origin master
RUN git checkout 07f587e89cbe6a23bc0710a0830820801cb1318a
RUN opam update
RUN opam install -y depext
RUN opam depext -iy jbuilder ocamlfind
RUN opam depext -uiv prof_spacetime.0.1.0

note that locally, those docker build succesfully

@AltGr
Copy link
Member

AltGr commented Jul 18, 2018

note that locally, those docker build succesfully

probably indicating a solver timeout on the CI side ?

@kit-ty-kate
Copy link
Member

probably indicating a solver timeout on the CI side ?

most probably. I get lots of timeouts on check.ocamllabs.io

Example:

# Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=debian, os-family=debian
[ERROR] Sorry, resolution of the request timed out.
        Try to specify a simpler request, use a different solver, or increase the allowed time by setting OPAMSOLVERTIMEOUT to a bigger value (currently, it is set to 60.0 seconds).
Command failed: opam list --readonly --external  --resolve=slack-backup.0.1 returned 60
Command 'docker run --rm opam-check-all-4.02.3 opam depext -ivy slack-backup.0.1' failed.

or in Travis here where I already set the timeout to 300s but it's visibly not enough with some switches: https://travis-ci.org/avsm/mirage-ci/jobs/451841943

Something tells me there is going to be more and more of this as the number of packages increase and I'm not sure what to do about it. I think it should be fixed on opam side instead of increasing OPAMSOLVERTIMEOUT.

I'm not sure if I should make a new issue or not for that?

@kit-ty-kate
Copy link
Member

kit-ty-kate commented Aug 2, 2021

Note: This was (at least partly) fixed in opam 2.1.0 (via #4369) released last week.

@kit-ty-kate
Copy link
Member

Some of the remaining examples of solver timeouts can be seen in #5422 and #6137

  • --with-test curly.0.3.0 on an ocaml 4.07 switch
  • prometheus-app on an ocaml 4.12 switch

@rjbou rjbou reopened this Feb 5, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
5 participants