faircloth-lab / phyluce

software for UCE (and general) phylogenomics
http://phyluce.readthedocs.org/
Other
78 stars 49 forks source link

ABySS assembly problem on HPC cluster (ABySS version issue?) #189

Closed PopGen33 closed 4 years ago

PopGen33 commented 4 years ago

I'm running into an issue with phyluce_assembly_assemblo_abyss and, ultimately, with the version of ABySS that phyluce requires.

For some reason, the version of ABySS used with phyluce (ABySS 1.5.2) doesn't run on the HPC cluster that I'm working with. I get the same errors if I run that version of ABySS directly instead of going through phyluce_assembly_assemblo_abyss, like so:

/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/bin/mpirun -np 24 ABYSS-P -k25 -q3 -v  --coverage-hist=coverage.hist -s abyss_test-bubbles.fa  -o abyss_test-1.fa /scratch/siu851286785/craneProject/assemblyTest/CK5/split-adapter-quality-trimmed/CK5-READ1.fastq.gz /scratch/siu851286785/craneProject/assemblyTest/CK5/split-adapter-quality-trimmed/CK5-READ2.fastq.gz
[compute1:78513] mca_base_component_repository_open: unable to open mca_oob_ud: libosmcomp.so.3: cannot open shared object file: No such file or directory (ignored)
[compute1:78513] pmix_mca_base_component_repository_open: unable to open mca_pnet_opa: libpsm2.so.2: cannot open shared object file: No such file or directory (ignored)
[compute1:78519] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78518] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78518] OPAL ERROR: Error in file pmix3x_client.c at line 112
[compute1:78519] OPAL ERROR: Error in file pmix3x_client.c at line 112
[compute1:78520] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78528] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78528] OPAL ERROR: Error in file pmix3x_client.c at line 112
[compute1:78532] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78533] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78520] OPAL ERROR: Error in file pmix3x_client.c at line 112
[compute1:78523] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78523] OPAL ERROR: Error in file pmix3x_client.c at line 112
[compute1:78524] PMIX ERROR: OUT-OF-RESOURCE in file client/pmix_client.c at line 227
[compute1:78524] OPAL ERROR: Error in file pmix3x_client.c at line 112
...
...

Running ABySS 2.2.4 (latest version in bioconda; installed in a seperate conda environment) works fine, though. I think this suggests that ABySS 1.5.2 doesn't interact well with Open MPI version on the HPC cluster (mpirun --version = 3.0.0)?

I tried to figure out a way to at least try running the phyluce script with the newer version of ABySS, but I can't figure out a way to have both phyluce and ABySS 2.2.4 in the same conda environment. Do you know of a way to do this? Do you know any other workarounds? Is there a specific reason that using ABySS >1.5.2 would fail? I'm pretty new to bioinformatics, so I apologize if some of this information isn't helpful. I can get you any info you need. I'd really prefer to use ABySS over the other assemblers if at all possible.

cat /etc/os-release gives, if having this information helps at all:

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

Thanks for your time

brantfaircloth commented 4 years ago

No problem. There's something weird going on w/ your HPC setup and ABySS. Probably your best bet is to get ABySS built/installed on your HPC (either for your user or for all users - depends on how the system works and what your sysadmin advises). Then you can edit the config file for phyluce to point to the ABySS you have built/installed.

To do that, build/install/test/activate ABySS. Then you simply need to create a file at ~/.phyluce.conf that contains:

[binaries]
abyss:/path/to/ABYSS
abyss-pe:/path/to/abyss-pe

where you replace /path/to with the correct path to your new installation of ABySS. Also, you should generally keep the version you build and install close to that expected by phyluce, so that no file format issues crop up that could cause problems.

Hope that helps, b

PopGen33 commented 4 years ago

Thank you very much for the quick response! I'll talk to our research computing folks about that. I appreciate your help.