Session and Internal server Error

Hi, Im developing an application in Rails 2.02.
Everything seems to work fine but the problems begin when I try to put
some data in the session.

I have a model in proyect/models:

class Result
attr_accessor :names, :urls, :images
def initialize
@names = Array.new
@urls = Array.new
@images = Array.new
end
end

Controller:
@variable = Result.new
#code that fills up the values in the result arrays.
session[:result] = @result

I fill these attributes from a controller. At the end, if I try to put
the variable into the session I get the msg:

Status: 500 Internal Server Error Content-Type: text/html
500 Internal Server Error

Any ideas? thanks!

This is the trace of the log

Rendering /Library/Ruby/Gems/1.8/gems/actionpack-2.0.2/lib/
action_controller/templates/rescues/layout.erb (internal_server_error)
/!\ FAILSAFE /!\ Mon Dec 24 14:19:02 +0100 2007
Status: 500 Internal Server Error
CGI::Session::CookieStore::CookieOverflow
/Library/Ruby/Gems/1.8/gems/actionpack-2.0.2/lib/action_controller/
session/cookie_store.rb:112:in `close’

Is it too big what I’m trying to store in the session?

On 24 Dec 2007, at 12:58, Javier Q. wrote:

@names = Array.new
I fill these attributes from a controller. At the end, if I try to put
the variable into the session I get the msg:

There should be a full stack trace in your log files.
Are you putting anything unserializable in your session?

Fred

On Dec 24, 2007, at 2:20 PM, Javier Q. wrote:

Rendering /Library/Ruby/Gems/1.8/gems/actionpack-2.0.2/lib/
action_controller/templates/rescues/layout.erb (internal_server_error)
/!\ FAILSAFE /!\ Mon Dec 24 14:19:02 +0100 2007
Status: 500 Internal Server Error
CGI::Session::CookieStore::CookieOverflow
/Library/Ruby/Gems/1.8/gems/actionpack-2.0.2/lib/action_controller/
session/cookie_store.rb:112:in `close’

Is it too big what I’m trying to store in the session?

In your snippet there’s this comment:

#code that fills up the values in the result arrays.

I guess the resulting cookie value after you populate the inner arrays
(think whole object tree marshalled + Base64 encoding + two dashes +
digest) is > 4K.

Do you really need such an object in the session. If yes then you’d
need to switch to a different storage.

– fxn

Thanks. I didn’t know that you could only store 4Kb in size in the
session. I guess that I will use a database to store it then.
Thanks for your fast reply!