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

Catch exceptions when trying to examine Iceberg scan for metadata queries #10836

Merged
merged 1 commit into from
May 20, 2024

Conversation

jlowe
Copy link
Member

@jlowe jlowe commented May 17, 2024

Fixes #10831. This updates the Iceberg scan metadata tagging to catch exceptions when trying to examine the scan class, similar to how it catches exceptions when trying to convert a CPU scan to a GPU scan. This allows the plugin to gracefully fallback to the CPU even when we get class cast or other unexpected exceptions when trying to examine an Iceberg class that may not match what the plugin was compiled against.

…ries

Signed-off-by: Jason Lowe <jlowe@nvidia.com>
@jlowe jlowe self-assigned this May 17, 2024
@jlowe
Copy link
Member Author

jlowe commented May 17, 2024

build

1 similar comment
@jlowe
Copy link
Member Author

jlowe commented May 17, 2024

build

Copy link
Collaborator

@revans2 revans2 left a comment

Choose a reason for hiding this comment

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

Might be nice to have an automated test. If you could file a follow on issue that would be great.

@jlowe
Copy link
Member Author

jlowe commented May 17, 2024

issue for tracking regression testing incompatible Iceberg versions: #10837

@jlowe jlowe merged commit 3a807d6 into NVIDIA:branch-24.06 May 20, 2024
44 of 45 checks passed
@jlowe jlowe deleted the iceberg-class-mismatch-tagging branch May 20, 2024 14:22
wjxiz1992 pushed a commit to nvliyuan/yuali-spark-rapids that referenced this pull request May 21, 2024
* A hacky approach for regexpr rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Use contains instead for that case

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* add config to switch

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Rewrite some rlike expression to StartsWith/EndsWith/Contains

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Draft code to adapt RegexParser in regex rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Apply suggestions from code review

Co-authored-by: Gera Shegalov <gshegalov@nvidia.com>

* A checkpoint before removing endsWith rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Remove equalsTo and endsWith

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* address a comment

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* address a comment

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* address comments

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* fix 2.13 build

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* checkpoint before pattern matching => if

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Add prefix range in regex parser rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Address comments

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* wip

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* change some names

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* checkpoint before upmerge

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* add tests

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Catch exceptions when trying to examine Iceberg scan for metadata queries (NVIDIA#10836)

Signed-off-by: Jason Lowe <jlowe@nvidia.com>

* Add NVTX ranges to identify Spark stages and tasks (NVIDIA#10826)

* Add NVTX ranges to identify Spark stages and tasks

Signed-off-by: Jason Lowe <jlowe@nvidia.com>

* scalastyle

---------

Signed-off-by: Jason Lowe <jlowe@nvidia.com>

---------

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>
Signed-off-by: Jason Lowe <jlowe@nvidia.com>
Co-authored-by: Gera Shegalov <gshegalov@nvidia.com>
Co-authored-by: Jason Lowe <jlowe@nvidia.com>
@sameerz sameerz added the bug Something isn't working label May 21, 2024
sperlingxx pushed a commit to sperlingxx/spark-rapids that referenced this pull request May 30, 2024
…IDIA#8)

* A hacky approach for regexpr rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Use contains instead for that case

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* add config to switch

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Rewrite some rlike expression to StartsWith/EndsWith/Contains

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Draft code to adapt RegexParser in regex rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Apply suggestions from code review

Co-authored-by: Gera Shegalov <gshegalov@nvidia.com>

* A checkpoint before removing endsWith rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Remove equalsTo and endsWith

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* address a comment

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* address a comment

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* address comments

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* fix 2.13 build

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* checkpoint before pattern matching => if

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Add prefix range in regex parser rewrite

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Address comments

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* wip

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* clean up

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* change some names

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* checkpoint before upmerge

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* add tests

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>

* Catch exceptions when trying to examine Iceberg scan for metadata queries (NVIDIA#10836)

Signed-off-by: Jason Lowe <jlowe@nvidia.com>

* Add NVTX ranges to identify Spark stages and tasks (NVIDIA#10826)

* Add NVTX ranges to identify Spark stages and tasks

Signed-off-by: Jason Lowe <jlowe@nvidia.com>

* scalastyle

---------

Signed-off-by: Jason Lowe <jlowe@nvidia.com>

---------

Signed-off-by: Haoyang Li <haoyangl@nvidia.com>
Signed-off-by: Jason Lowe <jlowe@nvidia.com>
Co-authored-by: Gera Shegalov <gshegalov@nvidia.com>
Co-authored-by: Jason Lowe <jlowe@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Failed to read data from iceberg
3 participants