icexelloss commented on PR #34645:
URL: https://github.com/apache/arrow/pull/34645#issuecomment-1481692622

   > I personally think the more sensible behaviour for users is to not allow 
overflow.
   
   I don't object to this (although I am somewhat neutral). 
   
   > But also, it might not matter that much what the default is for substrait?
   
   From my understanding, substrait doesn't define this in its spec (it also 
have the option to return null or raise when "cast error" happens but doesn't 
have a clear spec for what are "cast error")
   
   >  Because it can't have the "good" default for various use cases at the 
same time. So what matters is that there is a way to specify the behaviour, so 
that producers of substrait can specify the behaviour so they can choose 
whathever default they want for the users of their system, and ensure this gets 
reflected correctly in the substrait plan?
   
   The way I see it. There are two options -
   (1) Have a way for end user to configure this (in the user facing API) and 
pass that all the way from user API -> substrait -> backend. This is certainly 
the most configurable way.
   (2) Have a way for users of Acero (i.e., me) to configure the behavior for 
their users. E.g., having backend-wide default for casting behaviors. E.g., I 
might decide I don't care much about overflow for my users so I am gonna allow 
it. But another user of Acero might decide he/she want to raise for overflow.
   
   From my perspective, (2) is probably good enough for my requirement. (1) 
feels ideal in theory but might not be necessary.


-- 
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