mirror of
https://github.com/fosrl/pangolin.git
synced 2026-05-06 12:55:03 -05:00
[GH-ISSUE #2259] pangolin keeps polling - cpu is used #10880
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @BerndK-Str on GitHub (Jan 17, 2026).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/2259
Describe the Bug
While there is no traffic (also no blocked one) the cpu is constantly using about 5%
This is not a drama but maybe a chance of improvement.
I have no idea if this is by intention, if so, please close this issue.
Environment
To Reproduce
top
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4757 root 20 0 17.3g 312572 38724 S 5.3 29.8 2:50.27 MainThread
123 root 20 0 1868244 39016 22620 S 0.3 3.7 0:05.17 containerd
note PID '4757' of process 'MainThread'
(apt install strace)
strace -tt -p 4757
strace: Process 4757 attached
09:33:10.183308 epoll_pwait(13, [], 1024, 1, NULL, 8) = 0
09:33:10.184519 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
09:33:10.184596 epoll_pwait(13, [], 1024, 1, NULL, 8) = 0
09:33:10.185804 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
09:33:10.185845 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
09:33:10.185909 epoll_pwait(13, [], 1024, 1, NULL, 8) = 0
09:33:10.187027 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
09:33:10.187114 epoll_pwait(13, [], 1024, 1, NULL, 8) = 0
09:33:10.188257 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
09:33:10.188323 epoll_pwait(13, [], 1024, 1, NULL, 8) = 0
09:33:10.189481 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
09:33:10.189547 epoll_pwait(13, [], 1024, 1, NULL, 8) = 0
09:33:10.190705 epoll_pwait(13, [], 1024, 0, NULL, 8) = 0
...
The 'AI' says: indication for busy-polling, the event loop never sleeps.
Expected Behavior
lower CPU when idle
@yann117 commented on GitHub (Jan 19, 2026):
I observed that as well, Pangolin is the most active app in my docker deployment.
I have a homeserver hosting Jellyfin, Immich, Filebrowser, Vaultwarden, ... and I fully agree with the OP, this is minor but probably room for improvement.
When you deeply fine-tuned your server for the lowest CPU usage and lower the power consumption, every saved Watt is welcome 👍
@tjakubo commented on GitHub (Jan 22, 2026):
Same here, and I'd be fine if it used a lot of CPU when proxying any traffic, but on a mini PC with a tiny passive heater a non-insignificant load 24/7 can throw in a wrench.
@github-actions[bot] commented on GitHub (Feb 6, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
@BerndK-Str commented on GitHub (Feb 6, 2026):
Isn't there any comment or response from official contributors?
@LaurenceJJones commented on GitHub (Mar 1, 2026):
as stated by @yann117 the issue is minor and we can look at it as an enhancement for future, the thing to keep in mind that there a lot of components that fetch configuration on a polling basis which most likely is where the lack of idleness comes from.
By your initial issue I guess your only using local site (as gerbil and newt have no version)? if so Traefik fetches every 10 seconds to get updated configuration (this in turn will make pangolin search the database for all routes and configuration that traefik needs to know), this is how the dynamic provider for traefik operates.
but as ever there never a bad opportunity to improve the codebase just currently on the list of items to resolve this is backlogged for future.