[ 
https://issues.apache.org/jira/browse/SPARK-60919?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hyukjin Kwon reassigned SPARK-60919:
------------------------------------

    Assignee: L. C. Hsieh

> Make Row hashable like a tuple in the Spark Connect Rust drop-in
> ----------------------------------------------------------------
>
>                 Key: SPARK-60919
>                 URL: https://issues.apache.org/jira/browse/SPARK-60919
>             Project: Spark
>          Issue Type: Bug
>          Components: Connect
>    Affects Versions: connect-rust-4.3.0
>            Reporter: L. C. Hsieh
>            Assignee: L. C. Hsieh
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: connect-rust-4.3.0
>
>
> In the spark-connect-rust Python drop-in, {{Row}} defines {{__eq__}} but no 
> {{__hash__}}, so {{hash(Row(a=1))}} raises {{TypeError: unhashable type: 
> 'builtins.Row'}}.
> In PySpark, {{Row}} subclasses {{tuple}} and hashes like a tuple of its 
> values ({{hash(Row(a=1)) == hash((1,))}}), so Rows can be put in sets and 
> used as dict keys. Rows holding unhashable values (lists, dicts) raise 
> {{TypeError}}, as a tuple holding them does.
> The drop-in {{Row}} should hash the same way, consistently with its 
> {{__eq__}}.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to