Bioperl: running local blasts

Joey Morris rjmorris@unity.ncsu.edu
Fri, 23 Jun 2000 13:20:06 -0400


Okay, so I've done a bit more tinkering, and here's a really strange thing.
I wrote a function called _test_me which just prints "testing" and put this
function in Bio/Root/RootI.pm right after where _rearrange is defined. Next,
in Bio/Root/Object.pm (which inherits from RootI.pm), I added &_test_me to
the @EXPORT_OK array, right after &_rearrange. Finally, in LocalBlast.pm I
changed the line

use Bio::Root::Object    qw(&_rearrange);

to

use Bio::Root::Object    qw(&_rearrange &_test_me);

and placed a call to _test_me right above the call to _rearrange inside
blast_local. So basically I've created a function  that is defined,
inherited, etc. exactly as _rearrange is. And guess what happens? The
_test_me function is found and executes but the _rearrange call generates
the undefined subroutine error.

So then I noticed that _rearrange is called again later in the code, but as

&Bio::Root::Object::_rearrange($_blastObj, ...)

(in _set_options) and so I changed the call in blast_local to be

&Bio::Root::Object::_rearrange($bobj, ...)

and this generated the error:

*** 1 Blast reports produced fatal errors:
Can't run local BLAST: failed to obtain parameters using _rearrange().
Make sure that the first argument is a Bio::Tools::Blast.pm object.
 at /local/lib/perl/lib/Bio/Tools/Blast.pm line 1284

If it makes any difference I'm running Solaris 2.5.1

Joey


Alan Williams wrote on Jun 22 at 01:24 pm:
> 
> Does your LocalBlast.pm module have the following near the top:
> 
> use Bio::Root::Object qw(&_rearrange);
> 
> -A
> 
> ---------------------------------
> Alan Williams
> Neomorphic, Inc.
> Alan@Neomorphic.com
> 510-981-8513
> ---------------------------------
> 
> On Wed, 21 Jun 2000, Joey Morris wrote:
> 
> > Date: Wed, 21 Jun 2000 15:58:13 -0400
> > From: Joey Morris <rjmorris@unity.ncsu.edu>
> > To: vsns-bcd-perl@lists.uni-bielefeld.de
> > Subject: Bioperl: running local blasts
> > 
> > Can anyone tell me if they are successfully running local blast searches
> > using the LocalBlast.pm module? I just downloaded 0.6.1 and I get this error
> > when running a local blast:
> > 
> > *** 1 Blast reports produced fatal errors:
> > Undefined subroutine &Bio::Root::Object::_rearrange called at
> > /local/lib/perl/lib/Bio/Tools/Blast/Run/LocalBlast.pm line 309.
> > 
> > I experienced the same issue with 0.6.0 but not with the 0.05.1 release.
> > I've reported it as a bug but there's been no progess on it apparently.
> > 
> > Thanks,
> > Joey
=========== Bioperl Project Mailing List Message Footer =======
Project URL: http://bio.perl.org/
For info about how to (un)subscribe, where messages are archived, etc:
http://www.techfak.uni-bielefeld.de/bcd/Perl/Bio/vsns-bcd-perl.html
====================================================================