3

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?

Hugo Carlos
  • 401
  • 3
  • 22

0 Answers0