I'm trying to create a new Phoenix app using RethinkDB as the database and RethinkDB_Ecto as the adapter.
I've created the app and followed the instructions on GitHub: https://github.com/almightycouch/rethinkdb_ecto
My mix.exs
:
def application do
[mod: {RethinkPhoenix, []},
applications: [:phoenix, :phoenix_pubsub, :phoenix_html, :cowboy, :logger, :gettext,
:phoenix_ecto, :rethinkdb_ecto]]
end
...
defp deps do
[{:phoenix, "~> 1.2.0"},
{:phoenix_pubsub, "~> 1.0"},
{:phoenix_ecto, "~> 3.0"},
{:phoenix_html, "~> 2.6"},
{:phoenix_live_reload, "~> 1.0", only: :dev},
{:rethinkdb_ecto, github: "almightycouch/rethinkdb_ecto"},
{:gettext, "~> 0.11"},
{:cowboy, "~> 1.0"}]
end
My config/dev.exs
:
config :rethink_phoenix, RethinkPhoenix.Repo,
adapter: RethinkDB.Ecto,
hostname: "localhost",
port: 28015,
pool: 10
Then I do mix deps.get
, start rethinkdb --bind all
in another tab and try to run mix ecto.create
, but get the following errors:
Compiling 12 files (.ex)
warning: function RethinkDB.Ecto.in_transaction?/1 is undefined or private
lib/rethink_phoenix/repo.ex:2
warning: function RethinkDB.Ecto.rollback/2 is undefined or private
lib/rethink_phoenix/repo.ex:2
Generated rethink_phoenix app
** (ArgumentError) argument error
:erlang.process_info(nil, :dictionary)
(elixir) lib/process.ex:521: Process.info/2
lib/rethinkdb/connection.ex:210: RethinkDB.Connection.__pool__/1
lib/rethinkdb/connection.ex:111: RethinkDB.Connection.run/3
lib/rethinkdb_ecto.ex:150: RethinkDB.Ecto.storage_up/1
lib/mix/tasks/ecto.create.ex:36: anonymous fn/3 in Mix.Tasks.Ecto.Create.run/1
(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
I even created an issue on the repo on GitHub thinking this could be a library error but someone answered that it is working for them, so I believe I'm missing something.
Can anyone give me a hand?