本地 BLAST NCBI C++ 异常

Local BLAST NCBI C++ Exception

我在尝试对本地 nt 数据库使用 blast v2.12 时遇到错误。我已经从 ftp 服务器下载了 nt 两次,第一次认为它已损坏,但并没有改变任何东西。

我的命令是:

blastn -db nt -num_threads 8 -outfmt "6 qseqid sacc stitle ssciname nident qlen" -num_alignments 10000 -query QUERY > OUT.csv

错误是:

Error: NCBI C++ Exception:
    T0 "/build/ncbi-blast+-S1iyIZ/ncbi-blast+-2.9.0/c++/src/serial/objistrasnb.cpp", line 499: Error: byte 90: overflow error ( at [].[].gi)
    T0 "/build/ncbi-blast+-S1iyIZ/ncbi-blast+-2.9.0/c++/src/serial/member.cpp", line 769: Error: ncbi::CMemberInfoFunctions::ReadWithSetFlagMember() - error while reading seqid ( at Blast-def-line-set.[].[].seqid.[].[].gi)

我试过多次查询。以下实际有效:

TGTTCACACCTCACTTCTTAACTATTATATCATTATTTTGACAAACAGACTACAAATGTAATATTATTGGATTACATTTGTAGTACAAAAGGAGGAAGAGATGAAAAAAATTTATATTAGTGTGCTAGTTCTTTTACTAATTATGATTATAATAACTTGGTTATTCAAAGATGACGATATTGAGAAAACAATTAGTTCTATTGAAAAAGGAAACTATAACGAAGTATATAAAAATAGTTCAGAAAAATCTAAACTGGCATATGGAGAAGAAGAAATTGTAGATAGGAATAAAAAAATTTACAAAGATTTAAGTGTCAATAACTTAAAAATTACTAATCATGAAATTAAAAAAACTGGAAAAGATAAAAAGCAAGTTGATGTTAAATATAACATATATACAAAATATGGAACTATACGACGTAATACACAATTAAACTTTATTTATGAAGATAAGCATTGGAAATTAGATTGGAGACCAGACGTAATAGTACCTGGTTTGAAAAATGGACAGAAAATTAATATAGAAACATTAAAATCAGAGCGAGGCAAAATAAAAGATAGAAATGGTATAGAATTAGCTAAAACTGGAAATACATATGAAATCGGTATTGTCCCTAACAAAACACCCAAAGAAAAATATGATGATATTGCTCGTGACTTACAAATTGATACAAAAGCTATAACCAATAAAGTTAATCAAAAATGGGTTCAGCCAGATTCATTTGTACCAATTAAAAAGATAAATAAACAAGATGAATATATAGACAAATTAATTAAATCATACAATTTACAAATAAACACTATAAAAAGCCGTGTTTATCCATTGAACGAAGCAACAGTACACCTTTTAGGTTATGTGGGTCCAATTAATTCTGACGAGTTAAAAAGTAAGCAATTTAGAAACTATAGCAAAAATACTGTTATTGGAAAAAAAGGCTTAGAACGCCTCTATGATAAACAATTGCAAAACACTGATGGTTTTAAGGTATCCATTGCAAATACTTATGACAATAAACCTTTAGACACATTATTGGAGAAAAAGGCTGAAAACGGAAAAGATCTTCATTTAACTATAGATGCTAGAGTACAAGAAAGTATTTATAAACATATGAAAAATGACGATGGATCTGGTACAGCATTACAACCAAAAACTGGAGAAATTTTAGCTTTGGTAAGTACCCCATCGTACGATGTTTATCCATTCATGAATGGATTAAGCAATAATGACTACCGTAAATTAACTAACAATAAAAAAGAGCCTTTGCTCAACAAATTTCAAATCACTACATCACCAGGTTCAACCCAAAAAATATTAACATCTATTATAGCCTTAAAAGAAAATAAACTAGACAAAAATACTAATTTTGATATTTATGGTAAGGGTTGGCAAAAAGATGCATCATGGGGTAATTATAATATCACAAGATTTAAAGTAGTAGACGGCAATATCGATTTAAAGCAAGCAATAGAATCATCAGACAACATATTTTTTGCCCGCATTGCATTAGCATTAGGAGCCAAAAAATTTGAGCAAGGTATGCAAGATTTGGGAATCGGTGAAAATATCCCGAGTGATTATCCCTTTTATAAAGCACAAATCTCAAATAGTAATTTAAAAAATGAAATATTATTAGCAGATTCAGGATATGGCCAAGGCGAGATACTAGTAAACCCTATACAAATTTTATCAATATACAGTGCTTTAGAAAATAACGGAAATATACAAAATCCTCATGTTTTACGTAAAACAAAATCTCAAATATGGAAAAAAGATATTATACCTAAAAAAGACATAGATATATTAACTAATGGTATGGAACGTGTAGTTAATAAAACACATAGGGATGATATATACAAAAATTATGCCCGAATTATTGGTAAATCTGGCACAGCAGAATTAAAAATGAATCAAGGGGAAACTGGAAGACAAATAGGTTGGTTTGTTTCATATAATAAAAATAATCCTAATATGTTAATGGCGATTAATGTTAAAGACGTTCAAAATAAAGGGATGGCCAGCTATAATGCTACTATATCTGGAAAAGTTTATGATGATTTGTATGATAATGGAAAAACTCAATTTGATATAGATCAGTAATTCGAATACTTCTTTTGACTTGGTATTAATTAAAAATAATAGTGAGAAGCGTTTCCACAAAGATTACATTTGTAATATATAGGAGGAATAAAATTGAAAA

