Container mempool_api_1 cosumes a lot of CPU
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 12k
- Forks
- 793
- PR merge metrics
- No merged PRs in 30d
Description
UmbrelOS 1.2.2
Bitcoin node 27.1
Electrs 0.10.2
Mempool 3.0.1
My Umbrel instance runs as HyperV virtual machine with 4 CPU and 32gb of RAM.
On my instance the mempool_api_1 container constantly consumes a lot of CPU; even when mempool's UI front-end is not opened the web browser. According to docker stats the CPU consumption almost always stays above 100%, with spikes well above 300%. For example:
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
f1633f635e44 bitfeed_api_1 1.69% 585.4MiB / 31.34GiB 1.82% 18.4GB / 1.63GB 405MB / 1.83GB 29
729834237b5c mempool_api_1 269.44% 1.918GiB / 31.34GiB 6.12% 544GB / 4.85GB 1.15GB / 27.3GB 18
c89f85153d9e bitcoin_tor_1 0.53% 36.48MiB / 31.34GiB 0.11% 3.42GB / 2.78GB 193MB / 263MB 1
b8a73a20a448 bitcoin_bitcoind_1 5.93% 3.956GiB / 31.34GiB 12.62% 4.2GB / 455GB 144GB / 16.4GB 19
654b960f9f03 syncthing_server_1 2.47% 823.3MiB / 31.34GiB 2.57% 94.6GB / 2.16GB 21.2GB / 113GB 25
4aade2080f50 gitea_server_1 0.10% 98.54MiB / 31.34GiB 0.31% 109MB / 40.5MB 1.04GB / 230MB 12
[other containers with less that 0.1% CPU are skipped]
And the docker top mempool_api_1 shows that CPU is being eaten by node /backend/package/index.js
UID PID PPID C STIME TTY TIME CMD
umbrel 66290 66238 0 Oct20 ? 00:00:06 /sbin/docker-init -- docker entrypoint.sh ./wait-for-it.sh mariadb:3306 --timeout=720 --strict -- ./start.sh
umbrel 66461 66290 0 Oct20 ? 00:00:00 /bin/sh /backend/start.sh
umbrel 66766 66461 65 Oct20 ? 1-14:38:35 node /backend/package/index.js
Is this a known issue? Is this an Umbrel's specific issue at all, or is this mempool's behavior by design?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the report with the listed UmbrelOS, Bitcoin, Electrs, and Mempool versions using docker stats and docker top; inspect node /backend/package/index.js launched by /backend/start.sh. The issue names no repository test or expected fix, so first establish whether the CPU usage is caused by Umbrel integration or Mempool behavior before defining done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, node.js, typescript
- Domain
- backend, devops, infrastructure
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100