jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • JRuby
  • JRUBY-2983

JRuby crashes after running 110 RSpec examples

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Incomplete
  • Affects Version/s: JRuby 1.1.4
  • Fix Version/s: None
  • Component/s: Application Error
  • Labels:
    None
  • Environment:
    $ uname -a
    Linux yantram 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686 GNU/Linux

    $ jruby --version
    jruby 1.1.4 (ruby 1.8.6 patchlevel 114) (2008-08-28 rev 7570) [i386-java]

Description

JRuby crashes after running 110 RSpec examples in my application. The examples all pass, but before RSpec gets a chance to print out its status message (telling you how many examples passed/failed) in its Kernel#at_exit() handler, JRuby 1.1.4 crashes with the following stack trace:

java.lang.ArrayIndexOutOfBoundsException: 16
at org.jruby.runtime.scope.ManyVarsDynamicScope.setValue(ManyVarsDynamicScope.java:163)
at org.jruby.ast.LocalAsgnNode.interpret(LocalAsgnNode.java:115)
at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
at org.jruby.ast.RescueBodyNode.interpret(RescueBodyNode.java:101)
at org.jruby.ast.RescueNode.handleException(RescueNode.java:187)
at org.jruby.ast.RescueNode.interpretWithJavaExceptions(RescueNode.java:147)
at org.jruby.ast.RescueNode.interpret(RescueNode.java:107)
at org.jruby.ast.BeginNode.interpret(BeginNode.java:80)
at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:101)
at org.jruby.ast.BlockNode.interpret(BlockNode.java:67)
at org.jruby.ast.RootNode.interpret(RootNode.java:126)
at org.jruby.Ruby.loadFile(Ruby.java:2107)
at org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:58)
at org.jruby.runtime.load.LoadService.load(LoadService.java:221)
at org.jruby.RubyKernel.load(RubyKernel.java:830)
at org.jruby.RubyKernel$s_method_0_1$RUBYFRAMEDINVOKER$load.call(org/jruby/RubyKernel$s_method_0_1$RUBYFRAMEDINVOKER$load.gen)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:242)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:151)
at org.jruby.runtime.CallSite$InlineCachingCallSite.cacheAndCall(CallSite.java:156)
at org.jruby.runtime.CallSite$InlineCachingCallSite.call(CallSite.java:394)
at home.sun.app.zzz_minus_jruby_minus_1_dot_1_dot_4.bin.rcov._file_(rcov:19)
at home.sun.app.zzz_minus_jruby_minus_1_dot_1_dot_4.bin.rcov._file_(rcov)
at home.sun.app.zzz_minus_jruby_minus_1_dot_1_dot_4.bin.rcov.load(rcov)
at org.jruby.Ruby.runScript(Ruby.java:544)
at org.jruby.Ruby.runNormally(Ruby.java:457)
at org.jruby.Ruby.runFromMain(Ruby.java:330)
at org.jruby.Main.run(Main.java:214)
at org.jruby.Main.run(Main.java:100)
at org.jruby.util.ShellLauncher$ScriptThreadProcess.run(ShellLauncher.java:99)
at java.lang.Thread.run(Thread.java:619)

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
Thomas E Enebo added a comment - 25/Nov/08 1:31 PM

Can you retests this with jruby 1.1.5 to make sure this issue is still occurring? This one is tough for us to dig into with getting more info of some kind. I know it may be difficult to reduce this, but the particular stack trace is not enlightening by itself. If you could try and reduce it to a script we can run on our machine it will be extremely helpful.

Show
Thomas E Enebo added a comment - 25/Nov/08 1:31 PM Can you retests this with jruby 1.1.5 to make sure this issue is still occurring? This one is tough for us to dig into with getting more info of some kind. I know it may be difficult to reduce this, but the particular stack trace is not enlightening by itself. If you could try and reduce it to a script we can run on our machine it will be extremely helpful.
Hide
Permalink
Suraj Kurapati added a comment - 25/Nov/08 1:37 PM

Actually, I think I narrowed down the problem:

When a Ruby file is require()-ed more than once from an RSpec spec, this problem occurs.

Show
Suraj Kurapati added a comment - 25/Nov/08 1:37 PM Actually, I think I narrowed down the problem: When a Ruby file is require()-ed more than once from an RSpec spec, this problem occurs.
Hide
Permalink
Charles Oliver Nutter added a comment - 01/Dec/08 1:04 PM

Suraj: Perhaps you mean loaded more than once? requiring more than once should never cause it to re-execute the file.

This is an interesting case; can you try to figure out which file is getting loaded here? We need to narrow down what it is about that file that's breaking.

Show
Charles Oliver Nutter added a comment - 01/Dec/08 1:04 PM Suraj: Perhaps you mean loaded more than once? requiring more than once should never cause it to re-execute the file. This is an interesting case; can you try to figure out which file is getting loaded here? We need to narrow down what it is about that file that's breaking.
Hide
Permalink
Charles Oliver Nutter added a comment - 15/Feb/09 9:13 PM

No followup after the last comment, and we've not had a single report of this kind since then. I think it's probably ok now. Please reopen if you're still seeing it.

Show
Charles Oliver Nutter added a comment - 15/Feb/09 9:13 PM No followup after the last comment, and we've not had a single report of this kind since then. I think it's probably ok now. Please reopen if you're still seeing it.

People

  • Assignee:
    Charles Oliver Nutter
    Reporter:
    Suraj Kurapati
Vote (0)
Watch (1)

Dates

  • Created:
    09/Sep/08 12:16 AM
    Updated:
    27/Oct/09 1:48 PM
    Resolved:
    15/Feb/09 9:13 PM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.