-
Notifications
You must be signed in to change notification settings - Fork 848
Closed
Description
General summary/comments
I'm just investigating some failures in GHC CI and I don't know if stack is responsible or not. I've been given two examples, but I'm told there are others from today.
Example 1: https://gitlab.haskell.org/ghc/ghc/-/jobs/1736793
Example 2: https://gitlab.haskell.org/ghc/ghc/-/jobs/1736433
Reasons for thinking it's a stack bug:
- in the two examples, there is similar behavior. stack notices it is missing data in its pantry database and goes to update it by downloading and processing the Hackage tarball. That seems to succeed, but then stack immediately gives up and complains about missing data for a different package. Did the second package think that no update occurred (since the previous one already had succeeded), and then threw an error?
Reasons why I'm not sure:
- Not only is it a different pair of packages in both cases (which could be explained by nondeterministic concurrent processing of packages), but in one case js-dgtable gets processed just fine, and in the other case it's one of the packages whose data is missing. How is it that GHC CI has different Pantry databases between runs? I need to investigate this further.
Steps to reproduce
😬 I haven't tried, but something like this might work:
docker run -it --rm registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-deb10:572353e0644044fe3a5465bba4342a9a0b0eb60e
docker$ git clone https://gitlab.haskell.org/ghc/ghc
docker$ cd ghc
docker$ .gitlab/ci.sh setup
docker$ .gitlab/ci.sh configure
docker$ hadrian/build-stack --version
Stack version
ghc@8659c4aa4286:~$ stack --version
Version 2.9.3, Git revision 6cf638947a863f49857f9cfbf72a38a48b183e7e x86_64 hpack-0.35.1
Method of installation
- Unholy magicks
Platform
- x86_64-linux