http_response seems to be using String.each

Joe Marty joe at ownlocal.com
Wed Sep 21 19:42:29 EDT 2011


I just installed Unicorn 4.1.1 to serve a Rails 3 project behind nginx
on a server running Ruby 1.9.2 and I'm getting this error on every app
request:

app error: undefined method `each' for #<String:0xc42712c> (NoMethodError)
/usr/local/lib/ruby/gems/1.9.1/gems/unicorn-4.1.1/lib/unicorn/http_response.rb:41:in
`http_response_write'

I don't know for sure if 'body' is supposed to be an array, or if it's
correctly a string and Unicorn is actually trying to read the string 1
line at a time using the each method, which was changed in ruby 1.9 to
'String.each_line'.  Any ideas?

The rails app does work fine in Passenger, and if I just swap out
passenger for Unicorn, it fails with that message.

-Joe


More information about the mongrel-unicorn mailing list