部署中的Phoenix错误:模块连接不可用

时间:2016-01-04 19:37:22

标签: elixir phoenix-framework ecto

我正在开发一个Phoenix应用程序并且在生产中遇到了一个我在调试时遇到问题的问题。

**(UndefinedFunctionError)未定义函数:Connection.start_link / 2(模块连接不可用)^ M             Connection.start_link(Postgrex.Connection,[hostname:“localhost”,timeout:5000,otp_app :: xxx,repo:xxx.Repo,adapter:Ecto.Adapters.Postgres,username:“xxx”,password:“xxx”, database:“xxx”,extensions:[{Ecto.Adapters.Postgres.DateTime,[]},{Postgrex.Extensions.JSON,[library:Poison]}],port:5432])^ M             (ecto)lib / ecto / adapters / connection.ex:27:Ecto.Adapters.Connection.connect / 2 ^ M             (ecto)lib / ecto / pools / poolboy / worker.ex:58:Ecto.Pools.Poolboy.Worker.handle_call / 3 ^ M             (stdlib)gen_server.erl:629 :: gen_server.try_handle_call / 4 ^ M             (stdlib)gen_server.erl:661 :: gen_server.handle_msg / 5 ^ M             (stdlib)proc_lib.erl:240 :: proc_lib.init_p_do_apply / 3 ^ M

  • 应用程序在我的开发机器上没有这样的麻烦
  • 应用程序正在我的生产计算机上运行,​​但具有数据库访问权限的页面因此错误而失败
  • 可能影响此问题的先前无障碍应用程序的更改包括:
    1. 凤凰城的最新版本
    2. Elixir 1.1 vs 1.0;更新版本的Postgrex,Ecto,Exrm等;
    3. 我试图使用boldpoker / edeliver,而不是我之前编造的Mina食谱;但是我一直很努力,因为这是一条艰难的道路。

1 个答案:

答案 0 :(得分:10)

是的,它是Postgrex中的一个错误,修复了master。只需将:connection添加到mix.exs文件中的应用列表中。