nginx重启问题

时间:2011-07-26 08:37:30

标签: ruby-on-rails ruby-on-rails-3 nginx passenger ruby-enterprise-edition

生产中存在一个特殊的问题。我用最新的datamapper和ruby-enterprise运行rails3 + nginx

每次部署新版本(touch restart.txt)时,在部署发生后,我会收到一堆错误(在不同请求期间发生)。错误并不总是一样的:

  • DataObjects :: SQLError:查询期间与MySQL服务器的连接丢失

  • ArgumentError:字段计数不匹配。预计有1个字段,但查询产生了10个

  • ArgumentError:字段计数不匹配。预计有10个字段,但查询产生了1

  • DataObjects :: SQLError:查询期间与MySQL服务器的连接丢失

我正在运行其他rails应用程序(2.3 + apache + ruby​​-ent)和活动记录,我从来没有在重启期间遇到任何问题

有没有人对于为什么会发生这种情况以及如何摆脱它有一些建议?

感谢 安德斯

1 个答案:

答案 0 :(得分:0)

当你执行sudo kill -HUP nginx_pid时,你会得到相同的错误吗? (做一个sudo ps aux | grep nginx来获取pid)。

这确实是一组非常奇怪的错误。在重新启动时,您仍然可以向数据库打开会话,从而导致数据库池出现问题? Rails数据库访问通常是间歇性的,但我可以想象如果你有一个长时间运行的数据库查询并且你试图重新启动Rails就会发生问题。

错误不断变化的事实会让我相信错误与资源访问有关,而不是配置问题。