quast icon indicating copy to clipboard operation
quast copied to clipboard

struct.error: 'i' format

Open olechnwin opened this issue 2 years ago • 1 comments

Hi, I'm trying to run quast but got the following error. Any help on how to solve this error is greatly appreciated. Thanks so much!

Running Genome analyzer...
  NOTICE: No file with operons were provided. Use the -O option if you want to specify it.
  Loaded 3406511 genomic features of type "ANY"

'i' format requires -2147483648 <= number <= 2147483647
Traceback (most recent call last):
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/bin/quast", line 307, in <module>
    return_code = main(sys.argv[1:])
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/bin/quast", line 196, in main
    os.path.join(output_dirpath, 'genome_stats'))
  File "/gpfs0/home1/opt/miniconda3/envs/local_quast_env/opt/quast-5.0.2/quast_libs/genome_analyzer.py", line 327, in do
    ref_lengths, results_genes_operons_tuples = run_parallel(process_single_file, parallel_run_args, n_jobs, filter_results=True)
  File "/gpfs0/home1/opt/miniconda3/envs/local_quast_env/opt/quast-5.0.2/quast_libs/qutils.py", line 1065, in run_parallel
    results_tuples = Parallel(**parallel_args)(delayed(_fn)(*args) for args in fn_args)
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/site-packages/joblib/parallel.py", line 1056, in __call__
    self.retrieve()
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/site-packages/joblib/parallel.py", line 935, in retrieve
    self._output.extend(job.get(timeout=self.timeout))
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/multiprocessing/pool.py", line 644, in get
    raise self._value
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/multiprocessing/pool.py", line 424, in _handle_tasks
    put(task)
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/site-packages/joblib/pool.py", line 157, in send
    self._writer.send_bytes(buffer.getvalue())
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/multiprocessing/connection.py", line 200, in send_bytes
    self._send_bytes(m[offset:offset + size])
  File "/gpfs0/home/opt/miniconda3/envs/local_quast_env/lib/python3.6/multiprocessing/connection.py", line 393, in _send_bytes
    header = struct.pack("!i", n)
struct.error: 'i' format requires -2147483648 <= number <= 2147483647
ERROR! exception caught!

olechnwin avatar Dec 07 '21 19:12 olechnwin

This is an older issue but I ran into the same problem. For anyone else who runs into this, the solution suggested here https://github.com/ablab/quast/issues/92 worked for me (set threads as -t 1)

It's probably worth noting that I was running quast as a PBS cluster job with -t 8, which might be related to why this happens.

ScottMastro avatar Apr 03 '22 18:04 ScottMastro