Refs #39253 - perf 3/4 - Consolidate host data into the API endpoint - #1049
Draft
adamruzicka wants to merge 5 commits into
Draft
Refs #39253 - perf 3/4 - Consolidate host data into the API endpoint#1049adamruzicka wants to merge 5 commits into
adamruzicka wants to merge 5 commits into
Conversation
1 task
The host table previously relied on an accidental refresh cascade: parent polling updated Redux state, which changed callback identities, which triggered useEffect, which re-fetched hosts. This adds an explicit setTimeout-based polling chain (5s interval) that stops when the job finishes or on API error, and restarts when filters change. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace withInterval/setInterval polling with recursive setTimeout chains for job invocation and template invocation detail pages. This prevents request pileup by waiting for the previous response before scheduling the next poll. - Remove updateJob action (stored under unused UPDATE_JOB key) - Remove getTask action, expose cancellable via task node in RABL - Add extractErrorMessage helper consolidating duplicated error handling - Fix sprintf injection in error toast messages - Stop template invocation polling on finished/error states Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
adamruzicka
force-pushed
the
perf-part3
branch
4 times, most recently
from
July 29, 2026 09:50
1021504 to
fdab039
Compare
Adopt the cancel-first pattern from JobInvocationHostTable to prevent overlapping polls when getJobInvocation is called multiple times. This ensures that any pending timeout is cancelled before starting a new polling cycle, preventing race conditions and duplicate API calls.
Merge per-host task and permissions data into the paginated /api/v2/job_invocations/:id/hosts endpoint, eliminating the separate list_jobs_hosts action that fetched ALL hosts unpaginated. The API endpoint now accepts include_permissions parameter to optionally return task cancellable state and per-host permissions, replacing the data previously served by the non-API endpoint. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Contributor
|
LGTM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follows #1048