ujjwaltwri commented on issue #19171: URL: https://github.com/apache/datafusion/issues/19171#issuecomment-3623138014
Hi! I’m currently working on a fix for this. The root cause is that ConcatFunc does not override return_field_from_args, so the planner always treats the result as nullable. According to SQL semantics (and existing DataFusion behavior at execution time), concat should only be nullable when all input argument fields are nullable. I’m implementing return_field_from_args for ConcatFunc so that: The return DataType is derived using the existing return_type logic, and The return Field.nullable is args.iter().all(|f| f.is_nullable()). This brings schema-time nullability in line with runtime behavior and other SQL engines. A PR will be opened shortly after I finish local testing. -- 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]
