Service crash-looping on every boot — SIGABRT in better-sqlite3, no code/config fixes it
mhamza90
FREEOP

15 days ago

Service "Signal" (project vigilant-balance) has been crash-looping continuously for over an hour, restarting every 1-2 seconds without ever stabilizing. Every crash shows the identical native trace:

Assertion failed: (env) != nullptr

node::RemoveEnvironmentCleanupHook(...)

Database::~Database() [better-sqlite3]

It happens within about 1 second of "Mounting volume on: ..." every single time.

I've ruled out code and config as the cause:

  • Reverted to a commit confirmed stable minutes earlier — still crashes
    • Full rebuild/redeploy (not just restart) — still crashes
    • Removed a newly-added env var as a controlled test — still crashes
    • CPU/memory graphs show no spike before the crash
    • Railway status page shows no incident

Given the consistency (crashing every single boot, not intermittently), I suspect either a corrupted/locked SQLite file on the attached volume, or a degraded host. No backups are available on my plan to test a restore. Would really appreciate help checking server-side infra health for this service, or whether the database file on the attached volume needs inspection.

Solved$10 Bounty

Pinned Solution

Try upgrading better-sqlite3 to version 13 or newer in your package.json.

2 Replies

Railway
BOT

15 days ago

This thread has been opened as a bounty so the community can help solve it.

Status changed to Open Railway • 15 days ago


Try upgrading better-sqlite3 to version 13 or newer in your package.json.


mhamza90
FREEOP

15 days ago

That fixed it — upgraded to better-sqlite3 13.0.3 and the crash-loop is gone, service has been stable for several minutes now. Thank you!


Status changed to Solved medim • 15 days ago


Welcome!

Sign in to your Railway account to join the conversation.

Loading...