Вопрос

Я продолжаю сталкиваться с этой ошибкой Ошибка MemCacheError (Сломанная труба):Сломанная труба в моем приложении Rails, и я не могу понять почему.

Когда я получаю доступ к memcached через Rails.cache в моем контроллере первые 1 или 2 операции чтения / записи, похоже, всегда выдают ошибку неработающего канала.Но когда я получаю доступ к memcached путем создания нового объекта, ActiveSupport::Cache::MemCacheStore.new, Кажется, я не получаю эту ошибку.

Я также получаю доступ к memcached в другом процессе ruby, и при первом чтении всегда возникает эта ошибка, независимо от способа доступа к memcached.Я действительно реализовал обходной путь, просто повторив попытку чтения, но я предпочел бы иметь лучшее долгосрочное решение.

В настоящее время я вижу эту проблему только после перезапуска memcached.Я использую Rails 2.3.5 и memcached 1.4.4 (я также пробовал это с memcached 1.2.2).

Это было полезно?

Решение

Я полагаю, что эта ошибка возникает при перезапуске memcached, когда приложение rails все еще запущено.Если вы перезапустите mongrel или приложение rails в passenger после перезапуска memcached, вы не должны увидеть эту проблему.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top