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]

Reply via email to