[Bioperl-l] bl2seq overflow

Alexandre Irrthum Alexandre.Irrthum at icr.ac.uk
Fri Mar 5 06:26:28 EST 2004

Hello bioperl people,

I have a strange problem here. I am trying to blast (bl2seq) EST
sequences against a reference cDNA. In this test, the EST file comprises
> 2000 sequences. Here is the skeleton of the program (sorry if it's
formatted improperly):

#! /usr/bin/perl

use warnings;
use strict;
use Bio::Tools::Run::StandAloneBlast;
use Bio::SeqIO;

my $factory = Bio::Tools::Run::StandAloneBlast->new(program =>'blastn');
my $refseqio = Bio::SeqIO->new(-file => 'refseq.fasta',                 
       -format => 'Fasta');
my $refseq = $refseqio->next_seq();
my $estseqio = Bio::SeqIO->new(-file => 'ests.fasta',              
-format => 'Fasta');
my $count = 0;
while (my $estseq = $estseqio->next_seq()) {              $count++;
my $report = $factory->bl2seq($estseq, $refseq);
if (my $hsp = $report->next_feature()) {
my $query_seq = $hsp->querySeq();
my $sbjct_seq = $hsp->sbjctSeq();
print "COUNT: $count\n";
print "QUERY: $query_seq\n";
print "SBJCT: $sbjct_seq\n";

The program crashes with the following message, after successfully
blasting 1020 sequences. Always after 1020 blasts, even when I
reorganize the EST input file. 

--------------program output-------------------
Can't locate Carp/Heavy.pm in @INC (@INC
/usr/lib/perl5/5.8.0 .) at/usr/lib/perl5/5.8.0/Carp.pm line 178, <GEN1>
line 1021.

I don't know why bioperl cannot find Carp and Carp::heavy, since they
are in /usr/lib/perl5/5.8.0/. Anyhow, when I add "use Carp;" and
"useCarp::Heavy;", I get this:

---------------program output---------------
Error in tempfile() using /tmp/XXXXXXXXXX: Could not create temp
file/tmp/C5b2L4SloO: Too many open files
at/usr/lib/perl5/site_perl/5.8.0/Bio/Root/IO.pm line 659

There are no blast temporary files in /tmp. I'm clueless.

Many thanks to the bioperl developers for the fantastic tool they've
built us.


More information about the Bioperl-l mailing list