-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Memory leak (dht?) #3469
Comments
Hello, @valmack can you tell me a little bit more about those 100ish connections you are making. Also if you don't need the preload feature can you turn it off and report back if memory still grows ? this.ipfs = await IPFS.create({
repo,
preload: {
enabled: false
}
}) |
Just an fyi here, we are not seeing this problem once we disabled the DHT. |
This is ready to be worked on, matter of prioritization & resourcing. |
We need to put in place a simulation to gather more information on what is leaking and make it easily reproducible. This is the type of simulation where https://github.com/testground/sdk-js would be extremely helpful. Without an analysis, I would say this is likely related to leaked DHT Queries that were not aborted/stopped, together with logic bugs in the DHT Query logic. I already saw both problems in the wild as we lack abort support and sometimes a DHT Query will not go straight to the less distant options. The solution, as part of protocol/web3-dev-team#30 is to probably re-write all the query logic from scratch |
Sounds like protocol/web3-dev-team#30 / libp2p/js-libp2p-kad-dht#183 needs to happen first (updating spec + overhaul codebase). |
2022-11-22: we think this is fixed, but feel free to let us know if not. |
AWS ECS FARGATE docker container with base
node:14.10.1
ipfs-http-server
Severity:
High
Description:
We are running a dockerized ipfs API server in Node.js 14.10 on AWS ECS. We are seeing memory increase linearly until out capacity limit at which point the instance crashes, which is 75% of 8192 MiB total memory (CPU usage stays at around 30% of 4096 units). Overall usage of the node is minimal (we are probably making less than 100 requests daily in total).
So far this is observed to occur after about 5 days--the drop is where the instance restarts.
(Note the dates... will post a more recent image if we see this happen again)
Steps to reproduce the error:
We are running both a server and gateway like so
The text was updated successfully, but these errors were encountered: