大概是由於今天教研室網絡超爛(彷佛並非這個緣由),在本身搭建的簡陋web版blast(基於ncbi-blast+)上比對個序列,失敗了,查了下/var/log/apache2/error.log
,居然這種錯誤:web
--------------------- WARNING --------------------- MSG: error in parsing a report: http error : Operation timed out ---------------------------------------------------
簡直震驚,這竟然須要網絡?我真是想不通-_-||apache
看了下對應的 blast 結果文件是存在的,沒有問題。網絡
幾番嘗試,折騰,發現 wwwblast 生成的 xml 格式文件處理起來就沒問題,可迅速得出結果。code
……xml
而後,把兩種 xml 文件打開作個對比,發現:it
<!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "NCBI_BlastOutput.dtd">
而io
<!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">
換成 wwwblast 格式的話,就不蹦錯誤了。ast
彷佛這並非根本緣由……看起來不太合適。perl
查了下Bio::SearchIO::blastxml
,以爲有可能什麼模塊沒裝,而後發現XML::SAX::ExpatXS
沒裝,安裝了下試試看im
sudo aptitude install libxml-sax-expatxs-perl
而後如今運行起來沒問題了,但願就此解決。
糊里糊塗的。