Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error handling when template > genome #59

Closed
HadrienG opened this issue May 22, 2018 · 0 comments
Closed

Error handling when template > genome #59

HadrienG opened this issue May 22, 2018 · 0 comments
Assignees
Labels

Comments

@HadrienG
Copy link
Owner

Click on the arrow for traceback

INFO:iss.app:Starting iss generate INFO:iss.app:Using kde ErrorModel INFO:iss.app:Using lognormal abundance distribution INFO:iss.app:Using 2 cpus for read generation INFO:iss.app:Generating 5000 reads INFO:iss.app:Generating reads for record: NC_001740.1:5890-6729 INFO:iss.app:Generating reads for record: NC_018081.1:c2783521-2782661 INFO:iss.app:Generating reads for record: NC_005364.2:c967483-966185 INFO:iss.app:Generating reads for record: NC_003997.3:1351647-1352231 multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py", line 130, in simulate_read assert reverse_end < len(record.seq) AssertionError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/_parallel_backends.py", line 350, in call
return self.func(*args, **kwargs)
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py", line 131, in call
return [func(*args, **kwargs) for func, args, kwargs in self.items]
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py", line 131, in
return [func(*args, **kwargs) for func, args, kwargs in self.items]
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py", line 53, in reads
forward, reverse = simulate_read(record, ErrorModel, i)
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py", line 135, in simulate_read
read_length, len(record.seq) - read_length
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/random.py", line 199, in randrange
raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
ValueError: empty range for randrange() (301,284, -17)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/multiprocessing/pool.py", line 119, in worker
result = (True, func(*args, **kwds))
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/_parallel_backends.py", line 359, in call
raise TransportableException(text, e_type)
joblib.my_exceptions.TransportableException: TransportableException


ValueError Tue May 22 21:04:40 2018
PID: 95094Python 3.6.5: /Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/bin/python3.6
...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in call(self=<joblib.parallel.BatchedCalls object>)
126 def init(self, iterator_slice):
127 self.items = list(iterator_slice)
128 self._size = len(self.items)
129
130 def call(self):
--> 131 return [func(*args, **kwargs) for func, args, kwargs in self.items]
self.items = [(, (SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), <iss.error_models.kde.KDErrorModel object>, 204, 0, 'test_reads', False), {})]
132
133 def len(self):
134 return self._size
135

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in (.0=<list_iterator object>)
126 def init(self, iterator_slice):
127 self.items = list(iterator_slice)
128 self._size = len(self.items)
129
130 def call(self):
--> 131 return [func(*args, **kwargs) for func, args, kwargs in self.items]
func =
args = (SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), <iss.error_models.kde.KDErrorModel object>, 204, 0, 'test_reads', False)
kwargs = {}
132
133 def len(self):
134 return self._size
135

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py in reads(record=SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), ErrorModel=<iss.error_models.kde.KDErrorModel object>, n_pairs=204, cpu_number=0, output='test_reads', gc_bias=False)
48 # try:
49 # forward, reverse = simulate_read(record, ErrorModel, i)
50 # except ValueError as e:
51 # logger.error('Skipping this record: %s' % record.id)
52 # return
---> 53 forward, reverse = simulate_read(record, ErrorModel, i)
forward = undefined
reverse = undefined
record = SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[])
ErrorModel = <iss.error_models.kde.KDErrorModel object>
i = 0
54 if gc_bias:
55 stiched_seq = forward.seq + reverse.seq
56 gc_content = GC(stiched_seq)
57 if 40 < gc_content < 60:

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py in simulate_read(record=SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), ErrorModel=<iss.error_models.kde.KDErrorModel object>, i=0)
130 assert reverse_end < len(record.seq)
131 except AssertionError as e:
132 # we use random insert when the modelled template length distribution
133 # is too large
134 reverse_end = len(record.seq) - random.randrange(
--> 135 read_length, len(record.seq) - read_length
read_length = array(301)
record.seq = Seq('ATGCGGGAGTCTAGTCAAATACGTGAGACGACAGAAACAAAAATAAAATTAAGT...TAA', SingleLetterAlphabet())
136 )
137 reverse_start = reverse_end - read_length
138 bounds = (reverse_start, reverse_end)
139 # create a perfect read

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/random.py in randrange(self=<random.Random object>, start=array(301), stop=284, step=1, _int=<class 'int'>)
194 raise ValueError("non-integer stop for randrange()")
195 width = istop - istart
196 if step == 1 and width > 0:
197 return istart + self._randbelow(width)
198 if step == 1:
--> 199 raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
istart = 301
istop = 284
width = -17
200
201 # Non-unit step argument supplied.
202 istep = _int(step)
203 if istep != step:

