Cant make application release created with exrm to get running

I’m working on Windows 10 with Elixir 1.4.1 and latest Phoenix available. I tried to make release with exrm for several simple projects and no way. So basicly I can create a release but I can’t make it get to start.

After release created successfully I’m following the tutorial by installing release:

rel\bench_phoenix\bin\bench_phoenix install
Administrative permissions required. Detecting permissions...
C:\EPROJE~1\elixir\BENCH_~1\rel\BENCH_~1\erts-8.0\bin\erlsrv.exe: Service bench_phoenix_0.0.1 added to system.

I can see app installed as service in Windows services list… then when starting service I’m getting this error below, that doesn’t say much …

rel\bench_phoenix\bin\bench_phoenix start
Administrative permissions required. Detecting permissions...
C:\EPROJE~1\elixir\BENCH_~1\rel\BENCH_~1\erts-8.0\bin\erlsrv.exe: Failed to start service bench_phoenix_0.0.1.

I tried creating simple default Phoenix project without ecto but getting the same error. Anyone successfull running release on Windows?

1 Like

You would need to take a look at the logs output by the release, I suspect the issue is either due to permissions, or due to a missing application, or misconfiguration - any of the three can cause the release to fail to boot.

2 Likes

It was my first take, but could not find any log file under rel\bench_phoenix\ and in any subfolder …

1 Like

Try running rel\bench_phoenix\bin\bench_phoenix console and see what you get for output.

1 Like

Finaly found a dump file after console command run. It starts like below, I cant see any significant info …

=erl_crash_dump:0.3
Tue Feb 07 21:29:10 2017
Slogan: Kernel pid terminated (application_controller) ({application_start_failure,bench_phoenix,{{shutdown,{failed_to_start_child,‘Elixir.BenchPhoenix.Endpoint’,{shutdown,{failed_to_start_child,'Elixir.Phoen
System version: Erlang/OTP 19 [erts-8.0] [64-bit] [smp:8:8] [async-threads:10]

1 Like

Could you paste more of that dump? The reason why it’s failing is just beyond the end of where you cut the output.

1 Like
=erl_crash_dump:0.3
Wed Feb 08 07:38:31 2017
Slogan: Kernel pid terminated (application_controller) ({application_start_failure,bench_phoenix,{{shutdown,{failed_to_start_child,'Elixir.BenchPhoenix.Endpoint',{shutdown,{failed_to_start_child,'Elixir.Phoen
System version: Erlang/OTP 19 [erts-8.0] [64-bit] [smp:8:8] [async-threads:10]
Compiled: Tue Jun 21 19:53:45 2016
Taints: crypto,erl_tracer
Atoms: 9640
Calling Thread: scheduler:1
=scheduler:1
Scheduler Sleep Info Flags: 
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK | NONEMPTY | UNKNOWN(134217728)
Current Process: <0.0.0>
Current Process State: Running
Current Process Internal State: ACT_PRIO_NORMAL | USR_PRIO_NORMAL | PRQ_PRIO_NORMAL | ACTIVE | RUNNING | TRAP_EXIT | ON_HEAP_MSGQ
Current Process Program counter: 0x000002b066c75920 (init:sleep/1 + 64)
Current Process CP: 0x0000000000000000 (invalid)
Current Process Limited Stack Trace:
0x000002b064b9fbb0:SReturn addr 0x66C71CD0 (init:boot_loop/2 + 3560)
0x000002b064b9fbb8:SReturn addr 0x9594FE98 (<terminate process normally>)
=scheduler:2
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
Current Process: 
=scheduler:3
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
Current Process: 
=scheduler:4
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
Current Process: 
=scheduler:5
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
Current Process: 
=scheduler:6
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
Current Process: 
=scheduler:7
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: 
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
Current Process: 
=scheduler:8
Scheduler Sleep Info Flags: SLEEPING | POLL_SLEEPING | WAITING
Scheduler Sleep Info Aux Work: THR_PRGR_LATER_OP
Current Port: 
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 0
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: OUT_OF_WORK | HALFTIME_OUT_OF_WORK
1 Like

When you run the console task, do you get any output on stdout? That dump is incomplete, but would be less useful than a stack trace on stdout which is what I’d expect normally.

1 Like