[Catalyst] Distributed session storage problems/questions [SOLVED]

Matt Pitts mpitts at a3its.com
Thu Feb 21 19:18:29 GMT 2008


> -----Original Message-----
> From: Jay K [mailto:jayk at ion0.com]
> Sent: Thursday, February 21, 2008 1:35 PM
> To: The elegant MVC web framework
> Subject: Re: [Catalyst] Distributed session storage problems/questions
> 
> Hello Matt,
> 
> This looks like a version mismatch of the
> Catalyst::Authentication::Store::DBIx::Class module on the two
> machines.
> 
> Recently I added functionality to the module which allow users to
> avoid the DB hit when restoring a user from the session, part of this
> change entailed changing the data stored in the session for a user.
> 
> The old module simply stored the user's ID in the session.  The new
> way stores all the user information in the session, and then attempts
> to restore it either using the id field or, if caching is turned on,
> all the fields stored.
> 
> It sounds like one of your machines is using the older version of the
> module and one is using the newer version of the module.
> 
> Bring the modules into sync and the problem should go away.  Though I
> expect that at least half of your sessions will need to be reset
> because you probably have 2 different types of data in there now from
> authentication on the two machines.
> 
> Jay

Jay,

Confirmed!

One was running:
  Catalyst::Authentication::Store::DBIx::Class 0.104

And the other:
  Catalyst::Plugin::Authentication::Store::DBIx::Class 0.10

This is the whole reason I'm moving to PAR-based deployments.

One instance of the app was on the existing app server and the other had
been deployed from a PAR that was built on a fresh system on which I had
installed all the Cat/Perl libraries. After my post to the list I "took
a step back" reverted back may changes and deployed 2 instances from the
same PAR and the problem vanished. I haven't yet re-enabled my 2nd
memcached instance but, based on your post and that of Lars, I'm now
confident that's not the issue. 

Even though the problem is solved it's great to know what the underlying
problem was.

Thanks for the post!

v/r

-matt pitts



More information about the Catalyst mailing list