Changeset 248
- Timestamp:
- 08/31/09 08:34:40 (3 months ago)
- Files:
-
- lib/GI.pm (modified) (5 diffs)
- lib/Widget/blastn.pm (modified) (1 diff)
- lib/Widget/blastx.pm (modified) (1 diff)
- lib/Widget/tblastx.pm (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
lib/GI.pm
r247 r248 215 215 if (not $fastaObj) { 216 216 #rebuild index and try again 217 my $db_file = $db_index->{dirname} ."/". $db_index->{offsets}->{__file_0}; 217 my $db_file = $db_index->{dirname}."/".$db_index->fileno2path(0); 218 print STDERR "WARNING: Cannot find ".$hit->name.", trying to re-index $db_file\n"; 218 219 $db_index = Bio::DB::Fasta->new($db_file, '-reindex' => 1); 219 220 $fastaObj = $db_index->get_Seq_by_id($hit->name); … … 256 257 my $keepers = blastn($chunk, 257 258 $t_file, 258 undef,259 259 $the_void, 260 260 $p_safe_id.".".$piece->[0]->{b}.".".$piece->[0]->{e}, … … 587 587 588 588 #write fastas here 589 my %alias; 589 590 my $FA; 590 591 open($FA, "> $t_full"); #full file 591 592 while (my $fasta = $fasta_iterator->nextEntry()) { 592 593 my $def = Fasta::getDef(\$fasta); 594 my $seq_id = Fasta::def2SeqID($def); 593 595 my $seq_ref = Fasta::getSeqRef(\$fasta); 594 596 … … 601 603 #Skip empty fasta entries 602 604 next if($$seq_ref eq ''); 605 606 #fix weird blast trimming error for long seq IDs by replacing them 607 if(length($seq_id) > 78){ 608 my $new_id = substr($seq_id, 0, 78); 609 die "ERROR: The id $seq_id is too long for BLAST, and I can'y uniquely fix it\n" 610 if($alias{$new_id}); 611 $alias{$new_id}++; 612 $def =~ s/^>/>$seq_id maker_alias=/; 613 } 603 614 604 615 #reformat fasta, just incase … … 1020 1031 if (not $fastaObj) { 1021 1032 #rebuild index and try again 1022 my $db_file = $db_index->{dirname} ."/".$db_index->{offsets}->{__file_0}; 1033 my $db_file = $db_index->{dirname}."/".$db_index->fileno2path(0); 1034 print STDERR "WARNING: Cannot find> ".$hit->name.", trying to re-index $db_file\n"; 1023 1035 $db_index = Bio::DB::Fasta->new($db_file, '-reindex' => 1); 1024 1036 $fastaObj = $db_index->get_Seq_by_id($hit->name); lib/Widget/blastn.pm
r207 r248 99 99 $hit->queryLength($result->query_length); 100 100 $hit->queryName($result->query_name); 101 101 if($hit->description() =~ /maker_alias=(\S+)/){ 102 $hit->name($1); 103 } 104 102 105 my @hsps; 103 106 while(my $hsp = $hit->next_hsp) { lib/Widget/blastx.pm
r207 r248 99 99 $hit->queryLength($result->query_length); 100 100 $hit->queryName($result->query_name); 101 101 if($hit->description() =~ /maker_alias=(\S+)/){ 102 $hit->name($1); 103 } 102 104 my @hsps; 103 105 while(my $hsp = $hit->next_hsp) { lib/Widget/tblastx.pm
r207 r248 99 99 $hit->queryLength($result->query_length); 100 100 $hit->queryName($result->query_name); 101 if($hit->description() =~ /maker_alias=(\S+)/){ 102 $hit->name($1); 103 } 101 104 102 105 my @hsps;
