Failed to start application (function :pg2.create/1 is undefined or private)

Hello Everyone,

I’m trying to start and run Reticulum (ret) using the comman " iex -S mix phx.server ", but I get this error:

(Mix) Could not start application ret: Ret.Application.start(:normal, []) returned an error: shutdown: failed to start child: RetWeb.Endpoint
** (EXIT) shutdown: failed to start child: Phoenix.PubSub.PG2
** (EXIT) shutdown: failed to start child: Phoenix.PubSub.PG2Server
** (EXIT) an exception was raised:
** (UndefinedFunctionError) function :pg2.create/1 is undefined or private
(kernel 8.1.3) :pg2.create({:phx, Ret.PubSub})
(phoenix_pubsub 1.1.2) lib/phoenix/pubsub/pg2_server.ex:43: Phoenix.PubSub.PG2Server.init/1
(stdlib 3.16.1) gen_server.erl:423: :gen_server.init_it/2
(stdlib 3.16.1) gen_server.erl:390: :gen_server.init_it/6
(stdlib 3.16.1) proc_lib.erl:226: :proc_lib.init_p_do_apply/3

Any information about how to fix this?

Is this the same issue you are facing ?

1 Like

From what I see you should have the same issue therefore you can follow the solution suggested in my case…

1 Like

@kartheek , @nikitas thank you for guiding me to the solution,
I have found the version 2.0 from here but the steps of using Phoenix_pupsub are not clear, do you have a clear way to use it ?

1 Like

You are welcome.

Can you try this phoenix upgrade guide - PubSub 2.0 Changes .

@nikitas shared here - that he upgraded to phoenix 1.5.9 and pubsub to 2.0 and it worked for him.

I think you should decide which version of phoenix you will upgrade to 1.5 or 1.6

1 Like