hyeshik / poreplex

A versatile sequenced read processor for nanopore direct RNA sequencing
Other
78 stars 13 forks source link

BlockingIOError #8

Closed godkin1211 closed 5 years ago

godkin1211 commented 5 years ago

Hi, I got an error message when running Poreplex, and it looks like poreplex did not work but just stayed in the 0% stage. The version of Albacore I used is 2.3.3 and Python version is 3.6. How do I solve this problem?

Poreplex version 0.1 by Hyeshik Chang hyeshik@snu.ac.kr

WARNING: Dashboard is turned off because it is not informative without sequence alignments.

== Analysis settings ======================================

==> Processing FAST5 files /home/godkin/.local/lib/python3.6/site-packages/poreplex/basecall_albacore.py:83: FutureWarning: from_items is deprecated. Please use DataFrame.from_dict(dict(items), ...) instead. DataFrame.from_dict(OrderedDict(items)) may be used to preserve the key order. for field in field_names]) /home/godkin/.local/lib/python3.6/site-packages/poreplex/basecall_albacore.py:83: FutureWarning: from_items is deprecated. Please use DataFrame.from_dict(dict(items), ...) instead. DataFrame.from_dict(OrderedDict(items)) may be used to preserve the key order. for field in field_names]) /home/godkin/.local/lib/python3.6/site-packages/poreplex/basecall_albacore.py:83: FutureWarning: from_items is deprecated. Please use DataFrame.from_dict(dict(items), ...) instead. DataFrame.from_dict(OrderedDict(items)) may be used to preserve the key order. for field in field_names]) /home/godkin/.local/lib/python3.6/site-packages/poreplex/basecall_albacore.py:83: FutureWarning: from_items is deprecated. Please use DataFrame.from_dict(dict(items), ...) instead. DataFrame.from_dict(OrderedDict(items)) may be used to preserve the key order. for field in field_names]) Exception in thread Thread-1: | Elapsed: 0:00:03 ETA: --:--:-- Traceback (most recent call last): File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner self.run() File "/usr/lib/python3.6/threading.py", line 864, in run self._target(*self._args, **self._kwargs) File "/usr/lib/python3.6/concurrent/futures/process.py", line 295, in _queue_management_worker shutdown_worker() File "/usr/lib/python3.6/concurrent/futures/process.py", line 253, in shutdown_worker call_queue.put_nowait(None) File "/usr/lib/python3.6/multiprocessing/queues.py", line 129, in put_nowait return self.put(obj, False) File "/usr/lib/python3.6/multiprocessing/queues.py", line 83, in put raise Full queue.Full

Exception ignored when trying to write to the signal wakeup fd: BlockingIOError: [Errno 11] Resource temporarily unavailable Exception ignored when trying to write to the signal wakeup fd: BlockingIOError: [Errno 11] Resource temporarily unavailable Exception ignored when trying to write to the signal wakeup fd: | Elapsed: 0:00:04 ETA: --:--:-- BlockingIOError: [Errno 11] Resource temporarily unavailable 0% of 71315 | | Elapsed: 0:03:17 ETA: --:-

hyeshik commented 5 years ago

Hi @godkin1211,

The current poreplex has a problem introduced by an ABI incompatibility issue between albacore 2.3.3 and any released version of mappy. Here's a workaround:

diff --git a/poreplex/basecall_albacore.py b/poreplex/basecall_albacore.py
--- a/poreplex/basecall_albacore.py
+++ b/poreplex/basecall_albacore.py
@@ -56,6 +56,7 @@ def prepare_albacore(configpath, flowcell, kit, version_min=REQUIRED_ALBACORE_VE
     config = ConfigParser(interpolation=None)
     config.read_file(open(template[0]))
     config['basecaller']['model_path'] = albacore_data_path
+    config['calib_detector']['method'] = ''
     config.write(open(configpath, 'w'))

     return __version__

I am going about to release a new version which also includes the fix in a few days.

Thank you for the report!

hyeshik commented 5 years ago

This problem should be fixed in release 0.3.1. Thank you!