Open milesgranger opened 1 year ago
To expand, it appears the exception in the table_provider
is raised in executor->Init then further down into engine::substrait::serde::DeserializePlans.
But while it seems to raise the ArrowInvalid
properly, somewhere it should probably clear the Python exception raised by the table_provider
; or better still, use/append the first exception's message as the ArrowInvalid
message?
@milesgranger this has been bothering me too. I wasn't quite sure the best way to resolve this at that time. Thanks for raising this. I will look into this. Are you planning to work on this?
Great! Not planning on it, at least not in the near feature. :+1:
Okay, I will take a look at this. @pitrou or @jorisvandenbossche could you assign this to me?
Assigned.
Thank you @kou
My first guess would be that the _create_named_table_provider
is missing an except *:
(to indicate to cython that this function can raise errors, and thus that it should check if any error is raised). See https://cython.readthedocs.io/en/latest/src/userguide/language_basics.html#error-return-values
@jorisvandenbossche thanks for the idea. I will check this.
I am removing my assignment, since I am mostly maintaining Arrow Java.
Describe the bug, including details regarding any error messages, version, and platform.
test_named_table_invalid_table_name
generates aPytestUnraisableExceptionWarning
in the tests. The exception itself is:The exception ought to be raised properly instead of 'hidden' as a warning.
Component(s)
Python