Skip to content

[FIX] Improve loader UX and abort race condition handling#3683

Draft
arturrybalskyy-dev wants to merge 1 commit into
mlrun:developmentfrom
arturrybalskyy-dev:fix/ML-11218/loader-placement-and-abort-handling
Draft

[FIX] Improve loader UX and abort race condition handling#3683
arturrybalskyy-dev wants to merge 1 commit into
mlrun:developmentfrom
arturrybalskyy-dev:fix/ML-11218/loader-placement-and-abort-handling

Conversation

@arturrybalskyy-dev

Copy link
Copy Markdown
Contributor

[FIX] Fix loader UX and abort race condition handling across multiple pages

📝 Description

Fixes two related UX issues that appeared across several pages:

  1. Loaders were covering ActionBar buttons and filters, making them inaccessible during data fetching
  2. Rapid filter changes or refreshes caused stale data race conditions due to missing request cancellation

🛠️ Changes Made

  • Fix <Loader overlay /> placement in Artifacts, Models, ModelEndpoints, MonitoringApplications, and FeatureStore pages — loaders no longer cover ActionBar/filters
  • Replace loading ? null pattern with <Loader section secondary /> to show visible loading state below ActionBar
  • Add abort-before-new pattern (AbortController) to MonitoringApplicationsPage and ModelEndpointsTable to prevent stale data race conditions on rapid refresh/filter changes
  • Wire AbortController signal via httpClient interceptor (requestLargeDataOnFulfill) so requests using config.ui.controller are properly canceled
  • Fix NoData flash on aborted ModelEndpoints fetch by guarding fulfilled handler against undefined payload
  • Extract shared isRequestAborted(message) utility to replace repeated inline [REQUEST_CANCELED, DEFAULT_ABORT_MSG].includes(...) checks across reducers and components

✅ Checklist

  • I have given the PR a well-structured title describing the domain and the specific change that was made
  • I tested the changes in the browser (locally or via preview build)
  • I confirmed that existing tests pass
  • I added or updated unit / integration tests (if needed)
  • I checked that this change doesn't introduce new console warnings or lint / formatting errors
  • I updated the relevant Jira ticket with the appropriate details and status

🔗 References

  • Related ticket / issue:
  • Figma / design spec:
  • Documentation:

🚨 Potentially Breaking Changes

  • Yes
  • No

Includes DRC change

  • Yes
  • No

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants