Skip to content

Conversation

@humaite
Copy link
Collaborator

@humaite humaite commented Dec 17, 2025

When arweave terminates, sometimes the session is still present on epmd. This commit will restart epmd if possible.

@humaite humaite self-assigned this Dec 17, 2025
@humaite humaite force-pushed the humaite/restart-arweave-after-epmd-session-leak branch 2 times, most recently from 064087a to c90ae6a Compare December 18, 2025 09:00
When using bin/start script, if an epmd session leaks
is found in the loop, the script should be able to restart
it. This procedure is only executed if ARWEAVE_EPMD_AUTO_RESTART
environment variable is set. Here other environment variable added:

 - ARWEAVE_RESTART_LIMIT
 - ARWEAVE_EPMD_AUTO_RESTART
 - ARWEAVE_EPMD_RESTART_METHOD

When arweave process is killed and ARWEAVE_EPMD_AUTO_RESTART environment
variable is set, the following message is returned:

    ./bin/start: line 212: 570756 Killed ${ARWEAVE} foreground ${*}
    Arweave Heartbeat: The Arweave server has been terminated by the system (SIGKILL).
    Arweave Heartbeat: Arweave will be restarted in 15 seconds.
    Arweave Heartbeat: If you would like to avoid this, press control+c to kill the server.
    Arweave Heartbeat: Start epmd restart procedure
    Arweave Heartbeat: epmd (554721) run as arweave:arweave with 0 sessions with ppid 1.

This feature is only useful when one server is dedicated to run one
arweave node. In case of many node running, the current procedure will
not work correctly. epmd is restart only if a session leak is detected.
@humaite humaite force-pushed the humaite/restart-arweave-after-epmd-session-leak branch from 70c2c4b to 49a6f4f Compare December 18, 2025 10:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants