Skip to content

luci-app-qosify: poll at LuCI's interval - #9047

Open
choppyc79 wants to merge 1 commit into
openwrt:masterfrom
choppyc79:luci-app-qosify-pollinterval
Open

choppyc79 wants to merge 1 commit into
openwrt:masterfrom
choppyc79:luci-app-qosify-pollinterval

Conversation

@choppyc79

@choppyc79 choppyc79 commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

Pull request details

Description

The Overview and Status pollers pass a fixed 10 s to poll.add(), so this
page ignores luci.main.pollinterval. Dropping the argument makes poll.add()
use L.env.pollinterval (5 s unless set), which the user can change.

This goes against 3791919, which kept Status at 10 s because of the
qosify-status fork. On the default 5 s setting that fork now runs twice as
often, but still only while the Status tab is open, and Poll.step() still
holds each tick until the last one settles. A target that cannot afford it
raises luci.main.pollinterval rather than this page picking its own rate.

The header refresh toggle already paused both pollers (it stops the whole
loop) and is unchanged. No other change.

Maintainer

@choppyc79


Tested on

OpenWrt version: SNAPSHOT r36237-2ed2c210c3
LuCI version: 26.257.37274~f4eebd4
Web browser(s): Google Chrome


Checklist

  • (Nice to have) Includes what Issue it closes (e.g. openwrt/luci#issue-number).
  • (Nice to have) Includes what it depends on (e.g. openwrt/packages#pr-number in sister repo).

@openwrt-ai openwrt-ai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 1 new commit.


Generated by Claude Code

Both pollers pass a fixed 10 s to poll.add(), so the page ignores
luci.main.pollinterval. Leave the interval out so poll.add() takes
L.env.pollinterval (5 s unless set), which the user can change.

On the default setting the Status tab now forks qosify-status every
5 s rather than 10 s. It still does so only while that tab is open, and
Poll.step() still holds the next tick until the last one settles, so a
fork slower than the interval skips ticks instead of stacking up. A
target that cannot afford the fork at that rate raises
luci.main.pollinterval, which slows the rest of LuCI's polling with it,
instead of the page choosing its own rate.

Pausing with the header refresh toggle is unchanged, as it stops the
whole poll loop.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BoEgybb68JiJnqmasx6Sfh
Signed-off-by: Ash Clarke <clarkeaj@hotmail.co.uk>
@choppyc79
choppyc79 force-pushed the luci-app-qosify-pollinterval branch from 7f5a0aa to 65481ae Compare September 20, 2026 08:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants