almightycouch / rethinkdb_ecto

RethinkDB adapter for Ecto.
https://hexdocs.pm/rethinkdb_ecto
MIT License
114 stars 18 forks source link

Issues when running `mix ecto.migrate` #15

Closed techdragon closed 8 years ago

techdragon commented 8 years ago

Seems to be some kind of issue with checking for a pool that doesn't exist or an automatic default pool perhaps not being correct, I've been looking at the code for ensure_all_started myself but I haven't spotted the cause yet.

\ (MatchError) no match of right hand side value: Myapp.Repo.Pool lib/rethinkdb_ecto.ex:54: RethinkDB.Ecto.ensure_all_started/2 (ecto) lib/mix/ecto.ex:86: Mix.Ecto.ensure_started/2 (ecto) lib/mix/tasks/ecto.migrate.ex:72: anonymous fn/4 in Mix.Tasks.Ecto.Migrate.run/2 (elixir) lib/enum.ex:651: Enum."-each/2-lists^foreach/1-0-"/2 (elixir) lib/enum.ex:651: Enum.each/2 (mix) lib/mix/task.ex:296: Mix.Task.run_task/3 (mix) lib/mix/cli.ex:58: Mix.CLI.run_task/2 (elixir) lib/code.ex:363: Code.require_file/2

TrevorS commented 8 years ago

Also running into this problem.

Elixir: 1.3.2 Phoenix: 1.2.1 Ecto: 2.0.4

daniel1943 commented 8 years ago

Same, did anyone figure solution ?

almightycouch commented 8 years ago

I'm on holliday until September. Will try to fix that when I'm back.

You could try to downgrade to version 0.4.1which uses Ecto 1.x.

mdoza commented 8 years ago

@techdragon I have a temporary fix at mdoza/rethinkdb_ecto until @almightycouch does a real fix.

almightycouch commented 8 years ago

@mdoza, I've committed your changes into ecto_2 branch.

Currently, the :rethinkdb_ecto package depends on a fork of :rethinkdb which uses DBConnection (used by Ecto 2.x) instead of Connection.

After a lot of refactoring and a long discussion with @hamiltop (author of :rethinkdb) and @fishcakez (author of :db_connection), we decided not to merge the changes into mainstream.

I will refactor a lot of the current code to support Ecto 2.x using the actual :rethinkdb package.

In the meantime, you should consider downgrading to version 0.4 which is compatible with Ecto 1.x:

def deps do
  [{:rethinkdb_ecto, "~> 0.4"}]
end

If you really want to have support for Ecto 2.x, you can check-out the ecto_2 branch. Which actually has some flaws...

almightycouch commented 8 years ago

This issue should be fixed in the latest version. Please reopen if this is not the case.