[Bioperl-l] Blast return codes
Matthew Laird
lairdm at sfu.ca
Wed Dec 10 16:40:28 EST 2003
Well, that's a step in the right direction, I have a little more
information now. I added a $! before the $? and received:
------------- EXCEPTION -------------
MSG: blastall call crashed: -1 No child processes
/usr/local/blast/blastall -p blastp -d
/usr/local/psort/conf/analysis/sclblast/sclblast -i /tmp/8Dt6zF1U59 -e
1e-09 -o /tmp/ojP9n04LZh
STACK Bio::Tools::Run::StandAloneBlast::_runblast
/usr/lib/perl5/site_perl/5.8.0/Bio/Tools/Run/StandAloneBlast.pm:640
This is where we get into Perl voodoo beyond my league, "No child
processes" - does that ring bells for anyone? Thanks again.
On 10 Dec 2003, Keith James wrote:
> >>>>> "Matthew" == Matthew Laird <lairdm at sfu.ca> writes:
>
> Matthew> Thanks for the replay, the error is as follows: Fatal
> Matthew> error: ------------- EXCEPTION ------------- MSG:
> Matthew> blastall call crashed: -1 /usr/local/blast/blastall -p
> Matthew> blastp -d
> Matthew> /usr/local/psort/conf/analysis/sclblast/sclblast -i
> Matthew> /tmp/rvtNYtglud -e 1e-09 -o /tmp/jFVFD1Pxt3
>
> I think the previous reply could have hit the answer i.e. the -1 means
> that blast is not getting run at all (perldoc system seems to confirm
> this).
>
> The code in StandAloneBlast is
>
> my $status = system($commandstring);
>
> $self->throw("$executable call crashed: $? $commandstring\n")
> unless ($status==0) ;
>
> Perl seems to set $? to a value (-1 again) even though the child
> process never starts. It may be worth including $! in the error
> message if the system call fails as this may be helpful.
>
> e.g.
>
> perl -e '$a = system("flub"); $a and print "$a : $?, $!\n"
>
> -1 : -1, No such file or directory
>
> Unfortunately I can't shed any light on the crux of your problem...
>
> Keith
>
>
--
Matthew Laird
SysAdmin/Web Developer, Brinkman Laboratory, MBB Dept.
Simon Fraser University
More information about the Bioperl-l
mailing list