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

ASF GitHub Bot updated SPARK-61178:
-----------------------------------
    Labels: pull-request-available  (was: )

> Make StructType.fields the list of the struct, and the name, dataType and 
> nullable of StructField assignable, so that their edits show in the struct, 
> in the Python client as PySpark does
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SPARK-61178
>                 URL: https://issues.apache.org/jira/browse/SPARK-61178
>             Project: Spark
>          Issue Type: Bug
>          Components: Connect
>    Affects Versions: connect-rust-4.3.0
>            Reporter: Hyukjin Kwon
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: connect-rust-4.3.0
>
>
> PySpark's StructType holds its fields in a list, fields, which it gives back 
> each time: edits of it, such as st.fields.append(f), st.fields[0] = f, 
> st.fields.pop() and st.fields.sort(...), change the struct, and a list kept 
> before st.add(...) sees the new field. The name, dataType and nullable of a 
> StructField are plain attributes, so f.nullable = False changes the field and 
> the struct it is in (a common way to change the nullability of a schema).
> The Python client's StructType.fields gives a new list on each access, so 
> these edits are lost, and StructField's name, dataType and nullable cannot be 
> set:
> AttributeError: attribute 'nullable' of 'pyspark.sql.types.StructField' 
> objects is not writable



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