quarto-dev / quarto-dev/quarto-cli

Race condition when running multiple instances of quarto

Open
#6,116 5 comments 0 reactions 1 assignee View on GitHub

@cscheid is already working on this.

Since Nov 28, 2023.

bug
Dominant language
JavaScript
Stars
6k
Forks
458
Avg merge
1d 9h
Merged PRs (30d)
41

Description

Bug description

When running several instances of quarto render in parallel, errors like these appear:

ERROR: NotFound: No such file or directory (os error 2): copy '/home/stefan/.local/quarto-1.4.76/share/formats/html/quarto.js' -> '/home/stefan/p/resampling/resampling-with/source/site_libs/quarto-html/quarto.js'

NotFound: No such file or directory (os error 2): copy '/home/stefan/.local/quarto-1.4.76/share/formats/html/quarto.js' -> '/home/stefan/p/resampling/resampling-with/source/site_libs/quarto-html/quarto.js'
    at Object.copyFileSync (ext:deno_fs/30_fs.js:80:7)
    at copyFileSync1 (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:36992:10)
    at copyTo (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:36937:9)
    at doCopy (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:36967:9)
    at copyFileIfNewer (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:36984:9)
    at copyDependencyFile (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:57728:5)
    at copyFile (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:57666:13)
    at file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:57673:50
    at Array.forEach (<anonymous>)
    at processHtmlDependencies (file:///home/stefan/.local/quarto-1.4.76/bin/quarto.js:57673:32)
Steps to reproduce

I don't have a very good way to reproduce, unfortunately, other than to build several chapters of a document in parallel. I hope the problem is straightforward to identify :/

Expected behavior

No response

Actual behavior

No response

Your environment

No response

Quarto check output
$ quarto check

[✓] Checking versions of quarto binary dependencies...
      Pandoc version 3.1.2: OK
      Dart Sass version 1.55.0: OK
      Deno version 1.33.2: OK
[✓] Checking versions of quarto dependencies......OK
[✓] Checking Quarto installation......OK
      Version: 1.4.76
      Path: /home/stefan/.local/quarto-1.4.76/bin

[✓] Checking basic markdown render....OK

[✓] Checking Python 3 installation....OK
      Version: 3.11.1
      Path: /home/stefan/envs/py311/bin/python3
      Jupyter: 5.3.0
      Kernels: python3

(-) Checking Jupyter engine render....0.00s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.
0.00s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.
[✓] Checking Jupyter engine render....OK

[✓] Checking R installation...........OK
      Version: 4.1.3
      Path: /usr/lib64/R
      LibPaths:
        - /home/stefan/R
        - /home/stefan/R-dev
        - /usr/lib64/R/library
        - /usr/share/R/library
      knitr: 1.43
      rmarkdown: 2.22

[✓] Checking Knitr engine render......OK

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.