Open TiagoVieiraBotany opened 3 weeks ago
Hi @TiagoVieiraBotany ,
Reserving 128GB of RAM should be more than plenty, unfortunately the JAVA components of Captus are not able to access them. I found this depends on the configuration of the cluster for which you have to consult the administrators of your HPC. Sorry I can't be of more help...
Edgardo
Thanks for replying @edgardomortiz . I will stick with Fastp for this duty then. Anyway, thanks for putting together such a nice and well documented pipeline! All the best, Tiago
Hi @TiagoVieiraBotany ,
Fastp was my first option, I think I will include it as alternative in a following version. I didn't use it, however because it tends to detect real repeats as adaptor, check my experiment here: https://edgardomortiz.github.io/captus.docs/assembly/clean/
As I said, some cluster configuration don't allow for automatic detection of available RAM, which messes up with Java. Maybe, you could try installing Captus through Micromamba (I saw you were using the classic conda environment), I don't know if this will help though...
Best,
Edgardo
Hi @TiagoVieiraBotany ,
I ran into this error in our cluster too (not exactly the same one, but also related to memory), my node also has 128Gb of RAM, then I added --ram 100
to my Captus command and it finished successfully.
I hope this helps,
Edgardo
Hi Edgardo and colleagues,
I'm facing an issue when trying to run the first - cleaning - step of the pipeline. Here's my slurm script:
!/bin/bash #
SBATCH -p sapphire # partition (queue)
SBATCH -c 12 # number of cores
SBATCH --mem 128000 # memory pool for all cores
SBATCH -t 0-18:00 # time (D-HH:MM)
SBATCH -o /n/holyscratch01/davis_lab/tlvieira/CAPTUS/captus.clean.out
SBATCH -e /n/holyscratch01/davis_lab/tlvieira/CAPTUS/captus.clean.err
SBATCH --mail-type=END
SBATCH --mail-user=tiagolvs@gmail.com
source /n/home10/tlvieira/miniconda3/etc/profile.d/conda.sh
conda activate captus
Clean threshold of 13
captus_assembly clean \ --reads /n/holyscratch01/davis_lab/tlvieira/RAW_DATA \ --out /n/holyscratch01/davis_lab/tlvieira/CAPTUS/01_clean_reads/ \ --adaptor_set Illumina \ --trimq 13 \ --maq 16 \ --qc_program fastqc \ --threads 12
It doesn't move further from the adaptor removal step of the protocol due to issues with Java for preparing reports, apparently. The Slurm .err file indicates:
Traceback (most recent call last): File "/n/home10/tlvieira/miniconda3/envs/captus/lib/python3.12/site-packages/pandas/core/indexes/base.py", line 3805, in get_loc return self._engine.get_loc(casted_key) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "index.pyx", line 167, in pandas._libs.index.IndexEngine.get_loc File "index.pyx", line 196, in pandas._libs.index.IndexEngine.get_loc File "pandas/_libs/hashtable_class_helper.pxi", line 7081, in pandas._libs.hashtable.PyObjectHashTable.get_item File "pandas/_libs/hashtable_class_helper.pxi", line 7089, in pandas._libs.hashtable.PyObjectHashTable.get_item KeyError: 'after'
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/n/home10/tlvieira/miniconda3/envs/captus/bin/captus_assembly", line 10, in
sys.exit(main())
^^^^^^
File "/n/home10/tlvieira/miniconda3/envs/captus/lib/python3.12/site-packages/captus/captus_assembly.py", line 1424, in main
CaptusAssembly()
File "/n/home10/tlvieira/miniconda3/envs/captus/lib/python3.12/site-packages/captus/captus_assembly.py", line 90, in init
getattr(self, args.command)()
File "/n/home10/tlvieira/miniconda3/envs/captus/lib/python3.12/site-packages/captus/captus_assembly.py", line 310, in clean
clean(full_command, args)
File "/n/home10/tlvieira/miniconda3/envs/captus/lib/python3.12/site-packages/captus/clean.py", line 387, in clean
qc_html_report, qc_html_msg = build_qc_report(out_dir, qc_extras_dir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/n/home10/tlvieira/miniconda3/envs/captus/lib/python3.12/site-packages/captus/report.py", line 58, in build_qc_report
read_len_pct = avg_read_len.loc[:, "after"] / avg_read_len.loc[:, "before"] * 100