0
$\begingroup$

I keep getting the error while using E-utilities on Slurm HPC, could you suggest how I can resolve it?

SCRIPT:

#!/bin/bash
#SBATCH --job-name=tax_job_test      # Job name
#SBATCH --mail-type=END,FAIL         # Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH --mail-user=na@gmail.com    # Where to send mail
#SBATCH --ntasks=8                  # Number of MPI ranks
#SBATCH --nodes=1                    # Number of nodes
#SBATCH --time=23:05:00              # Time limit hrs:min:sec
#SBATCH --partition=k2-medpri

module load e-utilities/03.02.19
module load apps/perl/5.20.2/gcc-4.8.5


for i in `cat taxonomy.id.txt` ; do efetch -db nuccore -format gbc -id ${i} |xtract  -pattern INSDSeq -element INSDSeq_accession-version INSDSeq_taxonomy INSDSeq_organism >>taxo.2020.txt; done

input taxonomy.id.txt is like this:

AKN43077.1
AKN41814.1
PNE10086.1
AKN42672.1
AKN41654.2
AKN43077.1
PNE10086.1
AKN43189.1
TMK08501.1
TMK08501.1
AKN42976.1
AKN43189.1
AIZ47938.1

Error:

The script keep giving below error:

501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
No do_post output returned from 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=nuccore&id=AKN43077.1
&rettype=gbc&retmode=xml&edirect_os=linux&edirect=11.7&tool=edirect&email=3052771@node126.pri.kelvin2.alces.network'

Result of do_post http request is

$VAR1 = bless( {
                 '_rc' => 501,
                 '_request' => bless( {
                                        '_method' => 'POST',
                                        '_uri' => bless( do{\(my $o = 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi')}, 'URI::https' ),
                                        '_content' => 'db=nuccore&id=AKN43077.1  
&rettype=gbc&retmode=xml&edirect_os=linux&edirect=11.7&tool=edirect&email=3052771@node126.pri.kelvin2.alces.network',
                                        '_headers' => bless( {
                                                               'content-type' => 'application/x-www-form-urlencoded',
                                                               'user-agent' => 'libwww-perl/6.39'
                                                             }, 'HTTP::Headers' )
                                      }, 'HTTP::Request' ),
                 '_content' => 'LWP will support https URLs if the LWP::Protocol::https module
is installed.
',
                 '_headers' => bless( {
                                        'client-warning' => 'Internal response',
                                        '::std_case' => {
                                                          'client-warning' => 'Client-Warning',
                                                          'client-date' => 'Client-Date'
                                                        },
                                        'client-date' => 'Mon, 05 Oct 2020 14:27:37 GMT',
                                        'content-type' => 'text/plain'
                                      }, 'HTTP::Headers' ),

Many thanks

$\endgroup$
2
$\begingroup$

501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed) indicates that a specific perl module is missing.

If indeed your edirect installation is from March 2019 (as I interpret from e-utilities/03.02.19), you should update your edirect installation to the latest version. If you update, I expect the necessary perl module will be installed and the error will go away.

$\endgroup$
2
  • $\begingroup$ Ah! of course ... consider using CPAN to load the module $\endgroup$
    – M__
    Oct 5 '20 at 18:40
  • $\begingroup$ I just downloaded the script install-edirect.sh from this link ((ncbi.nlm.nih.gov/books/NBK179288), then execute it by running: source ./install-edirect.sh and it works well! Many thanks $\endgroup$ Oct 6 '20 at 10:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.