ValueError: empty range for randrange() (301,284, -17)


"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py", line 699, in retrieve
self._output.extend(job.get(timeout=self.timeout))
File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/multiprocessing/pool.py", line 644, in get
raise self._value
joblib.my_exceptions.TransportableException: TransportableException


ValueError Tue May 22 21:04:40 2018
PID: 95094Python 3.6.5: /Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/bin/python3.6
...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in call(self=<joblib.parallel.BatchedCalls object>)
126 def init(self, iterator_slice):
127 self.items = list(iterator_slice)
128 self._size = len(self.items)
129
130 def call(self):
--> 131 return [func(*args, **kwargs) for func, args, kwargs in self.items]
self.items = [(, (SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), <iss.error_models.kde.KDErrorModel object>, 204, 0, 'test_reads', False), {})]
132
133 def len(self):
134 return self._size
135

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in (.0=<list_iterator object>)
126 def init(self, iterator_slice):
127 self.items = list(iterator_slice)
128 self._size = len(self.items)
129
130 def call(self):
--> 131 return [func(*args, **kwargs) for func, args, kwargs in self.items]
func =
args = (SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), <iss.error_models.kde.KDErrorModel object>, 204, 0, 'test_reads', False)
kwargs = {}
132
133 def len(self):
134 return self._size
135

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py in reads(record=SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), ErrorModel=<iss.error_models.kde.KDErrorModel object>, n_pairs=204, cpu_number=0, output='test_reads', gc_bias=False)
48 # try:
49 # forward, reverse = simulate_read(record, ErrorModel, i)
50 # except ValueError as e:
51 # logger.error('Skipping this record: %s' % record.id)
52 # return
---> 53 forward, reverse = simulate_read(record, ErrorModel, i)
forward = undefined
reverse = undefined
record = SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[])
ErrorModel = <iss.error_models.kde.KDErrorModel object>
i = 0
54 if gc_bias:
55 stiched_seq = forward.seq + reverse.seq
56 gc_content = GC(stiched_seq)
57 if 40 < gc_content < 60:

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py in simulate_read(record=SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), ErrorModel=<iss.error_models.kde.KDErrorModel object>, i=0)
130 assert reverse_end < len(record.seq)
131 except AssertionError as e:
132 # we use random insert when the modelled template length distribution
133 # is too large
134 reverse_end = len(record.seq) - random.randrange(
--> 135 read_length, len(record.seq) - read_length
read_length = array(301)
record.seq = Seq('ATGCGGGAGTCTAGTCAAATACGTGAGACGACAGAAACAAAAATAAAATTAAGT...TAA', SingleLetterAlphabet())
136 )
137 reverse_start = reverse_end - read_length
138 bounds = (reverse_start, reverse_end)
139 # create a perfect read

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/random.py in randrange(self=<random.Random object>, start=array(301), stop=284, step=1, _int=<class 'int'>)
194 raise ValueError("non-integer stop for randrange()")
195 width = istop - istart
196 if step == 1 and width > 0:
197 return istart + self._randbelow(width)
198 if step == 1:
--> 199 raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
istart = 301
istop = 284
width = -17
200
201 # Non-unit step argument supplied.
202 istep = _int(step)
203 if istep != step:

ValueError: empty range for randrange() (301,284, -17)


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/bin/iss", line 11, in
sys.exit(main())
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/app.py", line 403, in main
args.func(args)
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/app.py", line 169, in generate_reads
args.gc_bias) for i in range(cpus))
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py", line 789, in call
self.retrieve()
File "/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py", line 740, in retrieve
raise exception
joblib.my_exceptions.JoblibValueError: JoblibValueError


