Skip to content

air list: request larger AiTrainingService index pages - #7616

Merged
stevenchen-db merged 2 commits into
mainfrom
air/list-index-page-size
Nov 13, 2026
Merged

stevenchen-db merged 2 commits into
mainfrom
air/list-index-page-size

Conversation

@stevenchen-db

@stevenchen-db stevenchen-db commented Nov 13, 2026 •

Copy link
Copy Markdown
Contributor

Changes

air list --all-status now sends page_size=1000 when it pages the AiTrainingService index (/api/2.0/ai-training/workflows).

Why

The index is served by AICM, which scans the whole workspace 50 workloads per page and returns only the caller's runs, so a workspace with a few thousand workloads costs dozens of sequential round trips (65 on e2-dogfood, 153 on df1). AICM ignores page_size today; the companion AICM change (https://github.com/databricks-eng/universe/pull/3086059) honors it, capped at 1,000. Servers that predate it ignore the parameter, so this is safe to ship first.

With the AICM change on a LiteSwap unit in staging (e2-dogfood): 65 pages -> 4, air list --all-status -o json 3.8s -> 1.0s, identical output and the same 559 run IDs.

Tests

  • New TestListAiTrainingWorkflowsSendsPageSize: every page request carries page_size=1000 with the right page token.
  • go test ./cmd/air, TestAccept/air, lint pass.
  • Against today's df1 and e2-dogfood (servers that ignore page_size): text and JSON output identical to main, same page counts.

This pull request and its description were written by Isaac.

`air list --all-status` pages the AiTrainingService index one request at
a time. The server scans the whole workspace 50 workloads per page and
keeps only the caller's runs, so a workspace with a few thousand
workloads costs dozens of sequential round trips. Send page_size=1000 so
servers that honor it scan more per page; servers that predate page_size
ignore it.

Co-authored-by: Isaac <no-reply@databricks.com>
@stevenchen-db
stevenchen-db requested review from a team as code owners November 13, 2026 21:59
Co-authored-by: Isaac <no-reply@databricks.com>
@github-actions github-actions Bot added the AIR Databricks AI Runtime CLI label Nov 13, 2026

@ethanma-db ethanma-db left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

nice!

@eng-dev-ecosystem-bot

Copy link
Copy Markdown
Collaborator

✅ Integration test report

Commit: 52d9c29

Run: 43515751740

Env 💚​RECOVERED ✅​pass 🙈​skip Time
💚​ aws linux-2core-8gb 1 270 15 6:39
💚​ aws-windows-latest-4core-16gb 1 272 13 4:29
💚​ azure linux-2core-8gb 1 269 15 4:49
💚​ azure-windows-latest-4core-16gb 1 271 13 3:41
💚​ gcp linux-2core-8gb 1 270 15 5:16
💚​ gcp-windows-latest-4core-16gb 1 272 13 3:21
Test Name aws linux-2core-8gb aws-windows-latest-4core-16gb azure linux-2core-8gb azure-windows-latest-4core-16gb gcp linux-2core-8gb gcp-windows-latest-4core-16gb
💚​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
Top 3 slowest tests (at least 2 minutes):
duration env testname
3:36 azure-windows-latest-4core-16gb TestAccept
3:28 aws-windows-latest-4core-16gb TestAccept
3:15 gcp-windows-latest-4core-16gb TestAccept

@stevenchen-db
stevenchen-db added this pull request to the merge queue Nov 13, 2026
Merged via the queue into main with commit 35f7805 Nov 13, 2026
28 checks passed
@stevenchen-db
stevenchen-db deleted the air/list-index-page-size branch November 13, 2026 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AIR Databricks AI Runtime CLI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants