Skip to content

Conversation

@no23reason
Copy link
Contributor

@no23reason no23reason commented May 21, 2025

Add a polling mechanism to the FlexConnect functions so that long-running tasks can be polled for and canceled.
The polling is opt-in via a call header: this is to ensure compatibility with GoodData versions that do not support this yet.

The TaskExecutor now supports returning a timestamp of when a particular task was submitted. This is to keep track of the call deadline breaches.

JIRA: CQ-1124
risk: low

@no23reason no23reason force-pushed the dho/cq-1124-polling-better branch 6 times, most recently from e4207cb to ee2154f Compare May 28, 2025 10:53
Add a polling mechanism to the FlexConnect functions so that
long-running tasks can be polled for and canceled.

The TaskExecutor now supports returning a timestamp of when
a particular task was submitted. This is to keep track of the
call deadline breaches.

JIRA: CQ-1124
risk: low
Encapsulate the different invocation types so that we can change
the actual representation later if needed.

JIRA: CQ-1124
risk: low
When cancelling, be more transparent about whether the cancellation
actually happened.
Also handle missing tasks: that now yields BAD_ARGUMENT exceptions.

JIRA: CQ-1124
risk: low
By default, the FlexConnect will conform to the Arrow Flight RPC spec.
However, if an opt-in header is present, it will use the polling
extension used by GoodData.
This allows for things like query cancellation.
Ideally, we would use the PollFlightInfo from the Arrow Flight RPC
but unfortunately it is not yet available in PyArrow.

JIRA: CQ-1124
risk: low
@no23reason no23reason force-pushed the dho/cq-1124-polling-better branch from ee2154f to 173aa5b Compare May 29, 2025 11:00
@no23reason no23reason marked this pull request as ready for review June 2, 2025 12:11
Copy link
Contributor

@lupko lupko left a comment

Choose a reason for hiding this comment

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

LGTM

@no23reason no23reason merged commit de04b17 into gooddata:master Jun 2, 2025
9 checks passed
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.

2 participants