[Bioperl-l] more question regarding RemoteBlast.pm version 1.28

Chris Fields cjfields at uiuc.edu
Fri Feb 3 21:07:29 UTC 2006


I would say give the new code a try, but realize that it hasn't been checked
in (like I said below).  I will try going over the modified
Bio::SearchIO::blast again this weekend to see if there is anything I might
have missed.  The changed order in the header of BLAST text output has me a
bit worried that it might not catch everything, but it at least doesn't hang
in the while() loop I described in the bug report below (bug #1934) and
seems to process everything fine.

If you want more stability in the code, you might consider changing over to
XML output and parsing with Bio::SearchIO::blastxml.  There are some changes
in Bio::Tools::Run::RemoteBlast (bug #1935) that accommodate saving XML
output, but I believe it parses everything regardless.  If you look back the
last month or so there has been a bit of discussion here about it.  Jason
describes a bit on how to set up RemoteBlast for XML:

http://bioperl.org/news/2005/11/06/getting-blastxml-using-remoteblast/

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 Guojun Yang
> Sent: Friday, February 03, 2006 1:45 PM
> To: bioperl-l at bioperl.org
> Subject: [Bioperl-l] more question regarding RemoteBlast.pm version 1.28
> 
> Hi, Everybody,
> I see this post and am wondering if this is the reason for the
> malfunctionning of my webserver. We set up a webserver named MAK, for MITE
> sequence analysis. It was working very well until around November 2005,
> when it stopped returning any result (the site is fine and seems to be
> doing sth after submission).  In the CGI script, I used remoteblast (that
> work was done in 2003) to do searches. I currently do not have access to
> the server because I moved. Quite several people sent emails to us about
> its malfunctioning. Is there any suggestion on fixing the problem?  Should
> I simplily ask the remoteblast.pm be replaced with the new version?
> Thanks a lot,
> Guojun
> 
> Department of Plant Biology
> University of Georgia
> Tel: 706-542-1857
> Fax: 706-542-1805
> http://www.arches.uga.edu/~guojun
>       _____
> 
>   From: Chris Fields [mailto:cjfields at uiuc.edu]
> To: 'Nagesh Chakka' [mailto:nagesh.chakka at anu.edu.au], 'Huang Jian'
> [mailto:hjian at kuicr.kyoto-u.ac.jp], 'bioperl-l' [mailto:bioperl-
> l at bioperl.org]
> Sent: Fri, 03 Feb 2006 10:45:23 -0500
> Subject: Re: [Bioperl-l] RemoteBlast.pm version 1.28
> 
> 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
> 
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
> 
> 
> 
> _______________________________________________
> 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