ruby-on-rails - "Rake spec"大多数测试失败,但 "rails s"在 Diaspora 源上工作正常

标签 ruby-on-rails ruby postgresql rspec diaspora

我已经克隆了 Diaspora 的源代码,并且我有一个可以正常运行的本地 pod,它似乎可以正常运行。但是当我运行 $ rake spec 时,一些初始测试通过了,然后所有测试都开始失败。此外,我发现有趣的是,每次运行 rake spec 时,它们都会在不同的点失败。

它们都因错误而失败:

An error occurred in an after hook
  ActiveRecord::StatementInvalid: PG::ConnectionBad: PQsocket() can't get socket descriptor: ROLLBACK
  occurred at /home/darshan/.rvm/gems/ruby-2.0.0-p353@diaspora/gems/activerecord-3.2.16/lib/active_record/connection_adapters/postgresql_adapter.rb:650:in `async_exec'

Postgres 的日志说:

could not receive data from client: Connection reset by peer
unexpected EOF on client connection

最佳答案

我遇到了同样的问题,发现通过使用本地 unix socket 文件,而不是通过 localhost 访问 Postgres 服务器,问题似乎已经消失了。

要实现这一点,请从您的 database.yml 文件中删除 host: localhost,然后重新运行 rake spec。这默认返回到本地套接字文件(通常是/tmp 或/var/run/postgres 中的 .s.PGSQL.5432,具体取决于您的平台。)

关于ruby-on-rails - "Rake spec"大多数测试失败,但 "rails s"在 Diaspora 源上工作正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21736107/

相关文章:

ruby-on-rails - 使用 ruby​​ 将文本添加到现有 pdf

ruby-on-rails - 在 Rails 测试环境中无法使用 TimescaleDB

javascript - Rails 复选框隐藏字段类

ruby-on-rails - 如何在 Ruby on Rails 中将类方法链接在一起?

postgresql - postgres 交叉表,错误 : The provided SQL must return 3 columns

mysql - 数据库中特定字段(列)的数据量

ruby-on-rails - Rails 应用程序中的非持久数据

ruby - 如何在第一次出现时停止匹配?

python - 在 Mac 上安装 pyqt (v4.8) 时出错

sql - 索引使用说明