From 534ac90c4c1c5aee5910db10492147a6baae0613 Mon Sep 17 00:00:00 2001 From: Davies Liu Date: Fri, 27 Feb 2015 10:23:40 -0800 Subject: [PATCH] add more checks --- python/pyspark/sql/types.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/python/pyspark/sql/types.py b/python/pyspark/sql/types.py index 9d54be54c6bd8..617c60dca7893 100644 --- a/python/pyspark/sql/types.py +++ b/python/pyspark/sql/types.py @@ -247,6 +247,7 @@ def __init__(self, elementType, containsNull=True): >>> ArrayType(StringType(), False) == ArrayType(StringType()) False """ + assert isinstance(elementType, DataType), "elementType should be DataType" self.elementType = elementType self.containsNull = containsNull @@ -299,6 +300,8 @@ def __init__(self, keyType, valueType, valueContainsNull=True): ... == MapType(StringType(), FloatType())) False """ + assert isinstance(keyType, DataType), "keyType should be DataType" + assert isinstance(valueType, DataType), "valueType should be DataType" self.keyType = keyType self.valueType = valueType self.valueContainsNull = valueContainsNull @@ -355,6 +358,7 @@ def __init__(self, name, dataType, nullable=True, metadata=None): ... == StructField("f2", StringType(), True)) False """ + assert isinstance(dataType, DataType), "dataType should be DataType" self.name = name self.dataType = dataType self.nullable = nullable @@ -403,6 +407,7 @@ def __init__(self, fields): >>> struct1 == struct2 False """ + assert all(isinstance(f, DataType) for f in fields), "fields should be a list of DataType" self.fields = fields def simpleString(self):