ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:85878] [Ruby trunk Bug#14563] irb in irb raises a FATAL error
       [not found] <redmine.issue-14563.20180301064107@ruby-lang.org>
@ 2018-03-01  6:41 ` satoko.itse
  2019-06-19 21:38 ` [ruby-core:93264] " merch-redmine
  1 sibling, 0 replies; 2+ messages in thread
From: satoko.itse @ 2018-03-01  6:41 UTC (permalink / raw
  To: ruby-core

Issue #14563 has been reported by hkdnet (Ko Sato).

----------------------------------------
Bug #14563: irb in irb raises a FATAL error
https://bugs.ruby-lang.org/issues/14563

* Author: hkdnet (Ko Sato)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.6.0preview1 (2018-02-24 trunk 62554) [x86_64-darwin17]
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
Start irb in irb, then C-c and C-d cause a fatal error.

~~~ text
$ irb
irb(main):001:0> irb
irb#1(main):001:0> ^C
irb#1(main):001:0>
Traceback (most recent call last):
       16: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `block in each_top_level_statement'
       15: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `loop'
       14: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:246:in `block (2 levels) in each_top_level_statement'
       13: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:488:in `block in eval_input'
       12: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:623:in `signal_status'
       11: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:491:in `block (2 levels) in eval_input'
       10: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/context.rb:380:in `evaluate'
        9: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `evaluate'
        8: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `eval'
        7: from (irb):1:in `irb_binding'
        6: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:154:in `irb'
        5: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:151:in `irb'
        4: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/nop.rb:20:in `execute'
        3: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/subirb.rb:20:in `execute'
        2: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `irb'
        1: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `stop'
fatal (No live threads left. Deadlock?)
1 threads, 1 sleeps current:0x00007fb05e106870 main thread:0x00007fb05e106870
* #<Thread:0x00007fb05e87db40 sleep_forever>
   rb_thread_t:0x00007fb05e106870 native:0x00007fffae08a340 int:0
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `stop'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `irb'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/subirb.rb:20:in `execute'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/nop.rb:20:in `execute'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:151:in `irb'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:154:in `irb'
   (irb):1:in `irb_binding'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `eval'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `evaluate'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/context.rb:380:in `evaluate'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:491:in `block (2 levels) in eval_input'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:623:in `signal_status'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:488:in `block in eval_input'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:246:in `block (2 levels) in each_top_level_statement'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `loop'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `block in each_top_level_statement'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:231:in `catch'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:231:in `each_top_level_statement'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:487:in `eval_input'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:428:in `block in run'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:427:in `catch'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:427:in `run'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:383:in `start'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/bin/irb:11:in `<main>'
Maybe IRB bug!
irb(main):002:0>
~~~





-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [ruby-core:93264] [Ruby trunk Bug#14563] irb in irb raises a FATAL error
       [not found] <redmine.issue-14563.20180301064107@ruby-lang.org>
  2018-03-01  6:41 ` [ruby-core:85878] [Ruby trunk Bug#14563] irb in irb raises a FATAL error satoko.itse
@ 2019-06-19 21:38 ` merch-redmine
  1 sibling, 0 replies; 2+ messages in thread
From: merch-redmine @ 2019-06-19 21:38 UTC (permalink / raw
  To: ruby-core

Issue #14563 has been updated by jeremyevans0 (Jeremy Evans).


I was able to reproduce this issue with the current master branch.  I'm not sure why it occurs, though.  The thread that is stopped (the main thread) is woken up by the thread that `IRB.irb` spawns before that thread exits.  So I am not sure why this would cause deadlock.  Interestingly, this issue only occurs on the first nesting.  If you nest irb twice, then do Ctrl-C, Ctrl-D, it does not cause an error.

----------------------------------------
Bug #14563: irb in irb raises a FATAL error
https://bugs.ruby-lang.org/issues/14563#change-78724

* Author: hkdnet (Ko Sato)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.6.0preview1 (2018-02-24 trunk 62554) [x86_64-darwin17]
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
Start irb in irb, then C-c and C-d cause a fatal error.

~~~ text
$ irb
irb(main):001:0> irb
irb#1(main):001:0> ^C
irb#1(main):001:0>
Traceback (most recent call last):
       16: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `block in each_top_level_statement'
       15: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `loop'
       14: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:246:in `block (2 levels) in each_top_level_statement'
       13: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:488:in `block in eval_input'
       12: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:623:in `signal_status'
       11: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:491:in `block (2 levels) in eval_input'
       10: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/context.rb:380:in `evaluate'
        9: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `evaluate'
        8: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `eval'
        7: from (irb):1:in `irb_binding'
        6: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:154:in `irb'
        5: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:151:in `irb'
        4: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/nop.rb:20:in `execute'
        3: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/subirb.rb:20:in `execute'
        2: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `irb'
        1: from /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `stop'
fatal (No live threads left. Deadlock?)
1 threads, 1 sleeps current:0x00007fb05e106870 main thread:0x00007fb05e106870
* #<Thread:0x00007fb05e87db40 sleep_forever>
   rb_thread_t:0x00007fb05e106870 native:0x00007fffae08a340 int:0
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `stop'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ext/multi-irb.rb:229:in `irb'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/subirb.rb:20:in `execute'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/cmd/nop.rb:20:in `execute'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:151:in `irb'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/extend-command.rb:154:in `irb'
   (irb):1:in `irb_binding'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `eval'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/workspace.rb:85:in `evaluate'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/context.rb:380:in `evaluate'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:491:in `block (2 levels) in eval_input'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:623:in `signal_status'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:488:in `block in eval_input'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:246:in `block (2 levels) in each_top_level_statement'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `loop'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:232:in `block in each_top_level_statement'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:231:in `catch'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb/ruby-lex.rb:231:in `each_top_level_statement'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:487:in `eval_input'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:428:in `block in run'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:427:in `catch'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:427:in `run'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/lib/ruby/2.6.0/irb.rb:383:in `start'
   /Users/hkdnet/.anyenv/envs/rbenv/versions/2.6.0-preview1/bin/irb:11:in `<main>'
Maybe IRB bug!
irb(main):002:0>
~~~





-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-06-19 21:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <redmine.issue-14563.20180301064107@ruby-lang.org>
2018-03-01  6:41 ` [ruby-core:85878] [Ruby trunk Bug#14563] irb in irb raises a FATAL error satoko.itse
2019-06-19 21:38 ` [ruby-core:93264] " merch-redmine

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).