0

ファイルを解析するためにaPython scriptを呼び出す aがあります。Perl script解析後、PERLスクリプトは、スクリプト内の MySQL データベースにロードされる出力を生成しPythonます。

Python スクリプトは次のようになります。

pipe = subprocess.Popen(["perl", "./parseGeneticCode.pl"], stdin=subprocess.PIPE)
pipe.stdin.close()
pipe = subprocess.Popen(["perl", "./makeTaxon.pl"], stdin=subprocess.PIPE)
pipe.stdin.close()

#Load taxon.out (output of makeTaxon.pl) in the database
sql10 = """LOAD DATA LOCAL INFILE 'gene_code.out' INTO TABLE geneticcode FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' (ncbi_taxon_ID, parent_ID, taxon_name, taxon_strain, rank, geneticcode_ID, mitochondrial_geneticcode_ID);"""
try:
  c.execute(sql10)
  conn.commit()
  print "\nDone uploading in taxon\n"
except StandardError, e:
  print e
  conn.rollback()
conn.close()

sql9 = """LOAD DATA LOCAL INFILE 'taxon.out' INTO TABLE taxon FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' (ncbi_taxon_ID, parent_ID, taxon_name, taxon_strain, rank, geneticcode_ID, mitochondrial_geneticcode_ID);"""
try:
  c.execute(sql9)
  conn.commit()
  print "\nDone uploading in taxon\n"
except StandardError, e:
  print e
  conn.rollback()
conn.close()

これらのファイル:taxon.outおよびgene_code.outperl スクリプトによって作成されます。しかし、私のPythonスクリプトはエラーを出しています:

(2, "File 'taxon.out' not found (Errcode: 2)")
(0, '')
Traceback (most recent call last):
  File "common_data.py", line 247, in <module>
    conn.rollback()
_mysql_exceptions.OperationalError: (2006, 'MySQL server has gone away')

どちらのファイルgene_code.outtaxon.outアップロードされていません。

4

1 に答える 1