DB Tsai created SPARK-61100:
-------------------------------
Summary: Preserve tuple compatibility for Python Row objects
Key: SPARK-61100
URL: https://issues.apache.org/jira/browse/SPARK-61100
Project: Spark
Issue Type: Bug
Components: Connect
Affects Versions: connect-rust-4.3.0
Reporter: DB Tsai
Official PySpark Row is a tuple subclass. The Rust-backed Python Row is a
native extension class, so isinstance(Row(a=1), tuple) is false and tuple-aware
serializers such as json.dumps cannot encode it. Row.__fields__ also returns a
fresh list, so in-place mutation is lost. Preserve the public tuple Row
contract for constructed, collected and nested rows, including pickle,
equality/hash and field metadata, with regression tests. Measure the
result-materialization tradeoff.
Observed by source inspection of public apache/spark-connect-rust master
83d74462ec41012993176cf3af99017576688eb8. Runtime regression tests will
accompany the fix.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]