# Incompatible marshal file format

**URL:** <https://www.ruby-forum.com/t/incompatible-marshal-file-format/105179>\
**Category:** Rails\
**Created:** [May 26, 2007, 7:57pm UTC](https://www.ruby-forum.com/t/incompatible-marshal-file-format/105179 "2007-05-26T19:57:29Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tom\_Wadlow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/65b543/32.png) [@Tom\_Wadlow](https://www.ruby-forum.com/u/Tom_Wadlow)\
**Post date:** [May 26, 2007, 7:57pm UTC](https://www.ruby-forum.com/t/incompatible-marshal-file-format/105179/1 "2007-05-26T19:57:29Z")

</div>

Hi,

I’ve written a RoR application that I would like to be able to deploy  
more  
widely, but I’m running into a rather peculiar problem with it.

First, some context. Here’s what I’ve got installed:

actionmailer (1.3.3)  
actionpack (1.13.3)  
actionwebservice (1.2.3)  
activerecord (1.15.3)  
activesupport (1.4.2)  
fcgi (0.8.7)  
mime-types (1.15)  
rails (1.2.3)  
rake (0.7.3)  
sources (0.0.1)  
sqlite3-ruby (1.2.1)  
unicode (0.1)  
ruby 1.8.4 (2005-12-24) [i386-freebsd6]

In my application, I’m generating a home page for my own use, that has  
on it  
some useful links plus schedule info and news. So, while there are other  
pages  
in the app, mostly, my browser is sitting on one particular page all the  
time.  
Because the page content changes over time, I have this statement in the  
HEAD  
section of the .rhtml

causing the page to be reloaded every 10 minutes. I have this same page  
up  
on  
a number of machines in my office, so each of them refreshes every 10  
minutes,  
at staggered times.

I only have one plugin installed: acts\_as\_authenticated (most recent  
comment  
in  
the CHANGELOG is 1 Aug 2006. Freshly downloaded). This page  
requires a username and password to access, and aaa is how I do that.  
Once  
logged in, the page can be accessed as much as you like without  
reauthentication.

This arrangement works fine for days at a time, but every once in a  
while,  
the whole thing spazzes out with this error:

TypeError (incompatible marshal file format (can’t be read)  
format version 4.8 required; 47.117 given):  
/usr/local/lib/ruby/1.8/pstore.rb:353:in `load' /usr/local/lib/ruby/1.8/pstore.rb:353:in`load’  
/usr/local/lib/ruby/1.8/pstore.rb:306:in `transaction' /usr/local/lib/ruby/1.8/cgi/session/pstore.rb:90:in`update’  
/usr/local/lib/ruby/1.8/cgi/session/pstore.rb:97:in `close' /usr/local/lib/ruby/1.8/cgi/session.rb:330:in`close’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/base.rb:1184:in  
`close_session' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1228:in`process\_cleanup\_without\_flash’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/flash.rb:146:in  
`process_cleanup_without_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:662:in`process\_cleanup\_without\_session\_management\_support’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/session\_management.rb:124:in  
`process_cleanup_without_components' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/components.rb:178:in`process\_cleanup’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/base.rb:435:in  
`process_without_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:624:in`process\_without\_session\_management\_support’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/session\_management.rb:114:in  
`process' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:330:in`process’  
/usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in  
`dispatch' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:168:in`process\_request’  
/usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi\_handler.rb:143:in  
`process_each_request!' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:109:in`with\_signal\_handler’  
/usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi\_handler.rb:142:in  
`process_each_request!' /usr/local/lib/ruby/site_ruby/1.8/fcgi.rb:612:in`each\_cgi’  
/usr/local/lib/ruby/site\_ruby/1.8/fcgi.rb:609:in `each_cgi' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:141:in`process\_each\_request!’  
/usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi\_handler.rb:55:in  
`process!' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:25:in`process!’  
/home/homepage/public/dispatch.fcgi:24

Once it spazzes, the server (lighttpd, running with fastCGI from a shell  
as  
“script/server” while I’m developing) is useless and must be restarted.  
The  
pages that were active when this happens get only garbage. Refreshing  
them  
gets more garbage. Killing and restarting the server fixes everything,  
for  
the  
moment.

By lowering the time in the META directive, I can make it happen faster,  
but  
never consistently. It still takes the better part of a day to occur.  
There  
are no database writes happening here, so it should not be a contention  
issue  
there.

The only thing that I can think of is that I am logged in as the same  
user  
on  
each machine, and somehow RoR is trying to update the same session file  
for  
each different session, and two or more sessions are colliding in this,  
trashing the file. However, the fact that killing and restarting the  
server  
works (and doesn’t require relogin, just refresh), suggests that the  
session  
files are not trashed, so the problem is likely elsewhere.

Any thoughts? All constructive help is greatly appreciated!

–Tom