但是这个(和其他)不起作用:

ATGAAAAAGATAAAAATTGTTCCACTTATTTTAATAGTTGTAGTTGTCGGGTTTGGTATATATTTTTATGCTTCCAAAGATAAAGAAATTAATAATACTATTGATGCAATTGAAGATAAAAATTTCAAACAAGTTTATAAAGATAGCAGTTATATTTCTAAAAGCGATAATGGTGAAGTAGAAATGACTGAACGTCCGATAAAAATATATAATAGTTTAGGCGTTAAAGATATAAACATTCAGGATCGTAAAATAAAAAAAGTATCTAAAAATAAAAAACGAGTAGATGCTCAATATAAAATTAAAACAAACTACGGTAACATTGATCGCAACGTTCAATTTAATTTTGTTAAAGAAGATGGTATGTGGAAGTTAGATTGGGATCATAGCGTCATTATTCCAGGAATGCAGAAAGACCAAAGCATACATATTGAAAATTTAAAATCAGAACGTGGTAAAATTTTAGACCGAAACAATGTGGAATTGGCCAATACAGGAACAGCATATGAGATAGGCATCGTTCCAAAGAATGTATCTAAAAAAGATTATAAAGCAATCGCTAAAGAACTAAGTATTTCTGAAGACTATATCAAACAACAAATGGATCAAAATTGGGTACAAGATGATACCTTCGTTCCACTTAAAACCGTTAAAAAAATGGATGAATATTTAAGTGATTTCGCAAAAAAATTTCATCTTACAACTAATGAAACAAAAAGTCGTAACTATCCTCTAGGAAAAGCGACTTCACATCTATTAGGTTATGTTGGTCCCATTAACTCTGAAGAATTAAAACAAAAAGAATATAAAGGCTATAAAGATGATGCAGTTATTGGTAAAAAGGGACTCGAAAAACTTTACGATAAAAAGCTCCAACATGAAGATGGCTATCGTGTCACAATCGTTGACGATAATAGCAATACAATCGCACATACATTAATAGAGAAAAAGAAAAAAGATGGCAAAGATATTCAACTAACTATTGATGCTAAAGTTCAAAAGAGTATTTATAACAACATGAAAAATGATTATGGCTCAGGTACTGCTATCCACCCTCAAACAGGTGAATTATTAGCACTTGTAAGCACACCTTCATATGACGTCTATCCATTTATGTATGGCATGAGTAACGAAGAATATAATAAATTAACCGAAGATAAAAAAGAACCTCTGCTCAACAAGTTCCAGATTACAACTTCACCAGGTTCAACTCAAAAAATATTAACAGCAATGATTGGGTTAAATAACAAAACATTAGACGATAAAACAAGTTATAAAATCGATGGTAAAGGTTGGCAAAAAGATAAATCTTGGGGTGGTTACAACGTTACAAGAAATAAAGTGGTAAATGGTAATATCGACTTAAAACAAGCAATAGAATCATCAGATAACATTTTCTTTGCTAGAGTAGCACTCGAATTAGGCAGTAAGAAATTTGAAAAAGGCATGAAAAAACTAGGTGTTGGTGAAGATATACCAAGTGATTATCCATTTTATAATGCTCAAATTTCAAACAAAAATTTAGATAATGAAATATTATTAGCTGATTCAGGTTACGGACAAGGTGAAATACTGATTAACCCAGTACAGATCCTTTCAATCTATAGCGCATTAGAAAATAATGGCAATATTAACGCACCTCACTTATTAAAAGACACGAAAAACAAAGTTTGGAAGAAAAATATTATTTCCAAAGAAAATATCAATCTATTAACTGATGGTATGCAACAAGTCGTAAATAAAACACATAAAGAAGATATTTATAGATCTTATGCAAACTTAATTGGCAAATCCGGTACTGCAGAACTCAAAATGAAACAAGGAGAAACTGGCAGACAAATTGGGTGGTTTATATCATATGATAAAGATAATCCAAACATGATGATGGCTATTAATGTTAAAGATGTACAAGATAAAGGAATGGCTAGCTACAATGCCAAAATCTCAGGTAAAGTGTATGATGAGCTATATGAGAACGGTAATAAAAAATACGATATAGATGAATAA

根据查询,错误第二行中的字节值会发生变化。好像是数据库有问题,但是我下载了两次,还是一样的错误。

我遇到了同样的问题,你解决了吗? 我检查了我的序列,没有发现任何问题。

但是当我用相同的参数和我的早期版本序列尝试这个程序时,错误消失了。

早期版本的序列是fasta格式。 长序列被分成几行。 (没有合并成一行)

我仍然不知道为什么,但这条消息可能有帮助。

简单的解决方案,BLAST 版本不是当前使用 sudo apt-get 的版本。从 NCBI FTP 下载最新的 blast 可执行文件,如果相同

,问题应该会消失