{"action":"created","issue":{"url":"https://api.github.com/repos/guard/guard-rspec/issues/341","labels_url":"https://api.github.com/repos/guard/guard-rspec/issues/341/labels{/name}","comments_url":"https://api.github.com/repos/guard/guard-rspec/issues/341/comments","events_url":"https://api.github.com/repos/guard/guard-rspec/issues/341/events","html_url":"https://github.com/guard/guard-rspec/issues/341","id":102505942,"number":341,"title":"\"Errno::ECHILD: No child processes\" on JRuby","user":{"login":"jasonrclark","id":130504,"avatar_url":"https://avatars.githubusercontent.com/u/130504?v=3","gravatar_id":"","url":"https://api.github.com/users/jasonrclark","html_url":"https://github.com/jasonrclark","followers_url":"https://api.github.com/users/jasonrclark/followers","following_url":"https://api.github.com/users/jasonrclark/following{/other_user}","gists_url":"https://api.github.com/users/jasonrclark/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonrclark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonrclark/subscriptions","organizations_url":"https://api.github.com/users/jasonrclark/orgs","repos_url":"https://api.github.com/users/jasonrclark/repos","events_url":"https://api.github.com/users/jasonrclark/events{/privacy}","received_events_url":"https://api.github.com/users/jasonrclark/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-08-22T05:46:29Z","updated_at":"2015-08-22T17:26:05Z","closed_at":null,"body":"[Updating the Guardfile on Shoes 4](https://github.com/shoes/shoes4/issues/950) after the project reshuffled its files, and unfortunately started seeing some consistent crashes. It's been quite a while since I actively ran Guard on the project, so I don't know precisely when the problem crept in.\r\n\r\nFortunately, I reproduced the problem with a slimmed down test repository at https://github.com/jasonrclark/jruby-guard-rspec. I ran a similar minimal test for `guard-minitest`, and it didn't have the same failure, so `guard-rspec` seemed a reasonable place to start given that.\r\n\r\nTo run the sample, clone https://github.com/jasonrclark/jruby-guard-rspec and using JRuby run:\r\n\r\n```\r\nbundle exec guard -i -d\r\n```\r\n\r\nThe effect seems to be:\r\n\r\n  * First time I save `spec/test_spec.rb` file, I don't see Guard to anything\r\n  * Second time I save it, the tests will run, but then I get an error (appended below)\r\n  * Subsequent saves don't seem to run anything at all.\r\n\r\nVersions:\r\n\r\n  * `jruby 1.7.20.1 (1.9.3p551) 2015-06-10 d7c8c27 on Java HotSpot(TM) 64-Bit Server VM 1.8.0_20-b26 [darwin-x86_64]`\r\n  * `guard (2.13.0)`\r\n  * `guard-rspec (4.6.4)`\r\n  * `rspec (3.3.0)`\r\n  * Mac OS X, 10.10.5\r\n\r\nLog from failure:\r\n\r\n```\r\n22:31:28 - DEBUG - Notiffany: gntp not available (Please add \"gem 'ruby_gntp'\" to your Gemfile and run your app with \"bundle exec\".).\r\n22:31:28 - DEBUG - Notiffany: growl not available (Please add \"gem 'growl'\" to your Gemfile and run your app with \"bundle exec\".).\r\n22:31:28 - DEBUG - Notiffany: terminal_notifier not available (Please add \"gem 'terminal-notifier-guard'\" to your Gemfile and run your app with \"bundle exec\".).\r\n22:31:28 - DEBUG - Notiffany: libnotify not available (Unsupported platform \"darwin\").\r\n22:31:28 - DEBUG - Notiffany: notifysend not available (Unsupported platform \"darwin\").\r\n22:31:28 - DEBUG - Notiffany: notifu not available (Unsupported platform \"darwin\").\r\n22:31:28 - DEBUG - Command execution: {\"ALTERNATE_EDITOR\"=>\"false\"} emacsclient --eval '1'\r\n22:31:28 - DEBUG - Notiffany: emacs not available (Emacs client failed).\r\n22:31:28 - DEBUG - Notiffany: tmux not available (:tmux notifier is only available inside a TMux session.).\r\n22:31:28 - DEBUG - Notiffany: file not available (No :path option given).\r\n22:31:28 - DEBUG - Notiffany is using TerminalTitle to send notifications.\r\nThe signal USR1 is in use by the JVM and will not work correctly on this platform\r\n22:31:28 - DEBUG - Guard starts all plugins\r\n22:31:28 - DEBUG - Hook :start_begin executed for Guard::RSpec\r\n22:31:28 - INFO - Guard::RSpec is running\r\n22:31:28 - DEBUG - Hook :start_end executed for Guard::RSpec\r\n22:31:28 - INFO - Guard is now watching at '/Users/jclark/source/jruby-guard-rspec'\r\n22:31:28 - DEBUG - Guards jobs done. Sleeping...\r\n\r\n# At this point I did the first save...\r\n22:31:33 - DEBUG - Sleep interrupted by events.\r\n22:31:33 - DEBUG - Guards jobs done. Sleeping...\r\n\r\n# At this point I did the second save...\r\n22:31:38 - DEBUG - Sleep interrupted by events.\r\n22:31:38 - DEBUG - Hook :run_on_modifications_begin executed for Guard::RSpec\r\n22:31:38 - INFO - Running: spec/test_spec.rb\r\n.\r\n\r\nFinished in 0.128 seconds (files took 1.47 seconds to load)\r\n1 example, 0 failures\r\n\r\n22:31:41 - ERROR - Guard::RSpec failed to achieve its <run_on_modifications>, exception was:\r\n> [#] Errno::ECHILD: No child processes - No child processes\r\n> [#] org/jruby/RubyProcess.java:728:in `waitpid2'\r\n> [#] org/jruby/RubyProcess.java:777:in `wait2'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/rspec_process.rb:39:in `_really_run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/rspec_process.rb:28:in `_run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/rspec_process.rb:53:in `_without_bundler_env'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/bundler-1.10.3/lib/bundler.rb:245:in `with_clean_env'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/bundler-1.10.3/lib/bundler.rb:232:in `with_original_env'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/bundler-1.10.3/lib/bundler.rb:238:in `with_clean_env'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/rspec_process.rb:53:in `_without_bundler_env'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/rspec_process.rb:27:in `_run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/rspec_process.rb:16:in `initialize'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/runner.rb:68:in `_really_run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/runner.rb:57:in `_run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec/runner.rb:41:in `run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec.rb:42:in `run_on_modifications'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec.rb:48:in `_throw_if_failed'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-rspec-4.6.4/lib/guard/rspec.rb:42:in `run_on_modifications'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:82:in `_supervise'\r\n> [#] org/jruby/RubyKernel.java:1274:in `catch'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:79:in `_supervise'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:61:in `run_on_changes'\r\n> [#] org/jruby/RubyHash.java:1341:in `each'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:56:in `run_on_changes'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:119:in `_run_group_plugins'\r\n> [#] org/jruby/RubyArray.java:1613:in `each'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:117:in `_run_group_plugins'\r\n> [#] org/jruby/RubyKernel.java:1274:in `catch'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:116:in `_run_group_plugins'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:54:in `run_on_changes'\r\n> [#] org/jruby/RubyArray.java:1613:in `each'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/runner.rb:53:in `run_on_changes'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/internals/queue.rb:23:in `process'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/commander.rb:43:in `start'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/cli/environments/valid.rb:16:in `start_guard'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/cli.rb:122:in `start'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/thor-0.19.1/lib/thor/command.rb:27:in `run'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/thor-0.19.1/lib/thor/base.rb:440:in `start'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/aruba_adapter.rb:32:in `execute'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/lib/guard/aruba_adapter.rb:19:in `execute!'\r\n> [#] /Users/jclark/.rbenv/versions/jruby-1.7.20.1/lib/ruby/gems/shared/gems/guard-2.13.0/bin/_guard-core:11:in `(root)'\r\n22:31:41 - INFO - Guard::RSpec has just been fired\r\n22:31:41 - DEBUG - Guards jobs done. Sleeping..."},"comment":{"url":"https://api.github.com/repos/guard/guard-rspec/issues/comments/133729811","html_url":"https://github.com/guard/guard-rspec/issues/341#issuecomment-133729811","issue_url":"https://api.github.com/repos/guard/guard-rspec/issues/341","id":133729811,"user":{"login":"jasonrclark","id":130504,"avatar_url":"https://avatars.githubusercontent.com/u/130504?v=3","gravatar_id":"","url":"https://api.github.com/users/jasonrclark","html_url":"https://github.com/jasonrclark","followers_url":"https://api.github.com/users/jasonrclark/followers","following_url":"https://api.github.com/users/jasonrclark/following{/other_user}","gists_url":"https://api.github.com/users/jasonrclark/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonrclark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonrclark/subscriptions","organizations_url":"https://api.github.com/users/jasonrclark/orgs","repos_url":"https://api.github.com/users/jasonrclark/repos","events_url":"https://api.github.com/users/jasonrclark/events{/privacy}","received_events_url":"https://api.github.com/users/jasonrclark/received_events","type":"User","site_admin":false},"created_at":"2015-08-22T17:26:05Z","updated_at":"2015-08-22T17:26:05Z","body":"Much better title by the way. Thanks!"}}