[Bioperl-l] looks like a Bio::SeqIO error

Mark A. Jensen maj at fortinbras.us
Fri May 15 10:03:36 EDT 2009


fungazid-

One thing to do is to clean up your /tmp directory.
Another thing to try is to specify the temporary directory where the tempfiles 
are created according to the perldoc for
largefasta.pm:

       This module handles very large sequence files by using the
       Bio::Seq::LargePrimarySeq module to store all the sequence data in a
       file.  This can be a problem if you have limited disk space on your
       computer because this will effectively cause 2 copies of the sequence
       file to reside on disk for the life of the Bio::Seq::LargePrimarySeq
       object.  The default location for this is specified by the
       File::Spec->tmpdir routine which is usually /tmp on UNIX.  If a
       sequence file is larger than the swap space (capacity of the /tmp dir)
       this could cause problems for the machine.  It is possible to set the
       directory where the temporary file is located by adding the following
       line to your code BEFORE calling next_seq. See
       Bio::Seq::LargePrimarySeq for more information.

This will give you more control over where the big seqs are cached.
You also may be inadvertently creating tempfiles in your code somewhere on each 
loop.

If a bug extremely irritates you, you may direct your irritation to 
http://bugzilla.bioperl.org. Read 
http://www.bioperl.org/wiki/Bugs#Submitting_Bugs before you do.

Thanks for using BioPerl, and have a great day.
Mark


----- Original Message ----- 
From: "fungazid" <fungazid at yahoo.com>
To: <Bioperl-l at lists.open-bio.org>
Sent: Friday, May 15, 2009 9:17 AM
Subject: [Bioperl-l] looks like a Bio::SeqIO error


>
> Hello,
>
> I hope this is the right address for bioperl programming issues. Bioperl
> saves me a lot of time (not to re-invent the wheel), but there are some
> extremely irritating problems (I would change the code myself if I knew
> how).
>
> I am trying to read a file (~20MB) containing multiple fasta sequences:
>>a
> AGTAGTGAGTGCGCTGA.........
>>b
> GCGCTGAAGTAGTGAGT.......
>>c
> AGTAGTGAGTGCGCTGA.........
>>d...........
>
> with the following lines:
>
> my $seqin = Bio::SeqIO->new('-format'=>'largefasta','-file'=>$file1);
>
> LOOP1: while ( my $seqobj1 = $seqin->next_seq())
>
> {
> ......
> my $seq=$seqobj1->subseq(1,$seqobj1->length);
> .......
> }
>
>
> This works right for the first ~30000 contig sequences but then the
> following message appears:
>
> Error in tempdir() using /tmp/XXXXXXXXXX: Could not create directory
> /tmp/6eS92VzVjm: Too many links at /usr/share/perl5/Bio/Root/IO.pm line 744
>
> What to do ??? (this is only one of some different Bioperl related bugs that
> I'm experiencing)
>
>
>
>
> -- 
> View this message in context: 
> http://www.nabble.com/looks-like-a-Bio%3A%3ASeqIO-error-tp23559474p23559474.html
> Sent from the Perl - Bioperl-L mailing list archive at Nabble.com.
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>
> 



More information about the Bioperl-l mailing list