Jason Gilman created JRUBY-6603:
-----------------------------------

             Summary: Concurrency bug in 
org.jruby.util.ShellLauncher.getCurrentEnv
                 Key: JRUBY-6603
                 URL: https://jira.codehaus.org/browse/JRUBY-6603
             Project: JRuby
          Issue Type: Bug
          Components: Core Classes/Modules
    Affects Versions: JRuby 1.6.7
            Reporter: Jason Gilman


I'm using JRuby 1.6.7 and Capistrano for orchestrating the deployments of a 
bunch of Ruby and Java projects.  I received an ArrayIndexOutOfBoundsException 
when trying to start up 3 separate threads that would use IO.popen to execute 
some commands in parallel.  It looks like the ShellLauncher.getCurrentEnv 
method is expecting that the global ENV variable won't change size while it 
copies it to a Java String array. 
(http://grepcode.com/file/repo1.maven.org/maven2/org.jruby/jruby-core/1.6.7/org/jruby/util/ShellLauncher.java#219)
  I think Bundler is changing the ENV hash in my particular case. The 
ShellLauncher code shouldn't make this particular assumption.  See this gist: 
https://gist.github.com/2398538 for a contrived example that reproduces the bug.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to