alg

alg

Issues with running Phoenix 1.4 app

Hi guys,

I’m having some weird problems with running a Phoenix 1.4 app. I have never seen this before with Phoenix 1.3. Right after the app is built afresh I can start it with mix phx.server just fine. Then I do Ctrl-C + Ctrl-C to exit, and upon restart I will most likely get this:

 → mix phx.server
Compiling 24 files (.ex)
[info] Running MasterCoachWeb.Endpoint with cowboy 2.5.0 at http://localhost:4000

Webpack is watching the files…

[error] Ranch listener MasterCoachWeb.Endpoint.HTTP had connection process started with :cowboy_clear:start_link/4 at #PID<0.543.0> exit with reason: {:undef, [{:cowboy_http, :init, [#PID<0.440.0>, MasterCoachWeb.Endpoint.HTTP, #Port<0.44>, :ranch_tcp, %{env: %{dispatch: [{:_, [], [{:_, [], Phoenix.Endpoint.Cowboy2Handler, {MasterCoachWeb.Endpoint, []}}]}]}, stream_handlers: [Plug.Cowboy.Stream]}], []}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]}

[error] Ranch listener MasterCoachWeb.Endpoint.HTTP had connection process started with :cowboy_clear:start_link/4 at #PID<0.544.0> exit with reason: {:undef, [{:cowboy_http, :init, [#PID<0.440.0>, MasterCoachWeb.Endpoint.HTTP, #Port<0.45>, :ranch_tcp, %{env: %{dispatch: [{:_, [], [{:_, [], Phoenix.Endpoint.Cowboy2Handler, {MasterCoachWeb.Endpoint, []}}]}]}, stream_handlers: [Plug.Cowboy.Stream]}], []}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]}

[error] Ranch listener MasterCoachWeb.Endpoint.HTTP had connection process started with :cowboy_clear:start_link/4 at #PID<0.545.0> exit with reason: {:undef, [{:cowboy_http, :init, [#PID<0.440.0>, MasterCoachWeb.Endpoint.HTTP, #Port<0.46>, :ranch_tcp, %{env: %{dispatch: [{:_, [], [{:_, [], Phoenix.Endpoint.Cowboy2Handler, {MasterCoachWeb.Endpoint, []}}]}]}, stream_handlers: [Plug.Cowboy.Stream]}], []}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]}

By trial and error, I found that it’s enough to remove compiled version of cowboy with $ rm -rf _build/dev/lib/cowboy to have another mix phx.server run the app successfully, but then on the next run I have to remove it again.

Any idea what this may be?

Most Liked

NobbZ

NobbZ

Your code does return conn only a single time, and it’s always the last one, it does render up to two times though, depending on the matches in the case.

alg

alg

I just discovered that it triggers recompilation that ruins beam files for certain dependencies that in turn ruins the app and it won’t launch the next time with full deps recompilation.

Note that disabling this specific “elixir” linter won’t work. It still does this recompilation. Disabling whole ale plugin worked for me.

Give it a try and let me know.

mayulu

mayulu

Has this be solved?

I had the same issue just now, and I updated Plug and Plug_Cowboy to the newest 1.7.1 and 2.0.1, issue still there.

And I found my code is the reason:
I return conn more than one time, something like the following:

def somefunc(conn, ...) do
  case xxxx do
    xx ->
      render(conn, ....)
   yy ->
     render(conn, ... )
  end
  render(conn, ...)
end

Then I removed last render expression, it solved.

Hope it help.

Where Next?

Popular in Questions Top

aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
beno
I will often find my self writing things similar to: case some_value do nil -&gt; something() "" -&gt; something() _ -&gt; somethi...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
tduccuong
Hi, is there any work on GUI with Elixir, that is similar to Electron/Javascript? My idea is to bundle Phoenix and BEAM into a single se...
New
JulienCorb
I am trying to implement my new.html.eex file to create new posts on my website. new.html.eex: &lt;h1&gt;Create Post&lt;/h1&gt; &lt;%= ...
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
ycv005
I have followed this StackOverflow post to install the specific version of Erlang. And When I am running mix ecto.setup then getting fol...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
nobody
Hi! In PHP: $_SERVER[‘SERVER_ADDR’] - in Elixir? Searched the docs for ip address and the web, no good results. Thanks!
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New

Other popular topics Top

New
Darmani72
If I have a post route which an argument: post /my_post_route/:my_param1, MyController.my_post_handler How would get the post params ...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID&lt;0.412.0&gt; terminating ** (Postgrex.Error) FATAL...
New
JeremM34
Hello, how can I check the Phoenix version ? Thanks !
New
aalberti333
As the title describes, I’m trying to run Enum.map() over a list of key/value pairs, where the value is a map. My data looks like this: ...
New
saif
Hello everyone, Long time lurker first time poster here. I’ve recently begun working on Elixir full-time again! :raised_hands: It’s been...
New
boundedvariable
I am going through the kafka architecture. All the features what the kafka is providing are already in Erlang. I would like hear your opi...
New
jaysoifer
Is there a way to rollback a specific migration and only that one (“skipping” all the other ones)? Would mix ecto.rollback -v 200809061...
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New

Latest on Elixir Forum

Elixir Forum

We're in Beta

About us Mission Statement