MemCacheError: executare a expirat

voturi
0

Sunt folosind minunat bijuterie cache-bani cu un proiect de șine de mare. I a lua în mod frecvent aceste excepții

Memcache :: MemCacheError: executare a expirat“

Nu pare a fi o rimă , nici un motiv. Ce anume înseamnă și cum să se stabilească?

EDITAȚI | ×:

Aici este o urmă stivă reprezentativă:

lib/authenticated_system.rb:100:in `login_from_session'
lib/authenticated_system.rb:12:in `current_user'
lib/authenticated_system.rb:6:in `logged_in?'
lib/authenticated_system.rb:35:in `authorized?'
lib/authenticated_system.rb:53:in `login_required'

Linia în cauză este de la RESTful_Authentication:

self.current_user = User.find(session[:user_id]) if session[:user_id]
Întrebat 12/03/2009 la 14:34
sursa de către utilizator
În alte limbi...                            


2 răspunsuri

voturi
0

Am auzit prin colegii care clientul implicit memcache Rails' nu încearcă să se reconecteze automat la daemon memcache în cazul în care pentru un motiv sau altul se oprește și pornește din nou, deși nu l - am confirmat eu. De fiveruns memcache-client stabilește bibliotecă această problemă.

Publicat 14/03/2009 la 17:59
sursa de către utilizator

voturi
1

Cred că Michael Simons a răspuns la întrebarea mea prin său post pe blog . În esență, aceasta este o problemă cunoscută care există între pasageri și Memcached.

Aici a fost fix lui Michael:

# environment.rb
begin
   PhusionPassenger.on_event(:starting_worker_process) do |forked|
     if forked
       # We're in smart spawning mode, so...
       # Close duplicated memcached connections - they will open themselves
       CACHE.reset
     end
   end
# In case you're not running under Passenger (i.e. devmode with mongrel)
rescue NameError => error
end
Publicat 25/03/2009 la 16:33
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more