Repository navigation
[air] Record workload submission and source staging telemetry - #6904
Merged
Merged
Conversation
Collaborator
Integration test reportCommit: eda943a
Top 6 slowest tests (at least 2 minutes):
|
The landed air_run.proto defines gpu_type as an optional string holding the API's canonical accelerator name, not an enum, so send GPU_1xH100-style values and omit the field when unresolved. Count rank-partitioned containers as using a Unity Catalog image, since each container must set one. Co-authored-by: Isaac <no-reply@databricks.com>
ben-hansen-db
force-pushed
the
air/workload-telemetry
branch
from
October 7, 2026 21:59
df62798 to
097f685
Compare
Co-authored-by: Isaac <no-reply@databricks.com>
pietern
reviewed
Oct 8, 2026
| info = entry.Info | ||
| if info.ObjectType == workspace.ObjectTypeFile { | ||
| info.Size = int64(len(entry.Data)) | ||
| } |
Contributor
There was a problem hiding this comment.
Looks unrelated, can you drop from the diff?
Contributor
Author
There was a problem hiding this comment.
yeah, this was to support code source bytes when it is cached but I think in case of cache hit we will actually leave it blank.
| "github.com/stretchr/testify/require" | ||
| ) | ||
|
|
||
| func TestAirRunEventOptionalMeasurements(t *testing.T) { |
Contributor
There was a problem hiding this comment.
It looks like this test only verifies that JSON marshalling through pointers works.
If so, I recommend dropping it.
Contributor
Author
There was a problem hiding this comment.
Good catch, dropped.
pietern
approved these changes
Oct 8, 2026
A cache hit uploads nothing, so leave code_source_size_bytes unset instead of reading the remote file size. This drops the fake workspace change that only existed to support it, and the JSON marshalling test in protos. Co-authored-by: Isaac <no-reply@databricks.com>
The cache check was inlined only to read the remote size, which cache hits no longer report. Co-authored-by: Isaac <no-reply@databricks.com>
Collaborator
Integration test reportCommit: ef9eea3
131 interesting tests: 119 FAIL, 12 flaky
Top 50 slowest tests (at least 2 minutes):
|
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.
Changes
Record AIR submission telemetry with requested compute, configuration-presence flags, outcome/latency, and job run ID. Include compressed source tarball bytes,
GIT_ARCHIVE/PLAIN_TARpackaging mode, and separate packaging/upload durations. Cache hits report zero phase durations and omit the size; failed attempts retain measurements already collected.Why
Bring workload visibility in line with Python AIR and help explain slow source staging. The companion ingestion schema, https://github.com/databricks-eng/universe/pull/2720990, has landed;
gpu_typecarries the API's canonical accelerator name (e.g.GPU_1xH100) as that schema defines. Events use the existing upload-at-exit pipeline and telemetry opt-out; first-log timing is deferred.Tests
Added coverage for new uploads, cache reuse, absent versus zero measurements, Git and working-tree packaging, and failed packaging/upload/submission.
./task fmt,./task checks, full./task lint, doctests, and all root/tools module unit tests passed (11,641 tests; 143 skipped).Full
./task testreached acceptance tests but stopped at the new prerequisite requiring jq >= 1.7 (this machine has 1.6).This PR was written with Codex.