You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit dcb6b69
Browse filesBrowse the repository at this point in the historyBrowse files
The poller target is already sent on each poll, but matching consumes it inside
the scaling decision and discards it -- nothing persists it and nothing can
observe it. Reporting it on the heartbeat too lets the server read it per worker
and export it as a metric, making fleet-wide poller distribution visible without
instrumenting every SDK.
WorkerHeartbeat already carries four WorkerPollerInfo sub-messages, so this is
per-task-type for free, including the normal-vs-sticky workflow split.
PollScaleReportHandle is a local inside AsyncPoller.start() and is not reachable
from the heartbeat builder. PollerTracker already exists to bridge exactly that
gap -- its javadoc says so -- so the target supplier goes there, and
buildPollerInfo reads it alongside the in-flight count it already reads.
AsyncNexusPollTask now overrides setPollerTargetSupplier purely to feed its
tracker. It had taken the interface's no-op default because the nexus poll
request has no field for a target, but it does have an autoscaler and a
heartbeat slot.
Fixed-size pools run MultiThreadedPoller, which has no scale report handle, so
no supplier is installed and the tracker reports 0 -- which the proto defines as
unknown. The api submodule moves to the commit carrying the new field.
0 commit comments