[Bioperl-l] tempfile problem with standalone blast

Chris Fields cjfields at illinois.edu
Sat Jun 5 10:56:49 UTC 2010


We do have the cleanup() method if caching, but in practice I've found that caching is very rarely ever needed.

chris

On Jun 4, 2010, at 12:51 PM, Gopal wrote:

> Hi Chris,
> 
> I followed your suggestion and changed the loop into:
> 
> On Fri, Jun 4, 2010 at 12:44 PM, Chris Fields <cjfields at illinois.edu> wrote:
> 
>> 
>>>    while( my $input = $seqio_obj->next_seq() ) {
>>> #
>>>     $blast_report = $blast_obj->blastall($input);
>>> 
>>>     push(@reports,$blast_report);
>>> 
>>>     }
>>> ...
>> 
>> Yep, you're caching your SearchIO instances here.  No need;
> 
> 
> 
> 
>  while( my $input = $seqio_obj->next_seq() ) {
> $blast_report = $blast_obj->blastall($input);
> 
> 
>        while(my $result=$blast_report->next_result){
> 
> Now no objects are cached in arrays.  The script worked fine with one genome
> already and the other is running.
> thanks for cleaning things up. I will remember to avoid this snag.
> 
> best,
> 
> -gopal
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
>> if you want to cache you should cache the Result object instead.  Something
>> like
>> 
>> push(@reports, $blast_report->next_result);
>> 
>> Probably best to rethink this strategy unless you have absolutely no other
>> way to deal with your data, if you have lots of BLAST reports you will suck
>> up memory very quickly.
>> 
>>> --
>>> Gopal Gopinathrao, PhD
>>> Bioinformaticist / Biologist
>>> CFSAN, US FDA
>>> www.patrn.net/patrn
>>> gopal.gopinathrao at fda.hhs.gov
>>> P: 301-210-7881
>> 
>> 
>> chris
> 
> 
> 
> 
> -- 
> Gopal Gopinathrao, PhD
> Bioinformaticist / Biologist
> CFSAN, US FDA
> www.patrn.net/patrn
> gopal.gopinathrao at fda.hhs.gov
> P: 301-210-7881
> _______________________________________________
> 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