Add more error checks on taxonomy reading

Former-commit-id: 30c848d8e61214afcc7d92f0d3a3f5a1474fc720
This commit is contained in:
2023-12-14 08:09:06 +01:00
parent 2caaa62485
commit b9a7961c91
3 changed files with 25 additions and 3 deletions

View File

@ -22,9 +22,22 @@ func loadNodeTable(reader io.Reader, taxonomy *obitax.Taxonomy) {
file.TrimLeadingSpace = true
file.ReuseRecord = true
n := 0
for record, err := file.Read(); err == nil; record, err = file.Read() {
taxid, _ := strconv.Atoi(strings.TrimSpace(record[0]))
parent, _ := strconv.Atoi(strings.TrimSpace(record[1]))
n++
taxid, err := strconv.Atoi(strings.TrimSpace(record[0]))
if err != nil {
log.Panicf("Cannot read taxid at line %d: %v", n, err)
}
parent, err := strconv.Atoi(strings.TrimSpace(record[1]))
if err != nil {
log.Panicf("Cannot read parent taxid at line %d: %v", n, err)
}
rank := strings.TrimSpace(record[2])
taxonomy.AddNewTaxa(taxid, parent, rank, true, true)

View File

@ -11,6 +11,14 @@ import (
)
func (t1 *TaxNode) LCA(t2 *TaxNode) (*TaxNode, error) {
if t1 == nil {
log.Fatalf("Try to get LCA of nil taxon")
}
if t2 == nil {
log.Fatalf("Try to get LCA of nil taxon")
}
p1, err1 := t1.Path()
if err1 != nil {

View File

@ -118,7 +118,8 @@ func IndexSequence(seqidx int,
log.Println(sequence.Id(), tseq.Taxid(), tseq.ScientificName(), tseq.Rank(), nfastok)
log.Println(sequence.Id(), tseq.Taxid(), tseq.ScientificName(), tseq.Rank(), nali)
log.Println(sequence.Id(), tseq.Taxid(), tseq.ScientificName(), tseq.Rank(), nok)
*/return obitag_index
*/
return obitag_index
}
func IndexReferenceDB(iterator obiiter.IBioSequence) obiiter.IBioSequence {