danepitkin commented on code in PR #37097:
URL: https://github.com/apache/arrow/pull/37097#discussion_r1296188601
##########
python/pyarrow/_substrait.pyx:
##########
@@ -28,7 +28,7 @@ from pyarrow.includes.libarrow_substrait cimport *
cdef CDeclaration _create_named_table_provider(
dict named_args, const std_vector[c_string]& names, const CSchema& schema
-):
+) noexcept:
Review Comment:
This function executes user-defined python code, which absolutely can raise
an exception. In fact, the test cases specifically _do_ raise an exception. The
problem is that the C++ functionality explicitly chooses to ignore it and
return its own error. The pyarrow binding is designed with this in mind, so
adding `noexcept` is mimicking the expected behavior of previous cython
versions. I'll file an issue to request refactoring of this feature.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]