This is a test version of Biostars. For the public version, visit https://www.biostars.org.
OMA Internet connection error - SLURM

Hello,

I am trying to run OMA standalone (https://omabrowser.org/standalone) on a SLURM cluster. However, when I try to run the first step as explained in the cheatsheet (https://lab.dessimoz.org/blog/media/2020/04/omastandalone_cheat_sheet.pdf) I get an error saying the following repeatedly:

--2021-11-22 17:03:58--  http://purl.obolibrary.org/obo/go.obo
Resolving purl.obolibrary.org (purl.obolibrary.org)... 52.3.123.63
Connecting to purl.obolibrary.org (purl.obolibrary.org)|52.3.123.63|:80... failed: Connection timed out.
Retrying.

I know the error is because the cluster nodes do not have access to the Internet and cannot, therefore, download the databases required. However, I don't know how to modify the concerned scripts (darwinlib/Ontology and darwinlib/Taxonomy) to bypass the issue. Here is a section of the code affected:

##############################################
# Download a new GO definition file from the #
# webpage.                                      #
##############################################
GOdownload := proc()
rawfile := trim(TimedCallSystem('if ! which mktemp >/dev/null 2>&1; then printf "nomktemp"; else mktemp; fi', 10)[2]);
if rawfile='nomktemp' then rawfile := '/tmp/GOrawfile.tmp.'.Rand(10000..99999); fi:
DownloadURL('http://purl.obolibrary.org/obo/go.obo',
        rawfile);
ConvertRawFile(rawfile);
CallSystem('rm -f '.rawfile);
end:

##############################################
# Download a new Taxonomy file from the      #
# webpage.                                   #
##############################################
TaxonomyDownload := proc()
DownloadURL('https://www.uniprot.org/taxonomy/?query=*&compress=yes&format=tab',
        rawfile);
ConvertRawFile();
CallSystem('rm -f '.rawfile);
end:

Any ideas on how to code it?

Thank you!

Best

oma orthologs

1 answer

Hi Samuel,

I think you simply don't have access to the internet from the compute nodes on your cluster. The simplest solution is to run the initial conversion step (oma -c) on the login node. This normally isn't taking very long, so usually this isn't a problem.

An alternative might be to set an environment variable to a proxy gateway, but that depends a lot on your cluster configuration.

Best wishes, Adrian

Log in to answer this question.