Timeout when fetching mix dependencies

I started getting errors when fetching a dependency from mix

** (exit) exited in: GenServer.call(:hex_fetcher, {:await, {:tarball, “hexpm”, “redix”, “1.5.1”}}, 120000)
** (EXIT) time out
(elixir 1.14.5) lib/gen_server.ex:1038: GenServer.call/3
(hex 2.1.0) lib/hex/scm.ex:147: Hex.SCM.update/1
(hex 2.1.0) lib/hex/scm.ex:246: Hex.SCM.checkout/1
(mix 1.14.5) lib/mix/dep/fetcher.ex:64: Mix.Dep.Fetcher.do_fetch/3
(mix 1.14.5) lib/mix/dep/converger.ex:213: Mix.Dep.Converger.all/9
(mix 1.14.5) lib/mix/dep/converger.ex:224: Mix.Dep.Converger.all/9
(mix 1.14.5) lib/mix/dep/converger.ex:146: Mix.Dep.Converger.all/7
(mix 1.14.5) lib/mix/dep/converger.ex:131: Mix.Dep.Converger.all/4

What’s strange is that it doesn’t happen locally, but only when fetching dependencies on circleci. It also only happens with this redix dependency, other dependencies are downloaded just fine.

How can I debug this? I didn’t find a way to enable verbose logs for the mix deps command, and this error is unhelpful.

Are you using a custom hex repo?

2 Likes

Thanks!

1 Like

Any idea why your solution works? Newer versions have a bug?

It looks like it. With 2.0.6. it’s working, with 2.1.0, it’s not. But I don’t know which change is causing it.