SBIMB / StellarPGx

Calling star alleles in highly polymorphic pharmacogenes (e.g. CYP450 genes) by leveraging genome graph-based variant detection.
MIT License
30 stars 7 forks source link

Error Executing Process and User Namespace Error #7

Closed joseph-yclam closed 2 years ago

joseph-yclam commented 2 years ago

Describe the bug Run into an error executing process: Error executing process > 'call_sv_dup (1)' Caused by: Processcall_sv_dup (1)terminated with an error exit status (255)

Ran into a user namespace error: Command error: INFO: Converting SIF file to temporary sandbox... FATAL: while extracting /localhome/joseph.lam1/StellarPGx-1.2.4/containers/ stellarpgx-dev.sif: root filesystem extraction failed: extract command failed: ERROR : Failed to create user namespace: user namespace disabled : exit status 1

To Reproduce Steps to reproduce the behavior:

  1. Download StellarPGx github code and transfer to a remote server using WinSCP
  2. Installed requirements using conda install -c bioconda nextflow Solving environment: done and conda install -c conda-forge singularity Solving environment: done
  3. Run the test command to see if it works: nextflow run main.nf -profile standard , test

Expected behavior The expected output file (SIM001_2d6.alleles) for test dataset SIM001.bam to be found in the ./results/cyp2d6/alleles directory, however, nothing appears.

Screenshots If applicable, add screenshots to help explain your problem. image image

Additional context Add any other context about the problem here.

twesigomwedavid commented 2 years ago

Hi @joseph-yclam, Thanks for raising this issue. Just to confirm, which OS are you using on your machine?

David

joseph-yclam commented 2 years ago

Hi @twesigomwedavid Thank you for answering! My OS is Windows 10 but I am running StellarPGx on a remote Linux server.

twesigomwedavid commented 2 years ago

@joseph-yclam The problem seems to be with your Singularity installation. I think it would be much better if your server Admin installs Singularity system-wide. See a similar discussion here.

joseph-yclam commented 2 years ago

@twesigomwedavid Thank you so much! I believe now that the issue is resolved thanks to my server Admin installing Singularity. However, I am now encountering this error: [a4/3b79f6] process > call_stars (SIM001) [100%] 1 of 1, failed: 1 ✔ [a4/3b79f6] NOTE: Processcall_stars (SIM001)terminated with an error exit status (1) -- Error is ignored It says the error is ignored but I cannot find the result file in the "results/cyp2d6/allele" folder at all? The ReadMe file said I should have an allele folder but I do not appear to have it at all, or the results? Sorry, thanks!

twesigomwedavid commented 2 years ago

@joseph-yclam Glad that the namespace issue is resolved! The reason why you don't have a results/cyp2d6/allele folder is because the process i.e. _callstars failed on your machine. Do you mind sharing the content of the .command.err file in ./work/a4/3b79f6...../ Thanks

joseph-yclam commented 2 years ago

@twesigomwedavid Thank you! Of course, it is here: image

twesigomwedavid commented 2 years ago

@joseph-yclam Thanks. I am not replicating that error on my end. I see you're using StellarPGx v1.2.4? Maybe it might be a case of switching to the newer version i.e. v1.2.5? I think that might do the trick. Also, since you've had some previous failed runs, there might be some truncated files somewhere on your system.

joseph-yclam commented 2 years ago

@twesigomwedavid Thank you so much for helping! You were correct, I think, it was my version. I updated to 1.2.5! Sorry, while we're here, could I ask when editing the "nextflow.config" file's "in_bam" argument, for multiple BAM files, how would that look like?

For example, in_bam = "/path/to/*{bam,bai}" would look like in_bam = CIM_output/CIM1.bam, CIM_output/CIM2.bam, and CIM_output/CIM3.bam for example?

twesigomwedavid commented 2 years ago

@joseph-yclam Great. You should be seeing subfolders under ./results with the output for the test run i.e. ./results/cyp2d6/alleles/

For the input files, it would be formatted as follows: Given multiple files: in_bam = /absolute/path/CIM_output/CIM*{bam,bai}

or simply in_bam = /absolute/path/CIM_output/*{bam,bai}

For single sample e.g. CIM1 only: in_bam = /absolute/path/CIM_output/CIM1*{bam,bai}

Note that it is picking up file pairs i.e. the BAM and the index.