Running the LND package (0.21.2-beta) on StartOS. I’m hitting intermittent LND health-check flapping — peers pong-timeout and disconnect, and the synced-true daemon cycles. The node itself is fine underneath (channels open, chain synced); it’s the health check tripping while LND’s main loop is briefly stalled.
I’ve traced the trigger to graph-heavy clients hitting LND at the same time — Mempool’s Lightning backend and RTL’s node view both do full DescribeGraph-style scrapes, and it also coincides with a peer doing a full historical gossip sync. When two of those overlap, LND stalls long enough (30s+ pong waits, occasionally 90s) to fail the check.
LND’s own routing-node docs point at exactly this symptom and give config values for it:
-
caches.rpc-graph-cache-duration=10m(caches the DescribeGraph response so repeated dashboard scrapes don’t re-hit the graph DB) -
gossip.msg-rate-bytes/gossip.msg-burst-bytes/num-restricted-slots(for the peer-disconnect churn)
My question: is there a way to set these in the LND service config that I’ve missed? I’ve looked through the package config and don’t see a custom/advanced lnd.conf area, but I might be overlooking it. If it’s not currently exposed, would it be possible to surface these values (or a raw lnd.conf passthrough) in the package?
For now I’ve worked around it by moving graph-heavy dashboards off LND (Mempool Lightning disabled, RTL pointed at CLN), but the cache/gossip settings look like the proper fix.
Hardware for context: OptiPlex 3070 (i5-9500T, 24GB) — so it’s not a resource limit, it’s slow graph queries blocking the loop.
Thanks!