feat(dataproxy): add queue to UploadInputs and CreateUploadLocation requests by SVilgelm · Pull Request #8148 · flyteorg/flyte · GitHub
Skip to content

feat(dataproxy): add queue to UploadInputs and CreateUploadLocation requests - #8148

Open
SVilgelm wants to merge 2 commits into
mainfrom
sergey/run-70-upload-queue
Open

SVilgelm wants to merge 2 commits into
mainfrom
sergey/run-70-upload-queue

Conversation

@SVilgelm

@SVilgelm SVilgelm commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Tracking issue

Related to #8088 (SelectCluster by queue_id). Linear: RUN-70.

Why are the changes needed?

A client that already knows which queue a run will be placed on has no way to say so when it uploads the run's inputs or requests an upload location. The server therefore writes those artifacts into the project/domain default cluster pool's bucket, which is the wrong bucket when the queue maps to a different pool. Server-side routing by queue already exists for SelectCluster (#8088); this adds the same hint to the two upload RPCs for backends that are not routed through SelectCluster.

What changes were proposed in this pull request?

In flyteidl2/dataproxy/dataproxy_service.proto:

  • UploadInputsRequest: new optional string queue = 8. The name of the queue the run will be placed on, resolved in the run's project/domain scope like RunSpec.queue. When set, inputs are written to that queue's cluster-pool object store; when empty, the project/domain default queue's pool is used.
  • CreateUploadLocationRequest: new optional string queue = 10 with the same semantics for the generated upload location.

Single-cluster deployments may ignore the field. Generated Go, Python, Rust and TypeScript outputs are regenerated. No validation rules; purely additive and wire-compatible.

Consumers: unionai/cloud dataproxy (server side) and flyte-sdk (client side).

How was this patch tested?

  • make buf-lint, buf-go, buf-python, buf-rust, buf-ts run locally; only dataproxy outputs changed.
  • go build ./... and go vet ./gen/go/flyteidl2/dataproxy/... pass.
  • Python module imports and reports field numbers 8 and 10.

Labels

  • added

Check all the applicable boxes

  • I updated the documentation accordingly (proto doc comments).
  • All new and existing tests passed.
  • All commits are signed-off.

…equests

Lets a client name the queue the run will be placed on so the server can
write run artifacts into that queue's cluster-pool object store instead of
the project/domain default pool. Mirrors SelectClusterRequest.queue_id (#8088).

Assisted-by: Claude Code <noreply@anthropic.com>
Signed-off-by: Sergey Vilgelm <sergey@union.ai>
@SVilgelm SVilgelm added the added Merged changes that add new functionality label Oct 8, 2026
@github-actions github-actions Bot added the flyte2 label Oct 8, 2026
The previous commit was generated with buf 1.73; CI runs 1.58, which orders
source-code-info differently in the embedded descriptor set.

Assisted-by: Claude Code <noreply@anthropic.com>
Signed-off-by: Sergey Vilgelm <sergey@union.ai>

This branch has not been deployed

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

Labels

added Merged changes that add new functionality flyte2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant