Changeset 225

Show
Ignore:
Timestamp:
06/22/09 16:20:18 (5 months ago)
Author:
cholt
Message:

fix more mpi_iprscan

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • MPI/mpi_iprscan

    r224 r225  
    173173           "cli" => \$cli, #just used to strip off the option 
    174174           ); 
     175 
     176$main::quiet = 1; #suppress status messages 
    175177 
    176178if(! @appl){ 
     
    750752                push (@chunks, $o_chnk); 
    751753            } 
    752             #get chunk results from other nodes 
    753             while(my $res = shift @returned_chunks){ 
    754                 $res = ${thaw($res)}; 
    755                 $tier->update_chunk($res); 
    756             } 
    757  
    758             #run the tier as far as possible 
    759             $tier->run; 
    760              
    761             #get all chunks available 
    762             my $chnk = $tier->next_chunk; 
    763             while(my $o_chnk = $tier->next_chunk){ 
    764                 $o_chnk = freeze(\$o_chnk); 
    765                 push (@chunks, $o_chnk); 
    766             } 
    767754             
    768755            #run chunks one at a time 
  • lib/Process/IPRchunk.pm

    r221 r225  
    8282      $VARS->{seq_id} = Fasta::getSeqID(\$VARS->{fasta}); 
    8383      $VARS->{safe_id} = Fasta::seqID2SafeID($VARS->{seq_id}); 
    84  
    85       $VARS->{DS_CTL}->add_entry($VARS->{seq_id}, 'STARTED'); 
    8684      $VARS->{c_flag} = $VARS->{DS_CTL}->continue_flag($VARS->{seq_id}); 
    8785 
    8886      my $failed .= "$outname.failed/".$VARS->{safe_id}.".fasta"; 
     87 
    8988      if(! $VARS->{c_flag}){ 
    9089          warn "WARNING: ".$VARS->{seq_id} ."failed 2 time and will not be tried again\n", 
     
    9695          print $OUT $VARS->{fasta}; 
    9796          close($OUT); 
     97          $VARS->{DS_CTL}->add_entry($VARS->{seq_id}, 'DIED_PERMANENT'); 
    9898      } 
    9999      else{ 
    100100          unlink($failed) if(-e $failed); #remove old failed 
    101101      } 
     102 
     103      $VARS->{DS_CTL}->add_entry($VARS->{seq_id}, 'STARTED'); 
    102104   } 
    103105   catch Error::Simple with { 
     
    305307 
    306308            my $w = new Widget::iprscan(); 
    307             print STDERR "running iprscan $app...\n"
     309            print STDERR "running iprscan $app...\n" unless($main::quiet)
    308310            $w->run($command); 
    309311 
  • lib/Widget/iprscan.pm

    r221 r225  
    3636           my $pid = open3(\*CHLD_IN, \*CHLD_OUT, \*CHLD_ERR, $command); 
    3737           local $/ = \1; 
     38           my $err; 
    3839           while (my $line = <CHLD_ERR>){ 
    3940              print STDERR $line unless($main::quiet); 
     41              $err .= $line; 
    4042           } 
    4143           waitpid $pid, 0; 
     44            
     45           my $fail; 
     46           if($err !~ /^SUBMITTED iprscan-\d+-\d+\n*$/){ 
     47               $fail = 1; 
     48           } 
     49 
     50           die "ERROR: Iprscan failed\n" if ($? != 0 || $fail); 
    4251        } 
    4352        else {