aboutsummaryrefslogtreecommitdiff
path: root/python/pyspark/sql
diff options
context:
space:
mode:
authorElisey Zanko <elisey.zanko@gmail.com>2015-04-20 10:44:09 -0700
committerJosh Rosen <joshrosen@databricks.com>2015-04-20 10:44:09 -0700
commit77176619a97d07811ab20e1dde4677359d85eb33 (patch)
tree3d362532bd4a21d2c888425791418e6001485d80 /python/pyspark/sql
parent968ad972175390bb0a96918fd3c7b318d70fa466 (diff)
downloadspark-77176619a97d07811ab20e1dde4677359d85eb33.tar.gz
spark-77176619a97d07811ab20e1dde4677359d85eb33.tar.bz2
spark-77176619a97d07811ab20e1dde4677359d85eb33.zip
[SPARK-6661] Python type errors should print type, not object
Author: Elisey Zanko <elisey.zanko@gmail.com> Closes #5361 from 31z4/spark-6661 and squashes the following commits: 73c5d79 [Elisey Zanko] Python type errors should print type, not object
Diffstat (limited to 'python/pyspark/sql')
-rw-r--r--python/pyspark/sql/_types.py12
-rw-r--r--python/pyspark/sql/context.py8
-rw-r--r--python/pyspark/sql/dataframe.py2
3 files changed, 11 insertions, 11 deletions
diff --git a/python/pyspark/sql/_types.py b/python/pyspark/sql/_types.py
index 492c0cbdcf..110d1152fb 100644
--- a/python/pyspark/sql/_types.py
+++ b/python/pyspark/sql/_types.py
@@ -562,8 +562,8 @@ def _infer_type(obj):
else:
try:
return _infer_schema(obj)
- except ValueError:
- raise ValueError("not supported type: %s" % type(obj))
+ except TypeError:
+ raise TypeError("not supported type: %s" % type(obj))
def _infer_schema(row):
@@ -584,7 +584,7 @@ def _infer_schema(row):
items = sorted(row.__dict__.items())
else:
- raise ValueError("Can not infer schema for type: %s" % type(row))
+ raise TypeError("Can not infer schema for type: %s" % type(row))
fields = [StructField(k, _infer_type(v), True) for k, v in items]
return StructType(fields)
@@ -696,7 +696,7 @@ def _merge_type(a, b):
return a
elif type(a) is not type(b):
# TODO: type cast (such as int -> long)
- raise TypeError("Can not merge type %s and %s" % (a, b))
+ raise TypeError("Can not merge type %s and %s" % (type(a), type(b)))
# same type
if isinstance(a, StructType):
@@ -773,7 +773,7 @@ def _create_converter(dataType):
elif hasattr(obj, "__dict__"): # object
d = obj.__dict__
else:
- raise ValueError("Unexpected obj: %s" % obj)
+ raise TypeError("Unexpected obj type: %s" % type(obj))
if convert_fields:
return tuple([conv(d.get(name)) for name, conv in zip(names, converters)])
@@ -912,7 +912,7 @@ def _infer_schema_type(obj, dataType):
return StructType(fields)
else:
- raise ValueError("Unexpected dataType: %s" % dataType)
+ raise TypeError("Unexpected dataType: %s" % type(dataType))
_acceptable_types = {
diff --git a/python/pyspark/sql/context.py b/python/pyspark/sql/context.py
index c90afc326c..acf3c11454 100644
--- a/python/pyspark/sql/context.py
+++ b/python/pyspark/sql/context.py
@@ -208,7 +208,7 @@ class SQLContext(object):
raise TypeError("Cannot apply schema to DataFrame")
if not isinstance(schema, StructType):
- raise TypeError("schema should be StructType, but got %s" % schema)
+ raise TypeError("schema should be StructType, but got %s" % type(schema))
return self.createDataFrame(rdd, schema)
@@ -281,7 +281,7 @@ class SQLContext(object):
# data could be list, tuple, generator ...
rdd = self._sc.parallelize(data)
except Exception:
- raise ValueError("cannot create an RDD from type: %s" % type(data))
+ raise TypeError("cannot create an RDD from type: %s" % type(data))
else:
rdd = data
@@ -293,8 +293,8 @@ class SQLContext(object):
if isinstance(schema, (list, tuple)):
first = rdd.first()
if not isinstance(first, (list, tuple)):
- raise ValueError("each row in `rdd` should be list or tuple, "
- "but got %r" % type(first))
+ raise TypeError("each row in `rdd` should be list or tuple, "
+ "but got %r" % type(first))
row_cls = Row(*schema)
schema = self._inferSchema(rdd.map(lambda r: row_cls(*r)), samplingRatio)
diff --git a/python/pyspark/sql/dataframe.py b/python/pyspark/sql/dataframe.py
index d70c5b0a69..75c181c0c7 100644
--- a/python/pyspark/sql/dataframe.py
+++ b/python/pyspark/sql/dataframe.py
@@ -608,7 +608,7 @@ class DataFrame(object):
jc = self._jdf.apply(self.columns[item])
return Column(jc)
else:
- raise TypeError("unexpected type: %s" % type(item))
+ raise TypeError("unexpected item type: %s" % type(item))
def __getattr__(self, name):
"""Returns the :class:`Column` denoted by ``name``.