nextflow-io / nextflow-io/nextflow

Charliecloud simultaneous pull error

Open
#3,566 13 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

software/charliecloud stale
Dominant language
Groovy
Stars
3.5k
Forks
811
Avg merge
2d 11h
Merged PRs (30d)
61

Description

Bug report

Expected behavior and actual behavior

Running an nf-core pipeline would download the charliecloud images on-demand.

When multiple different processes are scheduled at the same time, requiring different images, there is an error message and nextflow stops (error shown below).

Steps to reproduce the problem

When there are no local cached charliecloud images, the following command can reproduce the error:

nextflow run nf-core/raredisease -r dev  --outdir raredisease --genome GRCh38 --analysis_type wgs  -profile test,charliecloud
Program output
Error executing process > 'NFCORE_RAREDISEASE:RAREDISEASE:CHECK_INPUT:SAMPLESHEET_CHECK (1)'

Caused by:
  Charliecloud failed to pull image
  command: ch-image pull -s /data/ephemeral/charlie quay.io/biocontainers/python:3.9--1 > /dev/null
  status : 1
  message:
    error: storage directory is already in use
    hint: concurrent instances of ch-image cannot share the same storage directory
Environment
  • Nextflow version: 23.01.0-edge
  • Java version: openjdk 11.0.13
  • Operating system: Linux
  • Bash version: 5.1.16(1)-release
  • Charliecloud version: 0.30 (from conda)
Additional context

It's possible to work around the problem by manually pulling all the required images before running nextflow.

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.

Research direction

Start by running the provided nf-core/raredisease command with no cached Charliecloud images and review the image-pull handling around the reported storage-directory error. Reproduce concurrent pulls for different images, then verify that the workflow completes without requiring manual pre-pulling.

Written by the indexing model from the issue text.

Assessment

Tech stack
groovy
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.