alamb commented on code in PR #25692:
URL: https://github.com/apache/datafusion/pull/25692#discussion_r4114836318
##########
datafusion/functions/src/datetime/date_bin.rs:
##########
@@ -269,14 +269,22 @@ impl ScalarUDFImpl for DateBinFunc {
}
fn output_ordering(&self, input: &[ExprProperties]) ->
Result<SortProperties> {
- // The DATE_BIN function preserves the order of its second argument.
let step = &input[0];
let date_value = &input[1];
let reference = input.get(2);
- if step.sort_properties.eq(&SortProperties::Singleton)
+ // Scaling these representations to nanoseconds can overflow and turn
Review Comment:
> Avoiding that cost safely would require a larger change, such as computing
date_bin in the source precision using wider arithmetic, or propagating proven
input bounds. My inclination is to keep the correctness guard here and handle
source-precision computation as a follow-up.
I have the opposite opinion -- if we want to force a sort here, we should
only do it when it is 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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]