geoffreyclaude commented on code in PR #25186:
URL: https://github.com/apache/datafusion/pull/25186#discussion_r4153286253


##########
datafusion/common/src/utils/mod.rs:
##########
@@ -1557,6 +1566,10 @@ pub fn normalize_float_zero_scalar(scalar: ScalarValue) 
-> ScalarValue {
         ScalarValue::Float16(Some(v)) if v.to_bits() << 1 == 0 => {
             ScalarValue::Float16(Some(half::f16::from_bits(0)))
         }
+        ScalarValue::Dictionary(key, mut value) => {
+            *value = normalize_float_zero_scalar(*value);
+            ScalarValue::Dictionary(key, value)
+        }
         other => other,

Review Comment:
   Added in 6ea876b566f74fa664189b5fb1c22043854e4296: all nested scalar types 
now normalize recursively, including unions and REEs. The array-backed variants 
reuse the existing array normalizer.



##########
datafusion/physical-expr/src/expressions/in_list.rs:
##########
@@ -82,6 +83,20 @@ fn supports_arrow_eq(dt: &DataType) -> bool {
     }
 }
 
+fn normalize_in_list_float_zero_value(value: ColumnarValue) -> ColumnarValue {
+    match value {
+        ColumnarValue::Array(array)
+            if dictionary_value_type(array.data_type()).is_floating() =>

Review Comment:
   Agreed, I've used your suggested array arm in 
6ea876b566f74fa664189b5fb1c22043854e4296.



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

Reply via email to