在Heroku,Cedar,与Unicorn:获取ActiveRecord :: StatementInvalid:PGError:SSL SYSCALL错误:检测到EOF
Heroku支持称这与他们在共享数据库上的libssl版本有关,但我们也在一个专用数据库上的项目中遇到过它。
基本上这个错误经常发生(接近部署之后)我们已经转移到新的Cedar堆栈,而Unicorn配置为3个工作人员:
错误信息:
ActiveRecord::StatementInvalid: PGError: SSL SYSCALL error: EOF detected : SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull FROM pg_attribute a LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum WHERE a.at Where: some_controller#index [PROJECT_ROOT]/vendor/bundle/ruby/1.9.1/gems/activerecord-3.0.11/lib/active_record/connection_adapters/postgresql_adapter.rb, line 505
没有heroku的答案,但也许等待谁知道我们升级我们的共享数据库服务器*多久,我没有在谷歌上找到任何东西。
他们还建议它与独角兽的工人重叠有关,我们应该切换到Thin,但性能提升非常值得偶尔出错(我想!)。 我希望有一种方法可以配置Unicorn以防止重叠。
有没有人遇到过这个,如果有的话,你做了什么来解决它? 谢谢!
*不是他们的实际用语,而是他们回答后的感受。
Heroku支持建议我将它添加到我的Unicorn配置中:
附加到config/unicorn.rb
:
after_fork do |server, worker| if defined?(ActiveRecord::Base) ActiveRecord::Base.establish_connection end end
我添加了它,我们没有看到一个PGError: SSL SYSCALL
错误整天。
- travis setup heroku命令产生存储库未知错误
- 通过twitter-bootstrap-rails gem升级到bootstrap 2.0.1后,Heroku部署失败
- Heroku上的OpenSSL 1.0.1
- Heroku错误:ActionView :: Template :: Error(未定义的方法`validation码’用于#)
- 使用透明背景将PDF转换为PNG
- Heroku在git push上部署“预编译资产失败”
- 使用AWS RDS在Heroku App上获取Mysql2 :: Error(SSL连接错误:ASN:错误的其他签名确认)
- 无法推送到Heroku(找不到Rake 10.3.2)
- 使用RoR,FbGraph Gem和S3将照片发布到Heroku的Facebook Open Graph