Multiprocessing exception:
...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/bin/iss in ()
6
7 from iss.app import main
8
9 if name == 'main':
10 sys.argv[0] = re.sub(r'(-script.pyw?|.exe)?$', '', sys.argv[0])
---> 11 sys.exit(main())

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/app.py in main()
398 elif args.debug:
399 logging.basicConfig(level=logging.DEBUG)
400 else:
401 logging.basicConfig(level=logging.INFO)
402
--> 403 args.func(args)
args.func =
args = Namespace(abundance='lognormal', abundance_file=... output='test_reads', quiet=False, version=False)
404 logging.shutdown()
405 except AttributeError as e:
406 logger = logging.getLogger(name)
407 logger.debug(e)

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/app.py in generate_reads(args=Namespace(abundance='lognormal', abundance_file=... output='test_reads', quiet=False, version=False))
164
165 record_file_name_list = Parallel(n_jobs=cpus)(
166 delayed(generator.reads)(
167 record, err_mod,
168 n_pairs_per_cpu, i, args.output,
--> 169 args.gc_bias) for i in range(cpus))
args.gc_bias = False
cpus = 2
170 temp_file_list.extend(record_file_name_list)
171 except KeyboardInterrupt as e:
172 logger.error('iss generate interrupted: %s' % e)
173 generator.cleanup(temp_file_list)

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in call(self=Parallel(n_jobs=2), iterable=<generator object generate_reads..>)
784 if pre_dispatch == "all" or n_jobs == 1:
785 # The iterable was consumed all at once by the above for loop.
786 # No need to wait for async callbacks to trigger to
787 # consumption.
788 self._iterating = False
--> 789 self.retrieve()
self.retrieve = <bound method Parallel.retrieve of Parallel(n_jobs=2)>
790 # Make sure that we get a last message telling us we are done
791 elapsed_time = time.time() - self._start_time
792 self._print('Done %3i out of %3i | elapsed: %s finished',
793 (len(self._output), len(self._output),


Sub-process traceback:

ValueError Tue May 22 21:04:40 2018
PID: 95094Python 3.6.5: /Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/bin/python3.6
...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in call(self=<joblib.parallel.BatchedCalls object>)
126 def init(self, iterator_slice):
127 self.items = list(iterator_slice)
128 self._size = len(self.items)
129
130 def call(self):
--> 131 return [func(*args, **kwargs) for func, args, kwargs in self.items]
self.items = [(, (SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), <iss.error_models.kde.KDErrorModel object>, 204, 0, 'test_reads', False), {})]
132
133 def len(self):
134 return self._size
135

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/joblib/parallel.py in (.0=<list_iterator object>)
126 def init(self, iterator_slice):
127 self.items = list(iterator_slice)
128 self._size = len(self.items)
129
130 def call(self):
--> 131 return [func(*args, **kwargs) for func, args, kwargs in self.items]
func =
args = (SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), <iss.error_models.kde.KDErrorModel object>, 204, 0, 'test_reads', False)
kwargs = {}
132
133 def len(self):
134 return self._size
135

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py in reads(record=SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), ErrorModel=<iss.error_models.kde.KDErrorModel object>, n_pairs=204, cpu_number=0, output='test_reads', gc_bias=False)
48 # try:
49 # forward, reverse = simulate_read(record, ErrorModel, i)
50 # except ValueError as e:
51 # logger.error('Skipping this record: %s' % record.id)
52 # return
---> 53 forward, reverse = simulate_read(record, ErrorModel, i)
forward = undefined
reverse = undefined
record = SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[])
ErrorModel = <iss.error_models.kde.KDErrorModel object>
i = 0
54 if gc_bias:
55 stiched_seq = forward.seq + reverse.seq
56 gc_content = GC(stiched_seq)
57 if 40 < gc_content < 60:

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/site-packages/iss/generator.py in simulate_read(record=SeqRecord(seq=Seq('ATGCGGGAGTCTAGTCAAATACGTGAGAC...r. Ames chromosome, complete genome', dbxrefs=[]), ErrorModel=<iss.error_models.kde.KDErrorModel object>, i=0)
130 assert reverse_end < len(record.seq)
131 except AssertionError as e:
132 # we use random insert when the modelled template length distribution
133 # is too large
134 reverse_end = len(record.seq) - random.randrange(
--> 135 read_length, len(record.seq) - read_length
read_length = array(301)
record.seq = Seq('ATGCGGGAGTCTAGTCAAATACGTGAGACGACAGAAACAAAAATAAAATTAAGT...TAA', SingleLetterAlphabet())
136 )
137 reverse_start = reverse_end - read_length
138 bounds = (reverse_start, reverse_end)
139 # create a perfect read

...........................................................................
/Users/hadrien/.local/share/virtualenvs/workspace-w0RVuX47/lib/python3.6/random.py in randrange(self=<random.Random object>, start=array(301), stop=284, step=1, _int=<class 'int'>)
194 raise ValueError("non-integer stop for randrange()")
195 width = istop - istart
196 if step == 1 and width > 0:
197 return istart + self._randbelow(width)
198 if step == 1:
--> 199 raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
istart = 301
istop = 284
width = -17
200
201 # Non-unit step argument supplied.
202 istep = _int(step)
203 if istep != step:

ValueError: empty range for randrange() (301,284, -17)


@HadrienG HadrienG added the bug label May 22, 2018
@HadrienG HadrienG self-assigned this May 22, 2018
HadrienG added a commit that referenced this issue Jun 2, 2018
@HadrienG HadrienG mentioned this issue Jun 2, 2018
@HadrienG HadrienG closed this as completed Jun 2, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant