[os_mon] memory supervisor port (memsup): Erlang has closed

I have an api that gives certain data when passed an id.

I am able to fetch data as expected for all other ids but except the id=3.

The error is below

Crash dump is being written to: erl_crash.dump...
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
[os_mon] memory supervisor port (memsup): Erlang has closed

Number of rows for that id is 299 rows with other table having relation with this table.
For others it is working perfectly fine.

Is the issue related to memory management or timeout.
Approximately the response size might around ~ 15 MB

Any help.

Any help would be great

add new error line
erl_child_setup closed

think you need to post first parts of the crash dump (clean it up for any sensititve stuff) - also monitor computer during the crash ? does it saturate the cpu? does it run out of memory?

http://erlang.org/doc/apps/erts/crash_dump.html

my guess would be some kind of endless data loop, which then consumes all memory…

Can you please let me know where can I find the crash dump ?
Thanks.

honestly I never crash, but I assume it’s in the root of your project folder… else look around for it.

Not project root, but the BEAMs working dir.

2 Likes

Hi @sahilpaudel did you find the solution to your issue? I also ran into this problem recently. My case is when I call HTTPoison.post to some specific URL, then the app crashes.

iex(23)> HTTPoison.post("some_url", body)
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
[os_mon] memory supervisor port (memsup): Erlang has closed

there is no extra log.

May I ask where that is?

Where you started the program or configured the service to use as working dir.

Alternatively, it might be wherever ERL_CRASH_DUMP points to.

1 Like