Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Support for AbortSignal #487

Open
TimShilov opened this issue May 10, 2023 · 1 comment
Open

Feature Request: Support for AbortSignal #487

TimShilov opened this issue May 10, 2023 · 1 comment
Assignees
Labels
enhancement The issue is a request for improvement or a new feature status-triage_done Initial triage done, will be further handled by the driver team

Comments

@TimShilov
Copy link

TimShilov commented May 10, 2023

What is the current behavior?

Right now you have to execute the query, get the statement in the response and call statement.cancel() when needed. That makes the cancellation more complicated because the client code needs to keep track of statements and have a custom cancellation logic.

What is the desired behavior?

I would like to have native support for AbortSignal in Snowflake SDK. That way instead of keeping track of running statements and implementing custom logic for each individual asynchronous thing, the client will just need to create a signal, pass it inside .execute() (and any other async operations that needed to be executed in parallel with it) and then abort the signal to stop all the async operations at once.

How would this improve snowflake-connector-nodejs?

AbortSignal is becoming the standard mechanism for cancelling async operations. Most of the asynchronous core Node.js APIs (Events, Streams, Fetch API, Timers Promises API) support it nowadays, and most of the HTTP clients (Axios, Got, Undici to name a few) support it as well.
Adding support for AbortSignal will give users a more convenient way of cancelling running queries and will make snowflake-sdk more standardized with the rest of Javascript ecosystem.

References, Other Background

What is your Snowflake account identifier, if any?

xe29001

@TimShilov TimShilov changed the title Support for AbortSignal Feature Request: Support for AbortSignal May 10, 2023
@sfc-gh-dszmolka
Copy link
Collaborator

hi and thank you for opening this enhancement request. please bear with us until the team gets a chance to look at it and evaluate.

since you're already a Snowflake customer, you have another path into raising this feature request if you wish. You can contact your Sales rep. and tell them why implementing this feature would be important for you, and they have other means to plug into the product team to give the request more priority, if that's necessary.

otherwise, we'll update this issue once in a while but it could take some time

@sfc-gh-dszmolka sfc-gh-dszmolka added the enhancement The issue is a request for improvement or a new feature label May 23, 2023
@sfc-gh-dszmolka sfc-gh-dszmolka added the status-triage_done Initial triage done, will be further handled by the driver team label Feb 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement The issue is a request for improvement or a new feature status-triage_done Initial triage done, will be further handled by the driver team
Projects
None yet
Development

No branches or pull requests

3 participants