[Bioperl-l] RemoteBlast.pm version 1.28

Chris Fields cjfields at uiuc.edu
Fri Feb 3 10:45:23 EST 2006


Like Nagesh says, try the latest RemoteBlast from bioperl-live CVS.  It will
work for saving text output.  However, it will not parse anything using
next_result (it will likely hang) and will not save XML format.  See these
bugs:

http://bugzilla.bioperl.org/show_bug.cgi?id=1934
http://bugzilla.bioperl.org/show_bug.cgi?id=1935

for explanations and possible fixes (changes to RemoteBlast and
Bio::SearchIO::blast).  Note that these haven't been checked in yet so are
still not included in bioperl-live; they may be further modified before
committing to CVS.  If you're not worried about XML, you could just try the
first fix, which is a change to SearchIO::blast.

Nagesh, I remember you posting to the list a month ago using a script which
had problems; the script you used saves the output but doesn't actually
parse it (i.e. you don't use next_result() to go through the data).  Is the
version of BLAST in your text output 2.2.12 or 2.2.13?  Have you tried
parsing the output using "-readmethod => SearchIO" or "-readmethod => blast"
using your version of RemoteBlast and method next_result()? Like below (from
perldoc):  

        while ( my @rids = $factory->each_rid ) {
          foreach my $rid ( @rids ) {
            my $rc = $factory->retrieve_blast($rid);
            if( !ref($rc) ) {
              if( $rc < 0 ) {
                $factory->remove_rid($rid);
              }
              print STDERR "." if ( $v > 0 );
              sleep 5;
            } else { 				 		# parsing
starts here
              my $result = $rc->next_result(); 		# it should hang
here
              #save the output
              my $filename = $result->query_name()."\.out";
              $factory->save_output($filename);
              $factory->remove_rid($rid);
              print "\nQuery Name: ", $result->query_name(), "\n";
              while ( my $hit = $result->next_hit ) {
                next unless ( $v > 0);
                print "\thit name is ", $hit->name, "\n";
                while( my $hsp = $hit->next_hsp ) {
                  print "\t\tscore is ", $hsp->score, "\n";
                }
              }
            }
          }
        }
      }


My script hanged if I used next_result() in any way prior to the fixes.  I
want to see how many others are having the same issues with parsing using
the CVS version of bioperl-live.

Christopher Fields
Postdoctoral Researcher - Switzer Lab
Dept. of Biochemistry
University of Illinois Urbana-Champaign 

> -----Original Message-----
> From: bioperl-l-bounces at lists.open-bio.org [mailto:bioperl-l-
> bounces at lists.open-bio.org] On Behalf Of Nagesh Chakka
> Sent: Thursday, February 02, 2006 7:24 PM
> To: Huang Jian; bioperl-l
> Subject: Re: [Bioperl-l] RemoteBlast.pm version 1.28
> 
> Hi Huang,
> Thanks for the message. The older version of RemoteBlast.pm works on the
> logic of checking the temporary file size to determine whether the Blast
> results are ready. This condition is not getting satisfied may be due to
> some changes brought about by NCBI. I had this problem recently and
> figured out that the solution was to use the latest version which has
> this problem fixed (does not use file size logic any more) which is not
> yet included in the BioPerl package.
> Cheers
> Nagesh
> 
> Huang Jian wrote:
> 
> > Dear Nagesh,
> >
> > I have replaced my old RemoteBlast.pm (v 1.17) with v 1.28 you send
> > me. Now it works perfectly!!!
> >
> > Thank you!!
> >
> > Huang
> >
> > ----- Original Message ----- From: "Nagesh Chakka"
> > <nagesh.chakka at anu.edu.au>
> > To: "Huang Jian" <hjian at kuicr.kyoto-u.ac.jp>; "bioperl-l"
> > <bioperl-l at bioperl.org>
> > Sent: Friday, February 03, 2006 7:48 AM
> > Subject: Re: [Bioperl-l] Sorry, failure in post on the net, so still
> > via email
> >
> >
> >> Hi Huang,
> >> I see that you are submitting a sequence for a remote blast search. Can
> >> you check if the RemoteBlast.pm being used is v 1.28 (2005/12/09). If
> >> not I have attached it with this email, try to replace it with the old
> >> one which has a bug.
> >> Let me know if it works.
> >> Nagesh
> >
> >
> >
> 
> _______________________________________________
> 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