Matthew Denner created JRUBY-6459:
-------------------------------------

             Summary: JRuby head causes rack response to change behaviour
                 Key: JRUBY-6459
                 URL: https://jira.codehaus.org/browse/JRUBY-6459
             Project: JRuby
          Issue Type: Bug
    Affects Versions: JRuby 1.7
         Environment: # MACHINE INFORMATION

  Mac OS X 10.7.2
  Macbook Air
  2.13GHz Intel Core 2 Duo
  4GB 1067 MHz DDR3 RAM

# RVM VERSION

  $ rvm version
  rvm 1.10.2 by Wayne E. Seguin <wayneeseg...@gmail.com>, Michal Papis 
<mpa...@gmail.com> [https://rvm.beginrescueend.com/]

# ZSH VERSION

  $ zsh --version
  zsh 4.3.15 (x86_64-apple-darwin11.2.0)

# GCC VERSION

  $ gcc --version
  i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) 
(LLVM build 2336.1.00)
  Copyright (C) 2007 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

# JAVA VERSION (same one used for both JRuby installs)

  $ java -version
  openjdk version "1.7.0-u2-b21"
  OpenJDK Runtime Environment (build 1.7.0-u2-b21-20111223)
  OpenJDK 64-Bit Server VM (build 23.0-b06, mixed mode)

# MRI 1.9.3 (fails none of the tests, tried up to 1000)

  $ ruby --version
  ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0]

# JRUBY 1.6.6 (which fails none of the tests, tried up to 1000)

  $ jruby --version
  jruby 1.6.6 (ruby-1.8.7-p357) (2012-01-30 5673572) (OpenJDK 64-Bit Server VM 
1.7.0-u2-b21) [darwin-amd64-java]

# JRUBY HEAD (which fails *some* of the *identical* tests!)

  jruby-head @ 2cb0cf6

  $ jruby --version
  jruby 1.7.0.dev (ruby-1.9.3-p28) (2012-02-16 37928de) (OpenJDK 64-Bit Server 
VM 1.7.0-u2-b21) [darwin-amd64-java]

            Reporter: Matthew Denner
            Assignee: Thomas E Enebo
         Attachments: jruby-weird-bug.tar.gz

I have a Sinatra app that I'm working on that does very little and I'm testing 
it using RSpec 2.  It has 48 tests in it and, under jruby-head (SHA: 2cb0cf6) 
it will fail the last 23 tests; run it under MRI 1.9.3 or JRuby 1.6.6 and 
everything runs fine.  The failures appear to be Rack::MockResponse#status 
changing behaviour: when it's fine it works, when it fails it suddenly starts 
returning the response headers hash.

I've reduced the code to the bare minimum that triggers it on my machine and 
attached that as a tar.gz file.  There's a bundler Gemfile with Gemfile.lock to 
ensure the same gem versions are used, and an .rvmrc file that I've been using. 
 Note that the .rvmrc file sets 1.9 support but it doesn't actually matter, 
it'll still fail.

The included tests are *extremely* simple: make 26 GET requests to a Sinatra 
app that only handles GET.  As the Sinatra app stands it will cause the last 
test to fail.  Add the 'after' hook code (commented out in the source file) and 
2 tests will fail.  I haven't tried this on different machines to see if it's 
something about the environment.  When they do fail they do so with one of 4 
different errors:

  undefined method `to_i' for #<Hash:0x10d1ae41>
  undefined method `merge!' for nil:NilClass
  undefined method `[]=' for nil:NilClass
  undefined method `to_i' for #<Hash:0x15f1192d>

I believe that the errors I'm seeing with the enclosed code might be slightly 
different (i.e. it might not be Rack::MockResponse#status that's varying) but 
it's definitely the same behaviour (i.e. *something* isn't doing what it 
should!)

I've marked this as a Major bug as this code isn't in production and JRuby 
1.6.6 works as an alternative.  However, we couldn't use this in a production 
environment if this is a problem in JRuby.

Oh, because of the behaviour of the errors: please tell me this isn't my RAM 
failing on my machine!

Thanks,
Matthew

--
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