Comment 0 for bug 2018215

Revision history for this message
Andrius Merkys (andriusmerkys) wrote :

I am using system-provided sonic-pi on Ubuntu 20.04. When stopping a loop, a thread terminates with exception:

#<Thread:0x000055f182e5a758 /usr/lib/sonic-pi/server/sonicpi/lib/sonicpi/runtime.rb:778 run> terminated with exception (report_on_exception is true):
/usr/lib/ruby/2.7.0/set.rb:328:in `each_key': ret: 2, hash modified during iteration (RuntimeError)
 from /usr/lib/ruby/2.7.0/set.rb:328:in `each'
 from /usr/lib/sonic-pi/server/sonicpi/lib/sonicpi/runtime.rb:409:in `__join_subthreads'
 from /usr/lib/sonic-pi/server/sonicpi/lib/sonicpi/runtime.rb:782:in `block in __spider_eval'

This failure seems similar to one described here [1], which has been confirmed as a bug in Ruby [2]. The issue has received a one-line patch, which has been incorporated in Ruby v2.7.1.

[1] https://github.com/kpumuk/meta-tags/issues/209
[2] https://bugs.ruby-lang.org/issues/16503