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

Prefer interruptible methods to joni functions #13064

Conversation

tangjiangling
Copy link
Member

@tangjiangling tangjiangling commented Jul 1, 2022

Under certain circumstances JONI regexp matching is very slow,
so in this PR we use the interruptible method in the JONI
regexp library so that we can interrupt long running tasks.

Co-authored-by: @leetcode-1533

Description

Is this change a fix, improvement, new feature, refactoring, or other?

Fix.

Is this a change to the core query engine, a connector, client library, or the SPI interfaces? (be specific)

Core query engine.

How would you describe this change to a non-technical end user or system administrator?

This allows the JONI regexp functions to be interrupted, which also gives the opportunity to exit the task that has been running the JONI regexp function for a long time.

Related issues, pull requests, and links

Superceding #12479

Documentation

(x) No documentation is needed.
( ) Sufficient documentation is included in this PR.
( ) Documentation PR is available with #prnumber.
( ) Documentation issue #issuenumber is filed, and can be handled later.

Release notes

( ) No release notes entries required.
(x) Release notes entries required with the following suggested text:

# General
* Fix regular expression functions not being interrupted when using the JONI regular library,
  which may cause a split to keep running even after the query has failed. ({issue}`13064`)

This test class is related to scalar functions,
so it should be placed under the scalar package
@cla-bot cla-bot bot added the cla-signed label Jul 1, 2022
@tangjiangling tangjiangling marked this pull request as ready for review July 1, 2022 14:55
Under certain circumstances JONI regexp matching is very slow,
so in this commit we use the interruptible method in the JONI
regexp library so that we can interrupt long running tasks.

Co-authored-by: Yingjie Luan <1275963@gmail.com>
@tangjiangling tangjiangling force-pushed the prefer-interruptible-methods-to-joni-functions branch from 1026df9 to 292a232 Compare July 4, 2022 17:56
@tangjiangling
Copy link
Member Author

AC @phd3 PTAL

@arhimondr arhimondr merged commit bbf4e86 into trinodb:master Jul 5, 2022
@github-actions github-actions bot added this to the 389 milestone Jul 5, 2022
@tangjiangling tangjiangling deleted the prefer-interruptible-methods-to-joni-functions branch July 5, 2022 15:26
@colebow
Copy link
Member

colebow commented Jul 5, 2022

@tangjiangling could you propose a release note for this / why do we need to exit long-running JONI functions?

@tangjiangling
Copy link
Member Author

@colebow Updated RN, you can review it.

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

Successfully merging this pull request may close these issues.

5 participants