No output after running MetaPhlAn

Hi,

I have a strange issue similar to this one: Metaphlan 3 runs, but does not produce output files. I’m running MetaPhlAn version 4.0.6 on a cluster, installed via pip. The job runs for around an hour or two and completes without any errror but there are no profiles in the output and accordingly the merge script fails. Unfrotunately the fix suggested in the above link does not work for me.

Here is the command I am running:

run_metaphlan(){

echo "Running" $(metaphlan --v)

# make metaphlan folder

mkdir -p ${analysis_folder}/${study}/metaphlan/{profiles,merged_table}

filelist=$(ls -d ${data_dir}/*_1.fastq | awk '{print $NF}')

for read in ${filelist};

do

sample=$(basename ${read} | cut -f1 -d"_")

R1=${data_dir}/${sample}_1_kneaddata_paired_1.fastq

R2=${data_dir}/${sample}_1_kneaddata_paired_2.fastq

echo "Running metaphlan on sample ${sample}"

metaphlan $R1,$R2 --input_type fastq --bowtie2out $db/${sample}.bowtie2.bz2 --index $index --bowtie2db $db -o ${analysis_folder}/${study}/metaphlan/profiles/${sample}_profile.txt --nproc 4

done

}

I tried re-directing stdout of the command to a log file but it’s not very informative:

/bin/sh: /dss/lrzsys/sys/spack/release/22.2.1/opt/x86_64/miniconda3/4.10.3-gcc-3vesgdq/lib/libtinfo.so.6: no version information available (required by /lib64/libreadline.so.7)
/bin/sh: /dss/lrzsys/sys/spack/release/22.2.1/opt/x86_64/miniconda3/4.10.3-gcc-3vesgdq/lib/libtinfo.so.6: no version information available (required by /lib64/libreadline.so.7)
26040999        94.95095180488275

I did notice that the bowtie index files are produced but they are empty, so there could be an issue here. I also tested the same script on my laptop minus the SLURM parameters, on a subset of the data and it works fine, so I would guess it’s something to do with the environment but I can’t seem to figure out what. Any idea what could be going on here?

thanks,

Adam

1 Like

Hi @adamsorbie Did you ever find the solution for this? I am in a similar situation.

It seems like it’s giving some statistics, the first number for example I am pretty sure is the number of reads processed. But no output, no errors. I am also running on our HPC cluster with SLURM scheduler.

I have tried the exact same command for 4.0.4 and it does produce the expected output files. So, it has to be something to do with Metaphlan4.0.6 version specifically (I am using the container: Quay)?

Hi, metaphlan output is reported by standard output, you can capture into a file as:
metaphlan $R1,$R2 --input_type fastq --bowtie2out $db/${sample}.bowtie2.bz2 --index $index --bowtie2db $db --nproc 4 > ${analysis_folder}/${study}/metaphlan/profiles/${sample}_profile.txt