EngineYard Rails 3 应用程序上出现 TypeError(没有为类 OpenSSL::Digest::Digest 定义 marshal_dump)
我们的应用程序在开发和测试中运行没有问题(所有 rspec 和 cucumber 测试都运行)。
但是,当部署到 EngineYard Cloud 时,我反复收到“我们很抱歉,但出了点问题”消息。
当我收到错误时,跟踪日志文件会告诉我页面已成功呈现,但有一个警告。
Completed 200 OK in 1833ms (Views: 28.1ms | ActiveRecord: 2.1ms)
TypeError (no marshal_dump is defined for class OpenSSL::Digest::Digest):
我看过一些关于 TypeError 的帖子,但似乎没有什么适合这种情况。
如果我能提供一些关于如何找出导致错误的原因的建议,我将不胜感激。
Our app runs without issue in development and test (all rspec and cucumber tests run)
When deployed to EngineYard Cloud, however, I repeatedly get the "We're sorry, but something went wrong" message.
When I receive the error, tailing the log files tells me the page rendered successfully, with one caveat.
Completed 200 OK in 1833ms (Views: 28.1ms | ActiveRecord: 2.1ms)
TypeError (no marshal_dump is defined for class OpenSSL::Digest::Digest):
I have seen some postings on the TypeError, but nothing that seems to fit this situation.
I would be grateful for some suggestions on how I might track down what is causing the error.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

我发现了这个问题。我不小心在会话中存储了一个模型实例,并且该模型具有加密的值。
我现在正确地只存储模型的 id,并且问题已经减轻。
I found the issue. I was accidentally storing a model instance in session, and the model had encrypted values.
I am now, properly, only storing the id of the model, and the issue has abated.