Details

    • Type: Bug Bug
    • Status: Resolved Resolved
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: JRuby 1.6.7, JRuby 1.7.0.pre1
    • Fix Version/s: JRuby 1.7.0.pre1
    • Component/s: Core Classes/Modules
    • Labels:
      None
    • Number of attachments :
      0

      Description

      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.

        Issue Links

          Activity

          Hiro Asari made changes -
          Field Original Value New Value
          Affects Version/s JRuby 1.7 [ 17049 ]
          Priority Major [ 3 ] Critical [ 2 ]
          Hiro Asari made changes -
          Link This issue relates to JRUBY-6591 [ JRUBY-6591 ]
          Charles Oliver Nutter made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Assignee Charles Oliver Nutter [ headius ]
          Fix Version/s JRuby 1.7 [ 17049 ]
          Resolution Fixed [ 1 ]

            People

            • Assignee:
              Charles Oliver Nutter
              Reporter:
              Jason Gilman
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: