Zeppelin PySpark:'JavaMember' 对象没有属性 'parseDataType'

Zeppelin PySpark: 'JavaMember' object has no attribute 'parseDataType'

这个简单的 PySpark 片段在正常的 spark-submit 下运行良好,但在 cast 调用上与 Apache Zeppelin 一起运行失败。有什么想法吗?

%pyspark
import pyspark.sql.functions as spark_functions

col1 = spark_functions.lit(None)
print("type(col1)={}".format(type(col1)))
col2 = col1.cast(StringType())

错误是:

Traceback (most recent call last):
  File "/tmp/zeppelin_pyspark-6046223946582899049.py", line 252, in <module>
    eval(compiledCode)
  File "<string>", line 14, in <module>
  File "/usr/lib/spark/python/pyspark/sql/column.py", line 334, in cast
    jdt = ctx._ssql_ctx.parseDataType(dataType.json())
AttributeError: 'JavaMember' object has no attribute 'parseDataType'

这是 Zeppelin 0.6.1 上 Spark 2.0 的已知错误,目标是在 Zeppelin 0.6.2 中修复:https://issues.apache.org/jira/browse/ZEPPELIN-1411