Skip to content

feat!: async query submission over Flight DoAction, rename sync Query/QueryWithParams to Sql/SqlWithParamsAsync - #27

Open
krinart wants to merge 2 commits into
trunkfrom
feat/async-queries
Open

feat!: async query submission over Flight DoAction, rename sync Query/QueryWithParams to Sql/SqlWithParamsAsync#27
krinart wants to merge 2 commits into
trunkfrom
feat/async-queries

Conversation

@krinart

@krinart krinart commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Breaking change, matching the same change already made in the gospice and spice-rs SDKs: Query / QueryWithParams now submit a query for asynchronous execution over Flight DoAction and return an AsyncQuery handle (poll status, fetch results as an Arrow stream, cancel). Requires the runtime to be running in distributed/scheduler mode.
  • The previous synchronous, streaming behavior of Query / QueryWithParams is preserved under new names: SqlAsync / SqlWithParamsAsync.
  • Updated README and all call sites (tests) to the new names.

Test plan

  • dotnet build succeeds for netstandard2.0, net8.0, net9.0 (net10.0 SDK unavailable locally; unaffected by this change)
  • dotnet test passes on net9.0 — 199 passed, 33 skipped (env-gated), 0 failed

Adds SpiceClient.SubmitQueryAsync/SubmitQueryWithParamsAsync, which submit
a query for asynchronous execution over Flight DoAction and return an
AsyncQuery handle for polling status, fetching results as an Arrow stream,
and cancelling. Only available when the runtime is running in
distributed/scheduler mode.
…Async

Query and QueryWithParams now submit the query for asynchronous
execution over Flight DoAction and return an AsyncQuery handle,
matching the gospice and spice-rs SDKs. The previous synchronous,
streaming behavior is now under SqlAsync and SqlWithParamsAsync.

BREAKING CHANGE: callers of Query(sql) / QueryWithParams(sql, ...)
must switch to SqlAsync(sql) / SqlWithParamsAsync(sql, ...) for the
same synchronous behavior, or adopt the AsyncQuery handle returned
by the new Query/QueryWithParams for asynchronous execution.
@krinart krinart changed the title feat: add async query submission over Flight DoAction feat!: async query submission over Flight DoAction, rename sync Query/QueryWithParams to Sql/SqlWithParamsAsync Aug 19, 2026
krinart added a commit that referenced this pull request Aug 19, 2026
krinart added a commit that referenced this pull request Aug 20, 2026
* Prepare release 0.4.0

* docs: add Nsql/NsqlGenerateSqlAsync to v0.4.0 release notes

#25 merged Nsql support into trunk after this release-prep branch was
created; merge trunk in and document it alongside the other v0.4.0
features.

* docs: note that active-queries (#26) and async-queries (#27) are not part of v0.4.0

* Update release notes for v0.4.0

Removed release status section and details about excluded features for v0.4.0.

* Reintroduce mTLS Client Certificate Support in release notes

Reintroduced the Mutual TLS (mTLS) Client Certificate Support section in the release notes for v0.4.0, ensuring clarity on its implementation and usage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant