determined
determined copied to clipboard
fix: job queue pagination
Description
- adds filtering by state on the API side for pagination
- updates webui to use those filters
- modifies
useSettings
to take a parameter that makes them only apply on certain routes - uses that parameter to make sure settings for different job queue table to not affect the others
Test Plan
create a bunch of jobs at once by spamming det e create
. this should result in a bunch of Queued jobs and a few active jobs.
- The jobs should all be displayed properly in their respective tabs
- the pagination in each tab should work correctly
- it should not be possible to mess anything up by navigating back and forth between tabs (except that the pagination will be reset)
Commentary (optional)
see PR comments
Checklist
- [ ] User-facing API changes need the "User-facing API Change" label.
- [ ] Release notes should be added as a separate file under
docs/release-notes/
. See Release Note for details. - [ ] Licenses should be included for new code which was copied and/or modified from any external code.
- [ ] If modifying
/webui/react/src/shared/
verifymake -C webui/react test-shared
passes.
Deploy Preview for determined-ui ready!
Name | Link |
---|---|
Latest commit | 9b9ce114d9b4464f0fe19bd73565d116f6d15811 |
Latest deploy log | https://app.netlify.com/sites/determined-ui/deploys/62fbd9308163a9000817d561 |
Deploy Preview | https://deploy-preview-4756--determined-ui.netlify.app/ |
Preview on mobile | Toggle QR Code...Use your smartphone camera to open QR code link. |
To edit notification comments on pull requests, go to your Netlify site settings.
there might be a related issue. originally paginating jobs hadn't been in scope when the job endpoints and job queue experience was designed. thus some of the operations in the client depend on the client being able to compute update requests that rely on finding what job is currently occupying a current position in the queue. This could be addressed by probably changing the api interface or introducing new ones so that
when clients wants to put job A in position N it can ask the backend:
- put job A in position N
- instead of : put job A before or ahead of job B (current state) where it needs to figure out what job is occupying position N