# Error using Julia on an HPC cluster: Juliaup configuration is locked by another process, waiting for it to unlock

**URL:** <https://discourse.julialang.org/t/error-using-julia-on-an-hpc-cluster-juliaup-configuration-is-locked-by-another-process-waiting-for-it-to-unlock/118059>\
**Category:** Julia at Scale\
**Tags:** question\
**Created:** [August 11, 2024, 4:17pm UTC](https://discourse.julialang.org/t/error-using-julia-on-an-hpc-cluster-juliaup-configuration-is-locked-by-another-process-waiting-for-it-to-unlock/118059 "2024-08-11T16:17:45Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![squark](https://avatars.discourse-cdn.com/v4/letter/s/e8c25b/32.png) [@squark](https://discourse.julialang.org/u/squark)\
**Post date:** [August 11, 2024, 4:17pm UTC](https://discourse.julialang.org/t/error-using-julia-on-an-hpc-cluster-juliaup-configuration-is-locked-by-another-process-waiting-for-it-to-unlock/118059/1 "2024-08-11T16:17:45Z")

</div>

I have been using Julia on an HPC slurm cluster with no problem. However, I was trying to use the MPI.jl package to parallelize my code. The cluster has intel MPI that I have been trying to use without success. I added the MPI.jl package using Pkg.add(“MPI”). My job submission script looks as follows:

```julia
#SBATCH --partition short
#SBATCH --N 1 
...
module load intel/MPI
mpirun -n 100 julia script.jl 

```

However, this does not work and I receive an error message saying:

```julia
Juliaup configuration is locked by another process, waiting for it to unlock.

```

The previous error message is repeated around 100 times in the error file “stderr”, and since I have 100 MPI ranks, this suggests that each MPI rank is waiting for the configuration file to get unlocked.

Now, Julia itself is not working anymore and I keep receiving the same message. I understand that my unsuccessful attempt to use MPI led to some kind of lock on a certain configuration file. However, I have cancelled the MPI jobs I have been trying to do, logged off and on again, but the issue is still there. I have two questions:

1. How to properly use MPI.jl on a Slurm cluster? After checking online, it looks like I need to add another package “MPIPreferences.jl” to make this work? The documentation does not seem very clear to me.
2. How to resolve this issue of locked file?

---

<div class="post-metadata">

**Author:** ![carstenbauer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/carstenbauer/32/4981_2.png) [@carstenbauer](https://discourse.julialang.org/u/carstenbauer)\
**Post date:** [August 12, 2024, 6:49am UTC](https://discourse.julialang.org/t/error-using-julia-on-an-hpc-cluster-juliaup-configuration-is-locked-by-another-process-waiting-for-it-to-unlock/118059/2 "2024-08-12T06:49:14Z")

</div>

> [@squark](#):
>
> 1. How to properly use [MPI.jl](https://juliahub.com/ui/Packages/General/MPI) on a Slurm cluster? After checking online, it looks like I need to add another package “MPIPreferences.jl” to make this work? The documentation does not seem very clear to me.

What’s unclear about it? If you want to use a system MPI (the Intel MPI provided by `module load intel/MPI` on your cluster) you have to do

```julia
using MPIPreferences
MPIPreferences.use_system_binary()

```

as is [described in the docs](https://juliaparallel.org/MPI.jl/latest/configuration/#using_system_mpi). Afterwards. the `mpirun` call should work fine.

Having said that, you might want to give the MPI binaries (JLLs) that we ship automatically a try. For this, drop the module loading part and use [`mpiexecjl`](https://juliaparallel.org/MPI.jl/latest/usage/#Julia-wrapper-for-mpiexec) instead of `mpirun`. Note that you have to do

```julia
using MPI
MPI.install_mpiexecjl()

```

and have to put `~/.julia/bin` on `$PATH` for it to be available. And if you did the `MPIPreferences.use_system_binary()` part above, you have to undo it with `MPIPreferences.use_jll_binary()`.

---

<div class="post-metadata">

**Author:** ![jishnub](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jishnub/32/33620_2.png) [@jishnub](https://discourse.julialang.org/u/jishnub)\
**Post date:** [August 12, 2024, 7:37am UTC](https://discourse.julialang.org/t/error-using-julia-on-an-hpc-cluster-juliaup-configuration-is-locked-by-another-process-waiting-for-it-to-unlock/118059/3 "2024-08-12T07:37:30Z")

</div>

This seems to be a `juliaup` issue (["Juliaup configuration is locked by another process, waiting for it to unlock." · Issue #598 · JuliaLang/juliaup · GitHub](https://github.com/JuliaLang/juliaup/issues/598)), and the solution might be to run

```julia
juliaup config versionsdbupdateinterval 0
juliaup config backgroundselfupdateinterval 0

```

to disable checks for updates. Alternately, you may launch julia by specifying the binary path directly instead of using `juliaup`.

---

<div class="post-metadata">

**Author:** ![greatpet](https://avatars.discourse-cdn.com/v4/letter/g/e495f1/32.png) [@greatpet](https://discourse.julialang.org/u/greatpet)\
**Post date:** [December 25, 2025, 12:55am UTC](https://discourse.julialang.org/t/error-using-julia-on-an-hpc-cluster-juliaup-configuration-is-locked-by-another-process-waiting-for-it-to-unlock/118059/4 "2025-12-25T00:55:40Z")

</div>

> [@jishnub](#):
>
> Alternately, you may launch julia by specifying the binary path directly instead of using `juliaup`.

Sorry for replying to this old thread, but that’s is a good suggestion, if you don’t want 1000 parallel tasks to simultaneously print out information telling you that a new Julia release has become available for upgrade. I’ve always used juliaup on my laptop, but I feel uncomfortable with the idea of using it on HPC systems (other than on login nodes and interactive jobs).
