Daniel Russo created ARROW-10963:
------------------------------------

             Summary: [Rust] [DataFusion] Improve the PartailEq implementation 
for UDF expressions
                 Key: ARROW-10963
                 URL: https://issues.apache.org/jira/browse/ARROW-10963
             Project: Apache Arrow
          Issue Type: New Feature
          Components: Rust, Rust - DataFusion
            Reporter: Daniel Russo


An implementation of {{PartialEq}} for {{ScalarUDF}} and {{AggregateUDF}} was 
added in ARROW-10808 ([pull request|https://github.com/apache/arrow/pull/8836], 
which was a requirement for the {{PartialEq}} derivation for {{Expr}}.

The implementation checks equality on only the UDFs' {{name}} and {{signature}} 
fields: the underlying assumption is two UDFs with the same name and signature 
must be the same UDF. This assumption may hold up in a SQL context where UDFs 
are registered by name (therefore guaranteeing they are distinct), however, it 
doesn't hold up in a general case where there are no uniqueness requirements on 
the name. 

Improve the equality implementation for {{ScalarUDF}} and {{AggregateUDF}}. For 
additional context, see the discussion in the pull request 
[here|https://github.com/apache/arrow/pull/8836#discussion_r536874229]. 




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to