Memory leak in v1.4.0 due to webhook timeouts (heap grows to 7GB+) #11578
|
Outline version: 1.4.0 (Node.js v22.21.0) Problem: Node.js process memory grows uncontrollably until crash with FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed. Memory spikes up to 7GB+ before OOM. Root cause: Webhook tasks timeout and leak resources. Each documents.update triggers DeliverWebhookTask - if endpoint is unresponsive (404/timeout), objects stay in memory. Logs before crash: text <--- Last few GCs ---> FATAL ERROR: Ineffective mark-compacts near heap limit - JavaScript heap out of memory Normal: ~300-500 MB Peak before crash: 7GB+ Docker stats showed constant growth until limit Fix: Delete the webhook After fix: Memory stable at ~800 MB. Expected behavior: Timeouts should properly clean up resources (sockets, promises, event listeners) instead of leaking. |
Replies: 1 comment 3 replies
|
Sounds like you fixed it, why not submit as an issue or PR? |
Fixed here #11580 – will be in the next release.